ModelBuilder.UnitTests.BuildStrategyExtensionsTests.PopulateUsesDefaultExecuteStrategyToPopulateInstanceTest C# (CSharp) Method

PopulateUsesDefaultExecuteStrategyToPopulateInstanceTest() private method

        public void PopulateUsesDefaultExecuteStrategyToPopulateInstanceTest()
        {
            var value = Guid.NewGuid();
            var expected = new SlimModel();

            var target = Substitute.For<IBuildStrategy>();
            var generator = Substitute.For<IValueGenerator>();
            var generators = new List<IValueGenerator>
            {
                generator
            }.AsReadOnly();

            target.ValueGenerators.Returns(generators);
            generator.IsSupported(typeof(Guid), "Value", Arg.Is<LinkedList<object>>(x => x.Last.Value == expected))
                .Returns(true);
            generator.Generate(typeof(Guid), "Value", Arg.Is<LinkedList<object>>(x => x.Last.Value == expected))
                .Returns(value);

            var actual = target.Populate(expected);

            actual.Should().Be(expected);
        }