Exemple #1
0
        public void CreateFromNamespaceBlacklist_IncludesSubNamespaces()
        {
            var types = new[]
            {
                typeof(Color),
                typeof(Brush),
                typeof(DateTime),
                typeof(ImageFlags)
            };

            var mockRepository = new MockRepository();
            var decoratedTypeDiscoveryServiceMock = mockRepository.Stub <ITypeDiscoveryService>();

            decoratedTypeDiscoveryServiceMock.Stub(service => service.GetTypes(Arg <Type> .Is.Anything, Arg <bool> .Is.Anything)).Return(types);
            mockRepository.ReplayAll();

            var filteringTypeDiscoveryService = FilteringTypeDiscoveryService.CreateFromNamespaceBlacklist(
                decoratedTypeDiscoveryServiceMock, typeof(Color).Namespace);
            var filteredTypes = filteringTypeDiscoveryService.GetTypes(null, false);

            Assert.That(
                filteredTypes.Cast <Type>().ToArray(),
                Is.EqualTo(
                    new[]
            {
                typeof(DateTime),
            }));
        }
Exemple #2
0
        public void CreateFromNamespaceBlacklist_AllowsTypesWithoutNamespace_Exclusion()
        {
            var types = new[] { typeof(TypeWithNullNamespace) };

            var mockRepository = new MockRepository();
            var decoratedTypeDiscoveryServiceMock = mockRepository.Stub <ITypeDiscoveryService>();

            decoratedTypeDiscoveryServiceMock.Stub(service => service.GetTypes(Arg <Type> .Is.Anything, Arg <bool> .Is.Anything)).Return(types);
            mockRepository.ReplayAll();

            var filteringTypeDiscoveryService = FilteringTypeDiscoveryService.CreateFromNamespaceBlacklist(decoratedTypeDiscoveryServiceMock, "");
            var filteredTypes = filteringTypeDiscoveryService.GetTypes(null, false);

            Assert.That(filteredTypes, Is.Empty);
        }
        public static ITypeDiscoveryService GetTypeDiscoveryService(params Assembly[] rootAssemblies)
        {
            var rootAssemblyFinder = new FixedRootAssemblyFinder(rootAssemblies.Select(asm => new RootAssembly(asm, true)).ToArray());
            var assemblyLoader     = new FilteringAssemblyLoader(ApplicationAssemblyLoaderFilter.Instance);
            var assemblyFinder     = new CachingAssemblyFinderDecorator(new AssemblyFinder(rootAssemblyFinder, assemblyLoader));
            ITypeDiscoveryService typeDiscoveryService = new AssemblyFinderTypeDiscoveryService(assemblyFinder);

            return(FilteringTypeDiscoveryService.CreateFromNamespaceBlacklist(
                       typeDiscoveryService,
                       "Remotion.Data.DomainObjects.UnitTests.Mapping.TestDomain.Errors",
                       "Remotion.Data.DomainObjects.UnitTests.Mapping.TestDomain.Integration",
                       "Remotion.Data.DomainObjects.UnitTests.Mapping.TestDomain.RelationReflector",
                       "Remotion.Data.DomainObjects.UnitTests.Mapping.TestDomain.Validation",
                       "Remotion.Data.DomainObjects.UnitTests.Mapping.MappingReflectionIntegrationTests",
                       "Remotion.Data.DomainObjects.UnitTests.Security.TestDomain",
                       "Remotion.Data.DomainObjects.UnitTests.Persistence.Rdbms.SchemaGenerationTestDomain"
                       ));
        }