public void ThrowsIfNullRelayIsSet()
        {
            // Arrange
            var sut = new AutoNSubstituteCustomization();

            // Act & Assert
            Assert.Throws <ArgumentNullException>(() => sut.Relay = null);
        }
        public void GenerateDelegatesIsDisabledByDefault()
        {
            // Arrange
            // Act
            var sut = new AutoNSubstituteCustomization();

            // Assert
            Assert.False(sut.GenerateDelegates);
        }
 public void CustomizeNullFixtureThrows()
 {
     // Fixture setup
     var sut = new AutoNSubstituteCustomization();
     // Exercise system and verify outcome
     Assert.Throws<ArgumentNullException>(() =>
         sut.Customize(null));
     // Teardown
 }
        public GameDomainServiceTests()
        {
            AutoNSubstituteCustomization customization = new AutoNSubstituteCustomization {
                ConfigureMembers = true
            };

            Fixture = new Fixture().Customize(customization);
            Fixture.Behaviors.Add(new OmitOnRecursionBehavior());
        }
 public void SutIsCustomization()
 {
     // Fixture setup
     // Exercise system
     var sut = new AutoNSubstituteCustomization();
     // Verify outcome
     Assert.IsAssignableFrom<ICustomization>(sut);
     // Teardown
 }
        public void CustomizeNullFixtureThrows()
        {
            // Arrange
            var sut = new AutoNSubstituteCustomization();

            // Act & Assert
            Assert.Throws <ArgumentNullException>(() =>
                                                  sut.Customize(null));
        }
        public void SutIsCustomization()
        {
            // Arrange
            // Act
            var sut = new AutoNSubstituteCustomization();

            // Assert
            Assert.IsAssignableFrom <ICustomization>(sut);
        }
        public void CustomizeMembersIsDisabledByDefault()
        {
            // Arrange
            // Act
            var sut = new AutoNSubstituteCustomization();

            // Assert
            Assert.False(sut.ConfigureMembers);
        }
        public void CustomizeNullFixtureThrows()
        {
            // Fixture setup
            var sut = new AutoNSubstituteCustomization();

            // Exercise system and verify outcome
            Assert.Throws <ArgumentNullException>(() =>
                                                  sut.Customize(null));
            // Teardown
        }
        public void RelayIsSubstituteRelay_WhenInitializedWithDefaultConstructor()
        {
            // Arrange
            var sut = new AutoNSubstituteCustomization();
            // Act
            var result = sut.Relay;

            // Assert
            Assert.IsType <SubstituteRelay>(result);
        }
 public void BuilderIsSubstituteRelay_WhenInitializedWithDefaultConstructor()
 {
     // Fixture setup
     var sut = new AutoNSubstituteCustomization();
     // Exercise system
     var result = sut.Builder;
     // Verify outcome
     Assert.IsType<SubstituteRelay>(result);
     // Teardown
 }
        public void SutIsCustomization()
        {
            // Fixture setup
            // Exercise system
            var sut = new AutoNSubstituteCustomization();

            // Verify outcome
            Assert.IsAssignableFrom <ICustomization>(sut);
            // Teardown
        }
        public void BuilderIsNotNullWhenInitializedWithDefaultConstructor()
        {
            // Arrange
            var sut = new AutoNSubstituteCustomization();
            // Act
            var result = sut.Builder;

            // Assert
            Assert.NotNull(result);
        }
 public void SpecificationIsCorrectWhenInitializedWithBuilder()
 {
     // Fixture setup
     var expectedBuilder = new NSubstituteBuilder(Substitute.For<ISpecimenBuilder>());
     var sut = new AutoNSubstituteCustomization(expectedBuilder);
     // Exercise system
     ISpecimenBuilder result = sut.Builder;
     // Verify outcome
     Assert.Equal(expectedBuilder, result);
     // Teardown
 }
 public void CustomizeInsertsSubstituteAttributeRelayInCustomizationsToOverrideDefaultConstructionWhenAttributeIsPresent()
 {
     // Fixture setup
     var sut = new AutoNSubstituteCustomization();
     var fixture = Substitute.For<IFixture>();
     // Exercise system
     sut.Customize(fixture);
     // Verify outcome
     fixture.Customizations.Received().Insert(0, Arg.Any<SubstituteAttributeRelay>());
     // Teardown
 }
        public void CustomizeInsertsSubstituteAttributeRelayInCustomizationsToOverrideDefaultConstructionWhenAttributeIsPresent()
        {
            // Arrange
            var sut     = new AutoNSubstituteCustomization();
            var fixture = Substitute.For <IFixture>();

            // Act
            sut.Customize(fixture);
            // Assert
            fixture.Customizations.Received().Insert(0, Arg.Any <SubstituteAttributeRelay>());
        }
        public void BuilderIsSubstituteRelay_WhenInitializedWithDefaultConstructor()
        {
            // Fixture setup
            var sut = new AutoNSubstituteCustomization();
            // Exercise system
            var result = sut.Builder;

            // Verify outcome
            Assert.IsType <SubstituteRelay>(result);
            // Teardown
        }
        public void SpecificationIsCorrectWhenInitializedWithBuilder()
        {
            // Arrange
            var expectedBuilder = new NSubstituteBuilder(Substitute.For <ISpecimenBuilder>());
            var sut             = new AutoNSubstituteCustomization(expectedBuilder);
            // Act
            ISpecimenBuilder result = sut.Builder;

            // Assert
            Assert.Equal(expectedBuilder, result);
        }
        public void ShouldPreserveTheSetRelay()
        {
            // Arrange
            var sut   = new AutoNSubstituteCustomization();
            var relay = new CompositeSpecimenBuilder();

            // Act
            sut.Relay = relay;
            // Assert
            Assert.Equal(relay, sut.Relay);
        }
        public void CustomizeInsertsSubstituteAttributeRelayInCustomizationsToOverrideDefaultConstructionWhenAttributeIsPresent()
        {
            // Fixture setup
            var sut     = new AutoNSubstituteCustomization();
            var fixture = Substitute.For <IFixture>();

            // Exercise system
            sut.Customize(fixture);
            // Verify outcome
            fixture.Customizations.Received().Insert(0, Arg.Any <SubstituteAttributeRelay>());
            // Teardown
        }
        public void SpecificationIsCorrectWhenInitializedWithBuilder()
        {
            // Fixture setup
            var expectedBuilder = new NSubstituteBuilder(Substitute.For <ISpecimenBuilder>());
            var sut             = new AutoNSubstituteCustomization(expectedBuilder);
            // Exercise system
            ISpecimenBuilder result = sut.Builder;

            // Verify outcome
            Assert.Equal(expectedBuilder, result);
            // Teardown
        }
