internal void ApplyParameterFilters( SpecimenProvider specimenProvider, RegexFilter filter) { // Arrange filter.IncludeMethod("Compare", typeof(Uri)) .ExcludeParameter("uri1", typeof(Uri)) .ExcludeParameter("uri2", typeof(Uri), "Compare") .Rules.Add(new RegexRule("exclude all", type: new Regex(".*"), method: new Regex(".*"))); IArgumentNullExceptionFixture sut = new ArgumentNullExceptionFixture(typeof(Uri).GetTypeInfo().Assembly, specimenProvider, new List <IFilter> { filter }, new List <IMapping>()); // Act List <MethodData> methodDatas = sut.GetData().ToList(); // Assert Assert.Equal(3, methodDatas.Count); Assert.Equal(3, methodDatas.Select(m => m.ExecutionSetup).OfType <DefaultExecutionSetup>().Count()); }
public void CreateErroredMethodInvocationData( Mock <ISpecimenProvider> specimenProviderMock, FileNotFoundException exception, RegexFilter filter) { // Arrange specimenProviderMock.Setup(sp => sp.GetParameterSpecimens(It.IsAny <IList <ParameterInfo> >(), It.IsAny <int>())) .Throws(exception); filter.IncludeMethod("Compare", typeof(Uri)) .Rules.Add(new RegexRule("exclude all", type: new Regex(".*"), method: new Regex(".*"))); IArgumentNullExceptionFixture sut = new ArgumentNullExceptionFixture(typeof(Uri).GetTypeInfo().Assembly, specimenProviderMock.Object, new List <IFilter> { filter }, new List <IMapping>()); // Act List <MethodData> methodDatas = sut.GetData().ToList(); // Assert Assert.Equal(5, methodDatas.Count); List <ErroredExecutionSetup> executionSetups = methodDatas.Select(m => m.ExecutionSetup).OfType <ErroredExecutionSetup>().ToList(); Assert.Equal(5, executionSetups.Count); foreach (ErroredExecutionSetup executionSetup in executionSetups) { CompositionException compositionException = Assert.IsType <CompositionException>(executionSetup.Exception); Assert.Same(exception, compositionException.InnerException); } }
public void ShouldGetAll5Tests() { IArgumentNullExceptionFixture sut = new ArgumentNullExceptionFixture(typeof(OtherEquals).Assembly) .ExcludeAllTypes() .IncludeType(typeof(OtherEquals)); IEnumerable<MethodData> data = sut.GetData(); Assert.Equal(5, data.Count()); }
public void InitialiseFixtureFromType() { // Act var sut = new RequiresArgumentNullExceptionAttribute(typeof(Uri)); // Assert Assert.NotNull(sut.Fixture); ArgumentNullExceptionFixture fixture = Assert.IsType <ArgumentNullExceptionFixture>(sut.Fixture); Assert.Same(typeof(Uri).GetTypeInfo().Assembly, fixture.AssemblyUnderTest); }
public void ThrowInvalidOperationExceptionIfDuplicateSubstitutions( Type originalType, Type newType1, Type newType2, ArgumentNullExceptionFixture fixture) { // Arrange fixture.SubstituteType(originalType, newType1); // Act//Assert Assert.Throws <InvalidOperationException>(() => fixture.SubstituteType(originalType, newType2)); }
public void ThrowInvalidOperationExceptionIfDuplicateSubstitutions( Type originalType, Type newType1, Type newType2, List<IMapping> mapings, ArgumentNullExceptionFixture fixture) { // Arrange fixture.SubstituteType(originalType, newType1); // Act//Assert Assert.Throws<InvalidOperationException>(() => fixture.SubstituteType(originalType, newType2)); }
public void InitializeDefaults( [Frozen] Assembly expectedAssembly, [Modest] ArgumentNullExceptionFixture sut) { // AAA Assert.NotNull(sut.SpecimenProvider); Assert.Same(expectedAssembly, sut.AssemblyUnderTest); Assert.Equal(ArgumentNullExceptionFixture.DefaultBindingFlags, sut.BindingFlags); Assert.NotNull(sut.Filters); Assert.NotNull(sut.TypeFilters); Assert.NotNull(sut.MethodFilters); Assert.NotNull(sut.ParameterFilters); Assert.NotNull(sut.Mappings); }
public void InitializeInjectedDefaultsManual( [Frozen] Assembly expectedAssembly, IFixture expectedFixture) { // Arrange/Act var sut = new ArgumentNullExceptionFixture(expectedAssembly, expectedFixture); // Assert Assert.Same(expectedFixture, ((SpecimenProvider)sut.SpecimenProvider).Builder); Assert.Same(expectedAssembly, sut.AssemblyUnderTest); Assert.Equal(ArgumentNullExceptionFixture.DefaultBindingFlags, sut.BindingFlags); Assert.NotNull(sut.Filters); Assert.NotNull(sut.TypeFilters); Assert.NotNull(sut.MethodFilters); Assert.NotNull(sut.ParameterFilters); }
public void InitializeInjectedDefaultsManual( [Frozen] Assembly expectedAssembly, IFixture expectedFixture) { // Arrange/Act var sut = new ArgumentNullExceptionFixture(expectedAssembly, expectedFixture); // Assert Assert.Same(expectedFixture, ((SpecimenProvider)sut.SpecimenProvider).Builder); Assert.Same(expectedAssembly, sut.AssemblyUnderTest); Assert.Equal(ArgumentNullExceptionFixture.DefaultBindingFlags, sut.BindingFlags); Assert.NotNull(sut.Filters); Assert.NotNull(sut.TypeFilters); Assert.NotNull(sut.MethodFilters); Assert.NotNull(sut.ParameterFilters); }
public void InitializeInjectedDefaults( [Frozen] Assembly expectedAssembly, IFixture expectedFixture, [Frozen] List <IFilter> filters, [Frozen] List <IMapping> mappings, [Greedy] ArgumentNullExceptionFixture sut) { // AAA Assert.Same(expectedFixture, ((SpecimenProvider)sut.SpecimenProvider).Builder); Assert.Same(expectedAssembly, sut.AssemblyUnderTest); Assert.Same(filters, sut.Filters); Assert.Same(mappings, sut.Mappings); Assert.Equal(ArgumentNullExceptionFixture.DefaultBindingFlags, sut.BindingFlags); Assert.NotNull(sut.TypeFilters); Assert.NotNull(sut.MethodFilters); Assert.NotNull(sut.ParameterFilters); }
public void ClearBindingFlag( BindingFlags mask) { // Arrange. IArgumentNullExceptionFixture sut = new ArgumentNullExceptionFixture(typeof(ArgumentNullExceptionFixtureExtensionsShould).Assembly); // Get the original value which should be preserved with the exception of the cleared values. BindingFlags original = sut.BindingFlags; Assert.Same(sut, sut.SetBindingFlags(mask)); Assert.True(sut.BindingFlags.HasFlag(mask), "The binding flag has not been set."); Assert.True(sut.BindingFlags.HasFlag(original), "The original binding flags have not been preserved."); Assert.Equal(original | mask, sut.BindingFlags); Assert.Same(sut, sut.ClearBindingFlags(mask)); Assert.False(sut.BindingFlags.HasFlag(mask), "The Binding flag should not be set after having been cleared."); Assert.Equal(original & ~mask, sut.BindingFlags); }
internal void CreateStaticMethodInvocationData( SpecimenProvider specimenProvider, RegexFilter filter) { // Arrange filter.IncludeMethod("Compare", typeof (Uri)) .Rules.Add(new RegexRule("exclude all", type: new Regex(".*"), method: new Regex(".*"))); IArgumentNullExceptionFixture sut = new ArgumentNullExceptionFixture(typeof(Uri).Assembly, specimenProvider, new List<IFilter> { filter }, new List<IMapping>()); // Act List<MethodData> methodDatas = sut.GetData().ToList(); // Assert Assert.Equal(5, methodDatas.Count); Assert.Equal(5, methodDatas.Select(m => m.ExecutionSetup).OfType<DefaultExecutionSetup>().Count()); }
internal void CreateInstanceMethodInvocationData( SpecimenProvider specimenProvider, RegexFilter filter) { // Arrange filter.IncludeMethod("GetComponents", typeof(Uri)) .Rules.Add(new RegexRule("exclude all", type: new Regex(".*"), method: new Regex(".*"))); IArgumentNullExceptionFixture sut = new ArgumentNullExceptionFixture(typeof(Uri).GetTypeInfo().Assembly, specimenProvider, new List <IFilter> { filter }, new List <IMapping>()); // Act List <MethodData> methodDatas = sut.GetData().ToList(); // Assert Assert.Equal(2, methodDatas.Count); Assert.Equal(2, methodDatas.Select(m => m.ExecutionSetup).OfType <DefaultExecutionSetup>().Count()); }
public void CreateErroredMethodInvocationData( Mock<ISpecimenProvider> specimenProviderMock, FileNotFoundException exception, RegexFilter filter) { // Arrange specimenProviderMock.Setup(sp => sp.GetParameterSpecimens(It.IsAny<IList<ParameterInfo>>(), It.IsAny<int>())) .Throws(exception); filter.IncludeMethod("Compare", typeof(Uri)) .Rules.Add(new RegexRule("exclude all", type: new Regex(".*"), method: new Regex(".*"))); IArgumentNullExceptionFixture sut = new ArgumentNullExceptionFixture(typeof(Uri).Assembly, specimenProviderMock.Object, new List<IFilter> { filter }, new List<IMapping>()); // Act List<MethodData> methodDatas = sut.GetData().ToList(); // Assert Assert.Equal(5, methodDatas.Count); List<ErroredExecutionSetup> executionSetups = methodDatas.Select(m => m.ExecutionSetup).OfType<ErroredExecutionSetup>().ToList(); Assert.Equal(5, executionSetups.Count); foreach (ErroredExecutionSetup executionSetup in executionSetups) { var compositionException = Assert.IsType<CompositionException>(executionSetup.Exception); Assert.Same(exception, compositionException.InnerException); } }