protected TestMappingConfiguration() { ProviderCollection <StorageProviderDefinition> storageProviderDefinitionCollection = StorageProviderDefinitionObjectMother.CreateTestDomainStorageProviders(); _storageConfiguration = new StorageConfiguration( storageProviderDefinitionCollection, storageProviderDefinitionCollection[MappingReflectionTestBase.DefaultStorageProviderID]); _storageConfiguration.StorageGroups.Add(new StorageGroupElement(new TestDomainAttribute(), MappingReflectionTestBase.c_testDomainProviderID)); _storageConfiguration.StorageGroups.Add( new StorageGroupElement(new StorageProviderStubAttribute(), MappingReflectionTestBase.c_unitTestStorageProviderStubID)); _storageConfiguration.StorageGroups.Add( new StorageGroupElement(new TableInheritanceTestDomainAttribute(), TableInheritanceMappingTest.TableInheritanceTestDomainProviderID)); _mappingLoaderConfiguration = new MappingLoaderConfiguration(); _queryConfiguration = new QueryConfiguration("QueriesForStandardMapping.xml"); DomainObjectsConfiguration.SetCurrent( new FakeDomainObjectsConfiguration(_mappingLoaderConfiguration, _storageConfiguration, _queryConfiguration)); var typeDiscoveryService = GetTypeDiscoveryService(); _mappingConfiguration = new MappingConfiguration( MappingReflectorObjectMother.CreateMappingReflector(typeDiscoveryService), new PersistenceModelLoader(new StorageGroupBasedStorageProviderDefinitionFinder(DomainObjectsConfiguration.Current.Storage))); MappingConfiguration.SetCurrent(_mappingConfiguration); _domainObjectIDs = new DomainObjectIDs(); }
public void GetClassDefinitions() { MappingReflector mappingReflector = MappingReflectorObjectMother.CreateMappingReflector(TestMappingConfiguration.GetTypeDiscoveryService()); var actualClassDefinitions = mappingReflector.GetClassDefinitions().ToDictionary(cd => cd.ClassType); mappingReflector.GetRelationDefinitions(actualClassDefinitions); Assert.That(actualClassDefinitions, Is.Not.Null); var inheritanceRootClasses = actualClassDefinitions.Values.Select(cd => cd.GetInheritanceRootClass()).Distinct(); // Pretend that all classes have the storage provider definition used by FakeMappingConfiguration var storageProviderDefinition = FakeMappingConfiguration.Current.StorageProviderDefinition; var storageProviderDefinitionFinderStub = MockRepository.GenerateStub <IStorageProviderDefinitionFinder> (); storageProviderDefinitionFinderStub .Stub(stub => stub.GetStorageProviderDefinition(Arg <ClassDefinition> .Is.Anything, Arg <string> .Is.Anything)) .Return(storageProviderDefinition); foreach (ClassDefinition classDefinition in inheritanceRootClasses) { var persistenceModelLoader = storageProviderDefinition.Factory.CreatePersistenceModelLoader(storageProviderDefinition, storageProviderDefinitionFinderStub); persistenceModelLoader.ApplyPersistenceModelToHierarchy(classDefinition); } var classDefinitionChecker = new ClassDefinitionChecker(); classDefinitionChecker.Check(FakeMappingConfiguration.Current.TypeDefinitions.Values, actualClassDefinitions, false, true); classDefinitionChecker.CheckPersistenceModel(FakeMappingConfiguration.Current.TypeDefinitions.Values, actualClassDefinitions); Assert.That(actualClassDefinitions.ContainsKey(typeof(TestDomainBase)), Is.False); }
public void GetClassDefinitions() { var assembly = GetType().Assembly; var mappingReflector = MappingReflectorObjectMother.CreateMappingReflector(BaseConfiguration.GetTypeDiscoveryService(assembly, assembly)); var classDefinitions = mappingReflector.GetClassDefinitions(); Assert.That(classDefinitions, Is.Not.Empty); }
private MappingReflector CreateMappingReflector(Type[] reflectedTypes) { var typeDiscoveryServiceStub = MockRepository.GenerateStub <ITypeDiscoveryService>(); typeDiscoveryServiceStub .Stub(stub => stub.GetTypes(Arg <Type> .Is.Anything, Arg <bool> .Is.Anything)) .Return(reflectedTypes); return(MappingReflectorObjectMother.CreateMappingReflector(typeDiscoveryServiceStub)); }
protected void ValidateMapping(string testDomainNamespaceSuffix) { var testDomainNamespace = "Remotion.Data.DomainObjects.UnitTests.Mapping.TestDomain.Validation.Integration." + testDomainNamespaceSuffix; var typeDiscoveryService = GetTypeDiscoveryService(testDomainNamespace, GetType().Assembly); Assert.That(typeDiscoveryService.GetTypes(typeof(DomainObject), true), Is.Not.Empty, "Namespace '{0}' has no DomainObjects.", testDomainNamespaceSuffix); new MappingConfiguration( MappingReflectorObjectMother.CreateMappingReflector(typeDiscoveryService), new PersistenceModelLoader(new StorageGroupBasedStorageProviderDefinitionFinder(StandardConfiguration.Instance.GetPersistenceConfiguration()))); }
public SchemaGenerationConfiguration() { var sqlStorageObjectFactory = new SqlStorageObjectFactory(); var storageProviderDefinitionCollection = new ProviderCollection <StorageProviderDefinition> { new RdbmsProviderDefinition( DatabaseTest.SchemaGenerationFirstStorageProviderID, sqlStorageObjectFactory, DatabaseTest.SchemaGenerationConnectionString1), new RdbmsProviderDefinition( DatabaseTest.SchemaGenerationSecondStorageProviderID, sqlStorageObjectFactory, DatabaseTest.SchemaGenerationConnectionString2), new RdbmsProviderDefinition( DatabaseTest.SchemaGenerationThirdStorageProviderID, sqlStorageObjectFactory, DatabaseTest.SchemaGenerationConnectionString3), new RdbmsProviderDefinition( DatabaseTest.SchemaGenerationInternalStorageProviderID, sqlStorageObjectFactory, DatabaseTest.SchemaGenerationConnectionString1) }; _storageConfiguration = new StorageConfiguration( storageProviderDefinitionCollection, storageProviderDefinitionCollection[DatabaseTest.SchemaGenerationFirstStorageProviderID]); _storageConfiguration.StorageGroups.Add( new StorageGroupElement( new FirstStorageGroupAttribute(), DatabaseTest.SchemaGenerationFirstStorageProviderID)); _storageConfiguration.StorageGroups.Add( new StorageGroupElement( new SecondStorageGroupAttribute(), DatabaseTest.SchemaGenerationSecondStorageProviderID)); _storageConfiguration.StorageGroups.Add( new StorageGroupElement( new ThirdStorageGroupAttribute(), DatabaseTest.SchemaGenerationThirdStorageProviderID)); _storageConfiguration.StorageGroups.Add( new StorageGroupElement( new InternalStorageGroupAttribute(), DatabaseTest.SchemaGenerationInternalStorageProviderID)); _mappingLoaderConfiguration = new MappingLoaderConfiguration(); _queryConfiguration = new QueryConfiguration(); var typeDiscoveryService = GetTypeDiscoveryService(GetType().Assembly); _mappingConfiguration = new MappingConfiguration( MappingReflectorObjectMother.CreateMappingReflector(typeDiscoveryService), new PersistenceModelLoader(new StorageGroupBasedStorageProviderDefinitionFinder(_storageConfiguration))); _domainObjectsConfiguration = new FakeDomainObjectsConfiguration(_mappingLoaderConfiguration, _storageConfiguration, _queryConfiguration); }
public void Get_WithDuplicateAssembly() { var assembly = GetType().Assembly; var expectedMappingReflector = MappingReflectorObjectMother.CreateMappingReflector(BaseConfiguration.GetTypeDiscoveryService(assembly)); var expectedClassDefinitions = expectedMappingReflector.GetClassDefinitions().ToDictionary(cd => cd.ClassType); var expectedRelationDefinitions = expectedMappingReflector.GetRelationDefinitions(expectedClassDefinitions); var mappingReflector = MappingReflectorObjectMother.CreateMappingReflector(BaseConfiguration.GetTypeDiscoveryService(assembly, assembly)); var actualClassDefinitions = mappingReflector.GetClassDefinitions().ToDictionary(cd => cd.ClassType); var classDefinitionChecker = new ClassDefinitionChecker(); classDefinitionChecker.Check(expectedClassDefinitions.Values, actualClassDefinitions, false, false); var actualRelationDefinitions = mappingReflector.GetRelationDefinitions(actualClassDefinitions).ToDictionary(rd => rd.ID); var relationDefinitionChecker = new RelationDefinitionChecker(); relationDefinitionChecker.Check(expectedRelationDefinitions, actualRelationDefinitions, false); }
public new void SetUp() { base.SetUp(); _mappingReflector = MappingReflectorObjectMother.CreateMappingReflector(TestMappingConfiguration.GetTypeDiscoveryService()); }