Beispiel #22
0
        public void Customize(IFixture fixture)
        {
            var autoMock = new AutoNSubstituteCustomization()
            {
                ConfigureMembers  = _configureMembers,
                GenerateDelegates = true
            };

            fixture.Customize(autoMock);
            fixture.Customize(new MutagenBaseCustomization());
            fixture.Customize(new MutagenReleaseCustomization(_release));
            fixture.Customize(new DefaultCustomization(_useMockFileSystem));
        }
        public void WithoutGenerateDelegates_ShouldNotAddRelayForDelegates()
        {
            // Arrange
            var fixtureStub = new FixtureStub();
            var sut         = new AutoNSubstituteCustomization {
                GenerateDelegates = false
            };

            // Act
            sut.Customize(fixtureStub);
            // Assert
            Assert.DoesNotContain(fixtureStub.Customizations, c => c is SubstituteRelay);
        }
        public void CustomizeInsertsProperlyConfiguredSubstituteRequestHandlerInCustomizationsToHandleSubstituteRequests()
        {
            // Arrange
            var sut         = new AutoNSubstituteCustomization();
            var fixtureStub = new FixtureStub();

            // Act
            sut.Customize(fixtureStub);
            // Assert
            var substituteRequestHandler = fixtureStub.Customizations.OfType <SubstituteRequestHandler>().Single();
            var substituteConstructor    = Assert.IsType <MethodInvoker>(substituteRequestHandler.SubstituteFactory);

            Assert.IsType <NSubstituteMethodQuery>(substituteConstructor.Query);
        }
        public void CustomizeAddsAppropriateResidueCollector()
        {
            // Arrange
            var residueCollectors = new List <ISpecimenBuilder>();
            var fixtureStub       = Substitute.For <IFixture>();

            fixtureStub.ResidueCollectors.Returns(residueCollectors);

            var sut = new AutoNSubstituteCustomization();

            // Act
            sut.Customize(fixtureStub);
            // Assert
            Assert.Contains(sut.Relay, residueCollectors);
        }
        public void WithGenerateDelegates_CustomizeAddsRelayForDelegates()
        {
            // Arrange
            var fixtureStub = new FixtureStub();
            var sut         = new AutoNSubstituteCustomization {
                GenerateDelegates = true
            };

            // Act
            sut.Customize(fixtureStub);
            // Assert
            var substituteRelay = fixtureStub.Customizations.OfType <SubstituteRelay>().Single();

            Assert.IsType <DelegateSpecification>(substituteRelay.Specification);
        }
