public void WithoutReturnsCorrectResult() { // Fixture setup Expression <Func <PropertyHolder <object>, object> > expectedExpression = x => x.Property; var expectedComposers = Enumerable.Range(1, 3).Select(i => new DelegatingComposer <PropertyHolder <object> >()).ToArray(); var initialComposers = (from c in expectedComposers select new DelegatingComposer <PropertyHolder <object> > { OnWithout = f => f == expectedExpression ? c : new DelegatingComposer <PropertyHolder <object> >() }).ToArray(); var sut = new CompositeComposer <PropertyHolder <object> >(initialComposers); // Exercise system var result = sut.Without(expectedExpression); // Verify outcome var composite = Assert.IsAssignableFrom <CompositePostprocessComposer <PropertyHolder <object> > >(result); Assert.True(expectedComposers.SequenceEqual(composite.Composers)); // Teardown }
public void WithoutReturnsCorrectResult() { // Fixture setup Expression<Func<PropertyHolder<object>, object>> expectedExpression = x => x.Property; var expectedComposers = Enumerable.Range(1, 3).Select(i => new DelegatingComposer<PropertyHolder<object>>()).ToArray(); var initialComposers = (from c in expectedComposers select new DelegatingComposer<PropertyHolder<object>> { OnWithout = f => f == expectedExpression ? c : new DelegatingComposer<PropertyHolder<object>>() }).ToArray(); var sut = new CompositeComposer<PropertyHolder<object>>(initialComposers); // Exercise system var result = sut.Without(expectedExpression); // Verify outcome var composite = Assert.IsAssignableFrom<CompositePostprocessComposer<PropertyHolder<object>>>(result); Assert.True(expectedComposers.SequenceEqual(composite.Composers)); // Teardown }