public void CreateReturnsNoSpecimenWhenRequestIsNull()
        {
            // Arrange
            var sut     = new SubstituteAttributeRelay();
            var context = Substitute.For <ISpecimenContext>();
            // Act
            object specimen = sut.Create(null, context);
            // Assert
            var expected = new NoSpecimen();

            Assert.Equal(expected, specimen);
        }
 public void CreateReturnsNoSpecimenWhenRequestIsNull()
 {
     // Fixture setup
     var sut = new SubstituteAttributeRelay();
     var context = Substitute.For<ISpecimenContext>();
     // Exercise system
     object specimen = sut.Create(null, context);
     // Verify outcome
     var expected = new NoSpecimen(null);
     Assert.Equal(expected, specimen);
     // Teardown
 }
Esempio n. 3
0
        public void CreateReturnsNoSpecimenWhenRequestIsNull()
        {
            // Fixture setup
            var sut     = new SubstituteAttributeRelay();
            var context = Substitute.For <ISpecimenContext>();
            // Exercise system
            object specimen = sut.Create(null, context);
            // Verify outcome
            var expected = new NoSpecimen();

            Assert.Equal(expected, specimen);
            // Teardown
        }
 public void CreateReturnsNoSpecimenWhenICustomAttributeProviderDoesNotReturnExpectedAttributeType()
 {
     // Fixture setup
     var sut = new SubstituteAttributeRelay();
     var request = Substitute.For<ICustomAttributeProvider>();
     request.GetCustomAttributes(Arg.Any<Type>(), Arg.Any<bool>()).Returns(new object[0]);
     var context = Substitute.For<ISpecimenContext>();
     // Exercise system
     object specimen = sut.Create(request, context);
     // Verify outcome
     var expected = new NoSpecimen(request);
     Assert.Equal(expected, specimen);
     // Teardown
 }
        public void CreateReturnsNoSpecimenWhenRequestIsNotICustomAttributeProvider()
        {
            // Fixture setup
            var sut = new SubstituteAttributeRelay();
            var request = new object();
            var context = Substitute.For<ISpecimenContext>();
            // Exercise system
            object specimen = sut.Create(request, context);
            // Verify outcome
#pragma warning disable 618
            var expected = new NoSpecimen(request);
#pragma warning restore 618
            Assert.Equal(expected, specimen);
            // Teardown
        }
        public void CreateReturnsNoSpecimenWhenICustomAttributeProviderDoesNotReturnExpectedAttributeType()
        {
            // Arrange
            var sut     = new SubstituteAttributeRelay();
            var request = Substitute.For <ICustomAttributeProvider>();

            request.GetCustomAttributes(Arg.Any <Type>(), Arg.Any <bool>()).Returns(new object[0]);
            var context = Substitute.For <ISpecimenContext>();
            // Act
            object specimen = sut.Create(request, context);
            // Assert
            var expected = new NoSpecimen();

            Assert.Equal(expected, specimen);
        }
 public void CreateResolvesSubstituteRequestForParameterWithSubstituteAttribute()
 {
     // Fixture setup
     var sut = new SubstituteAttributeRelay();
     var request = Substitute.For<ParameterInfo>();
     request.ParameterType.Returns(typeof(IInterface));
     request.GetCustomAttributes(typeof(SubstituteAttribute), true).Returns(new[] { new SubstituteAttribute() });
     var expectedSpecimen = new object();
     var context = Substitute.For<ISpecimenContext>();
     context.Resolve(Arg.Is<SubstituteRequest>(r => r.TargetType == request.ParameterType)).Returns(expectedSpecimen);
     // Exercise system
     object actualSpecimen = sut.Create(request, context);
     // Verify outcome
     Assert.Same(expectedSpecimen, actualSpecimen);
     // Teardown
 }
