ModelBuilder.UnitTests.BooleanValueGeneratorTests.GenerateReturnsRandomValuesForNullabeBooleanTypeTest C# (CSharp) Method

GenerateReturnsRandomValuesForNullabeBooleanTypeTest() private method

        public void GenerateReturnsRandomValuesForNullabeBooleanTypeTest()
        {
            var target = new BooleanValueGenerator();

            var nullFound = false;
            var trueFound = false;
            var falseFound = false;

            for (var index = 0; index < 1000; index++)
            {
                var actual = (bool?) target.Generate(typeof (bool?), null, null);

                if (actual == null)
                {
                    nullFound = true;
                }
                else if (actual.Value)
                {
                    trueFound = true;
                }
                else
                {
                    falseFound = true;
                }

                if (nullFound &&
                    trueFound &&
                    falseFound)
                {
                    break;
                }
            }

            nullFound.Should().BeTrue();
            trueFound.Should().BeTrue();
            falseFound.Should().BeTrue();
        }