Ejemplo n.º 1
0
        public void AnonymousWithReturnsCorrectResult()
        {
            // Arrange
            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> >
            {
                OnAnonymousWith = f => f == expectedExpression ? c : new DelegatingComposer <PropertyHolder <object> >()
            }).ToArray();
            var sut = new CompositePostprocessComposer <PropertyHolder <object> >(initialComposers);
            // Act
            var result = sut.With(expectedExpression);
            // Assert
            var composite = Assert.IsAssignableFrom <CompositePostprocessComposer <PropertyHolder <object> > >(result);

            Assert.True(expectedComposers.SequenceEqual(composite.Composers));
        }
 public void AnonymousWithReturnsCorrectResult()
 {
     // 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>>
                             {
                                 OnAnonymousWith = f => f == expectedExpression ? c : new DelegatingComposer<PropertyHolder<object>>()
                             }).ToArray();
     var sut = new CompositePostprocessComposer<PropertyHolder<object>>(initialComposers);
     // Exercise system
     var result = sut.With(expectedExpression);
     // Verify outcome
     var composite = Assert.IsAssignableFrom<CompositePostprocessComposer<PropertyHolder<object>>>(result);
     Assert.True(expectedComposers.SequenceEqual(composite.Composers));
     // Teardown
 }
Ejemplo n.º 3
0
        public void WithValueReturnsCorrectResult()
        {
            // Arrange
            Expression <Func <PropertyHolder <object>, object> > expectedExpression = x => x.Property;
            var value = new object();

            var expectedComposers = Enumerable.Range(1, 3).Select(i => new DelegatingComposer <PropertyHolder <object> >()).ToArray();
            var initialComposers  = (from c in expectedComposers
                                     select new DelegatingComposer <PropertyHolder <object> >
            {
                OnWithOverloadValue = (e, v) => e == expectedExpression && v == value ? c : new DelegatingComposer <PropertyHolder <object> >()
            }).ToArray();
            var sut = new CompositePostprocessComposer <PropertyHolder <object> >(initialComposers);
            // Act
            var result = sut.With(expectedExpression, value);
            // Assert
            var composite = Assert.IsAssignableFrom <CompositePostprocessComposer <PropertyHolder <object> > >(result);

            Assert.True(expectedComposers.SequenceEqual(composite.Composers));
        }
Ejemplo n.º 4
0
        public void WithSingleArgValueFactoryReturnsCorrectResult()
        {
            // Arrange
            Expression <Func <PropertyHolder <object>, object> > expectedExpression = x => x.Property;
            Func <object, object> valueFactory = _ => new object();

            var expectedComposers = Enumerable.Range(1, 3).Select(i => new DelegatingComposer <PropertyHolder <object> >()).ToArray();
            var initialComposers  = (from c in expectedComposers
                                     select new DelegatingComposer <PropertyHolder <object> >
            {
                OnWithOverloadFactory = (f, vf) =>
                                        f == expectedExpression && object.Equals(vf, valueFactory) ? c : new DelegatingComposer <PropertyHolder <object> >()
            }).ToArray();
            var sut = new CompositePostprocessComposer <PropertyHolder <object> >(initialComposers);
            // Act
            var result = sut.With(expectedExpression, valueFactory);
            // Assert
            var composite = Assert.IsAssignableFrom <CompositePostprocessComposer <PropertyHolder <object> > >(result);

            Assert.True(expectedComposers.SequenceEqual(composite.Composers));
        }
Ejemplo n.º 5
0
        public void WithReturnsCorrectResult()
        {
            // Fixture setup
            Expression <Func <PropertyHolder <object>, object> > expectedExpression = x => x.Property;
            var value = new object();

            var expectedComposers = Enumerable.Range(1, 3).Select(i => new DelegatingComposer <PropertyHolder <object> >()).ToArray();
            var initialComposers  = (from c in expectedComposers
                                     select new DelegatingComposer <PropertyHolder <object> >
            {
                OnWith = (f, v) => f == expectedExpression && v == value ? c : new DelegatingComposer <PropertyHolder <object> >()
            }).ToArray();
            var sut = new CompositePostprocessComposer <PropertyHolder <object> >(initialComposers);
            // Exercise system
            var result = sut.With(expectedExpression, value);
            // Verify outcome
            var composite = Assert.IsAssignableFrom <CompositePostprocessComposer <PropertyHolder <object> > >(result);

            Assert.True(expectedComposers.SequenceEqual(composite.Composers));
            // Teardown
        }