Esempio n. 8
0
        public void CreateReturnsNoSpecimenWhenICustomAttributeProviderDoesNotReturnExpectedAttributeType()
        {
            // Fixture setup
            var sut     = new SubstituteAttributeRelay();
            var request = Substitute.For <ICustomAttributeProvider>();

            request.GetCustomAttributes(Arg.Any <Type>(), Arg.Any <bool>()).Returns(new object[0]);
            var context = Substitute.For <ISpecimenContext>();
            // Exercise system
            object specimen = sut.Create(request, context);
            // Verify outcome
            var expected = new NoSpecimen();

            Assert.Equal(expected, specimen);
            // Teardown
        }
        public void CreateReturnsNoSpecimenWhenRequestIsNotICustomAttributeProvider()
        {
            // Fixture setup
            var sut     = new SubstituteAttributeRelay();
            var request = new object();
            var context = Substitute.For <ISpecimenContext>();
            // Exercise system
            object specimen = sut.Create(request, context);

            // Verify outcome
#pragma warning disable 618
            var expected = new NoSpecimen(request);
#pragma warning restore 618
            Assert.Equal(expected, specimen);
            // Teardown
        }
        public void CreateRelayedRequestThrowsNotSupportedExceptionWhenAttributeIsAppliedToUnexpectedCodeElement()
        {
            // Arrange
            var sut       = new SubstituteAttributeRelay();
            var request   = Substitute.For <ICustomAttributeProvider>();
            var attribute = new SubstituteAttribute();

            request.GetCustomAttributes(Arg.Any <Type>(), Arg.Any <bool>()).Returns(new object[] { attribute });
            var context = Substitute.For <ISpecimenContext>();
            // Act
            var e = Assert.Throws <NotSupportedException>(() => sut.Create(request, context));

            // Assert
            Assert.Contains(attribute.ToString(), e.Message);
            Assert.Contains(request.ToString(), e.Message);
        }
        public void CreateRelayedRequestThrowsNotSupportedExceptionWhenAttributeIsAppliedToUnexpectedCodeElement()
        {
            // Fixture setup
            var sut       = new SubstituteAttributeRelay();
            var request   = Substitute.For <EventInfo>();
            var attribute = new SubstituteAttribute();

            request.GetCustomAttributes(Arg.Any <Type>(), Arg.Any <bool>()).Returns(new[] { attribute });
            var context = Substitute.For <ISpecimenContext>();
            // Exercise system
            var e = Assert.Throws <NotSupportedException>(() => sut.Create(request, context));

            // Verify outcome
            Assert.Contains(attribute.ToString(), e.Message);
            Assert.Contains(request.ToString(), e.Message);
            // Teardown
        }
        public void CreateResolvesSubstituteRequestForPropertyWithSubstituteAttribute()
        {
            // Arrange
            var sut     = new SubstituteAttributeRelay();
            var request = Substitute.For <PropertyInfo>();

            request.PropertyType.Returns(typeof(IInterface));
            request.GetCustomAttributes(typeof(SubstituteAttribute), true).Returns(new[] { new SubstituteAttribute() });
            var expectedSpecimen = new object();
            var context          = Substitute.For <ISpecimenContext>();

            context.Resolve(Arg.Is <SubstituteRequest>(r => r.TargetType == request.PropertyType)).Returns(expectedSpecimen);
            // Act
            object actualSpecimen = sut.Create(request, context);

            // Assert
            Assert.Same(expectedSpecimen, actualSpecimen);
        }
Esempio n. 13
0
        public void CreateResolvesSubstituteRequestForParameterWithSubstituteAttribute()
        {
            // Fixture setup
            var sut     = new SubstituteAttributeRelay();
            var request = Substitute.For <ParameterInfo>();

            request.ParameterType.Returns(typeof(IInterface));
            request.GetCustomAttributes(typeof(SubstituteAttribute), true).Returns(new[] { new SubstituteAttribute() });
            var expectedSpecimen = new object();
            var context          = Substitute.For <ISpecimenContext>();

            context.Resolve(Arg.Is <SubstituteRequest>(r => r.TargetType == request.ParameterType)).Returns(expectedSpecimen);
            // Exercise system
            object actualSpecimen = sut.Create(request, context);

            // Verify outcome
            Assert.Same(expectedSpecimen, actualSpecimen);
            // Teardown
        }
 public void CreateRelayedRequestThrowsNotSupportedExceptionWhenAttributeIsAppliedToUnexpectedCodeElement()
 {
     // Fixture setup
     var sut = new SubstituteAttributeRelay();
     var request = Substitute.For<EventInfo>();
     var attribute = new SubstituteAttribute();
     request.GetCustomAttributes(Arg.Any<Type>(), Arg.Any<bool>()).Returns(new[] { attribute });
     var context = Substitute.For<ISpecimenContext>();
     // Exercise system
     var e = Assert.Throws<NotSupportedException>(() => sut.Create(request, context));
     // Verify outcome
     Assert.Contains(attribute.ToString(), e.Message);
     Assert.Contains(request.ToString(), e.Message);
     // Teardown
 }