public void CreateWithReturnsValueTypeFromGeneratorTest()
{
var expected = Guid.NewGuid().ToString();
var valueGenerators = new List<IValueGenerator>();
var buildStrategy = Substitute.For<IBuildStrategy>();
var valueGenerator = Substitute.For<IValueGenerator>();
valueGenerators.Add(valueGenerator);
buildStrategy.ValueGenerators.Returns(valueGenerators.AsReadOnly());
valueGenerator.IsSupported(typeof(string), null, Arg.Any<LinkedList<object>>()).Returns(true);
valueGenerator.Generate(typeof(string), null, Arg.Any<LinkedList<object>>()).Returns(expected);
var target = new DefaultExecuteStrategy();
target.Initialize(buildStrategy, buildStrategy.GetBuildLog());
var actual = target.CreateWith(typeof(string));
actual.Should().Be(expected);
}