Beispiel #27
0
    public TestDataAttribute(bool ConfigureMembers = false)
        : base(() =>
    {
        var customization = new AutoNSubstituteCustomization()
        {
            ConfigureMembers  = ConfigureMembers,
            GenerateDelegates = true
        };

        return(new Fixture()
               .Customize(customization)
               .Customize(new DefaultCustomization()));
    })
    {
    }
        public void CustomizeInsertsProperlyConfiguredSubstituteRequestHandlerInCustomizationsToHandleSubstituteRequests()
        {
            // Arrange
            var sut = new AutoNSubstituteCustomization();
            SubstituteRequestHandler builder = null;
            var fixture = Substitute.For <IFixture>();

            fixture.Customizations.Insert(Arg.Any <int>(), Arg.Do <SubstituteRequestHandler>(b => builder = b));
            // Act
            sut.Customize(fixture);
            // Assert
            Assert.NotNull(builder);
            var substituteConstructor = Assert.IsType <MethodInvoker>(builder.SubstituteFactory);

            Assert.IsType <NSubstituteMethodQuery>(substituteConstructor.Query);
        }
        public void CustomizeAddsNoCustomizations()
        {
            // Fixture setup
            var customizations = new List <ISpecimenBuilder>();
            var fixtureStub    = Substitute.For <IFixture>();

            fixtureStub.Customizations.Returns(customizations);

            var sut = new AutoNSubstituteCustomization();

            // Exercise system
            sut.Customize(fixtureStub);
            // Verify outcome
            Assert.Empty(customizations);
            // Teardown
        }
        public void CustomizeAddsAppropriateResidueCollector()
        {
            // Fixture setup
            var residueCollectors = new List <ISpecimenBuilder>();
            var fixtureStub       = Substitute.For <IFixture>();

            fixtureStub.ResidueCollectors.Returns(residueCollectors);

            var sut = new AutoNSubstituteCustomization();

            // Exercise system
            sut.Customize(fixtureStub);
            // Verify outcome
            Assert.Contains(sut.Builder, residueCollectors);
            // Teardown
        }
