Exemple #1
0
        public void GetScriptForThirdStorageProvider()
        {
            var scripts = _extendedScriptGenerator.GetScripts(MappingConfiguration.GetTypeDefinitions())
                          .Single(s => s.StorageProviderDefinition == SchemaGenerationThirdStorageProviderDefinition);

            Assert.That(scripts.SetUpScript, Is.EqualTo(_thirdStorageProviderSetupDBScript));
            Assert.That(scripts.TearDownScript, Is.EqualTo(_thirdStorageProviderTearDownDBScript));
        }
        public void ExecuteScriptForThirdStorageProvider()
        {
            DatabaseAgent.SetConnectionString(SchemaGenerationConnectionString3);

            var scripts = _extendedScriptGenerator.GetScripts(MappingConfiguration.GetTypeDefinitions())
                          .Single(s => s.StorageProviderDefinition == SchemaGenerationThirdStorageProviderDefinition);

            DatabaseAgent.ExecuteBatchString(scripts.TearDownScript + scripts.SetUpScript, false, DatabaseConfiguration.GetReplacementDictionary());
        }
        public void GetTypeDefinitions()
        {
            var classDefinition1 = ClassDefinitionObjectMother.CreateClassDefinition("C1", typeof(RelationEndPointPropertyClass));

            classDefinition1.SetPropertyDefinitions(new PropertyDefinitionCollection());
            classDefinition1.SetDerivedClasses(Enumerable.Empty <ClassDefinition>());

            var classDefinition2 = ClassDefinitionObjectMother.CreateClassDefinition("C2", typeof(RelationEndPointPropertyClass1));

            classDefinition2.SetPropertyDefinitions(new PropertyDefinitionCollection());
            classDefinition2.SetDerivedClasses(Enumerable.Empty <ClassDefinition>());

            StubMockMappingLoader(new[] { classDefinition1, classDefinition2 }, _emptyRelationDefinitions);
            var persistenceModelLoaderStub = CreatePersistenceModelLoaderStub();

            _mockRepository.ReplayAll();
            var configuration = new MappingConfiguration(_mockMappingLoader, persistenceModelLoaderStub);

            Assert.That(configuration.GetTypeDefinitions(), Is.EquivalentTo(new[] { classDefinition1, classDefinition2 }));
        }
        public void SchemaGeneration()
        {
            var scriptGenerator = new ScriptGenerator(
                pd => pd.Factory.CreateSchemaScriptBuilder(pd),
                new RdbmsStorageEntityDefinitionProvider(),
                new ScriptToStringConverter());

            var script = scriptGenerator.GetScripts(MappingConfiguration.GetTypeDefinitions()).Single();

            const string expectedSetUpScriptFragment =
                @"CREATE TABLE [dbo].[ClassWithRelations]
(
  [ID] uniqueidentifier NOT NULL,
  [ClassID] varchar (100) NOT NULL,
  [Timestamp] rowversion NOT NULL,
  [RelationWithoutInheritanceHierarchyID] uniqueidentifier NULL,
  [RelationWithInheritanceHierarchyID] uniqueidentifier NULL,
  [RelationWithInheritanceHierarchyIDClassID] varchar (100) NULL,";

            Assert.That(script.SetUpScript, Is.StringContaining(expectedSetUpScriptFragment));
        }