public void ComposeRetainsHandler() { // Fixture setup var dummyBuilder = new DelegatingSpecimenBuilder(); var expected = new DelegatingRecursionHandler(); var dummyComparer = new DelegatingEqualityComparer(); var sut = new RecursionGuard(dummyBuilder, expected, dummyComparer); // Exercise system var actual = sut.Compose(new ISpecimenBuilder[0]); // Verify outcome var rg = Assert.IsAssignableFrom<RecursionGuard>(actual); Assert.Equal(expected, rg.RecursionHandler); // Teardown }
public void ComposeReturnsCorrectResult() { // Fixture setup var dummyBuilder = new DelegatingSpecimenBuilder(); var dummyHandler = new DelegatingRecursionHandler(); var dummyComparer = new DelegatingEqualityComparer(); var sut = new RecursionGuard(dummyBuilder, dummyHandler, dummyComparer); // Exercise system var expectedBuilders = new[] { new DelegatingSpecimenBuilder(), new DelegatingSpecimenBuilder(), new DelegatingSpecimenBuilder() }; var actual = sut.Compose(expectedBuilders); // Verify outcome var rg = Assert.IsAssignableFrom<RecursionGuard>(actual); var composite = Assert.IsAssignableFrom<CompositeSpecimenBuilder>(rg.Builder); Assert.True(expectedBuilders.SequenceEqual(composite)); // Teardown }
public void ComposeSingleItemReturnsCorrectResult() { // Fixture setup var dummyBuilder = new DelegatingSpecimenBuilder(); var dummyHandler = new DelegatingRecursionHandler(); var dummyComparer = new DelegatingEqualityComparer(); int dummyRecursionDepth = 2; var sut = new RecursionGuard(dummyBuilder, dummyHandler, dummyComparer, dummyRecursionDepth); // Exercise system var expected = new DelegatingSpecimenBuilder(); var actual = sut.Compose(new[] { expected }); // Verify outcome var rg = Assert.IsAssignableFrom<RecursionGuard>(actual); Assert.Equal(expected, rg.Builder); // Teardown }