Beispiel #31
0
        public static IFixture GetDefaultFixture()
        {
            var autoNSubstituteCustomization = new AutoNSubstituteCustomization
            {
                ConfigureMembers = true
            };

            return(new Fixture()
                   .Customize(new InMemoryDbContextCustomization())
                   .Customize(new OpportunityCustomization())
                   .Customize(new DomainCustomization())
                   .Customize(new HttpContextCustomization())
                   .Customize(new HttpContextAccessorCustomization())
                   .Customize(new MapperCustomization())
                   .Customize(new FactoryServiceCustomizations())
                   .Customize(new EmailHistoryCustomization())
                   .Customize(new ControllerBaseCustomization())
                   .Customize(autoNSubstituteCustomization));
        }
        public void WithConfigureMembers_CustomizeAddsPostprocessorWithSubstituteRequestHandlerAndCommandsToCustomizations()
        {
            // Arrange
            var fixtureStub = new FixtureStub();
            var sut         = new AutoNSubstituteCustomization {
                ConfigureMembers = true
            };

            // Act
            sut.Customize(fixtureStub);
            // Assert
            var postprocessor            = fixtureStub.Customizations.OfType <Postprocessor>().Single();
            var substituteRequestHandler = Assert.IsAssignableFrom <SubstituteRequestHandler>(postprocessor.Builder);
            var substituteFactory        = Assert.IsType <MethodInvoker>(substituteRequestHandler.SubstituteFactory);

            Assert.IsType <NSubstituteMethodQuery>(substituteFactory.Query);
            var compositeCommand = Assert.IsAssignableFrom <CompositeSpecimenCommand>(postprocessor.Command);

            Assert.True(compositeCommand.Commands.OfType <NSubstituteRegisterCallHandlerCommand>().Any());
            Assert.True(compositeCommand.Commands.OfType <NSubstituteSealedPropertiesCommand>().Any());
        }
Beispiel #33
0
        public void Customize(IFixture fixture)
        {
            var autoMock = new AutoNSubstituteCustomization()
            {
                ConfigureMembers  = _configureMembers,
                GenerateDelegates = _generateDelegates
            };

            fixture.Customize(autoMock);
            fixture.OmitAutoProperties = _omitAutoProperties;
            fixture.Customize(new MutagenBaseCustomization());
            fixture.Customize(new MutagenReleaseCustomization(GameRelease.SkyrimSE));
            fixture.Customize(new DefaultCustomization(_useMockFilesystem));
            if (_useMockRepositoryProvider)
            {
                fixture.Register <IProvideRepositoryCheckouts>(
                    () => new ProvideRepositoryCheckouts(
                        fixture.Create <ILogger>(),
                        new GitRepositoryFactory()));
            }
            fixture.Register <IWorkDropoff>(() => new InlineWorkDropoff());
        }
        public void CustomizeAddsNoCustomizations()
        {
            // Fixture setup
            var customizations = new List<ISpecimenBuilder>();
            var fixtureStub = Substitute.For<IFixture>();
            fixtureStub.Customizations.Returns(customizations);

            var sut = new AutoNSubstituteCustomization();
            // Exercise system
            sut.Customize(fixtureStub);
            // Verify outcome
            Assert.Empty(customizations);
            // Teardown
        }
 public void CustomizeInsertsProperlyConfiguredSubstituteRequestHandlerInCustomizationsToHandleSubstituteRequests()
 {
     // Fixture setup
     var sut = new AutoNSubstituteCustomization();
     SubstituteRequestHandler builder = null;
     var fixture = Substitute.For<IFixture>();
     fixture.Customizations.Insert(Arg.Any<int>(), Arg.Do<SubstituteRequestHandler>(b => builder = b));
     // Exercise system
     sut.Customize(fixture);
     // Verify outcome
     Assert.NotNull(builder);
     var substituteConstructor = Assert.IsType<MethodInvoker>(builder.SubstituteFactory);
     Assert.IsType<NSubstituteMethodQuery>(substituteConstructor.Query);
     // Teardown
 }
 public void CustomizeAddsAppropriateResidueCollector()
 {
     // Fixture setup
     var residueCollectors = new List<ISpecimenBuilder>();
     var fixtureStub = Substitute.For<IFixture>();
     fixtureStub.ResidueCollectors.Returns(residueCollectors);
     
     var sut = new AutoNSubstituteCustomization();
     // Exercise system
     sut.Customize(fixtureStub);
     // Verify outcome
     Assert.Contains(sut.Builder, residueCollectors);
     // Teardown
 }