public override void CanCreateForeignKey() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); var result = _generator.Generate(expression); result.ShouldBe(string.Empty); }
public override void CanCreateForeignKey() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); string sql = generator.Generate(expression); sql.ShouldBe("ALTER TABLE \"TestTable1\" ADD CONSTRAINT \"FK_Test\" FOREIGN KEY (\"TestColumn1\") REFERENCES \"TestTable2\" (\"TestColumn2\")"); }
public override void CanCreateForeignKey() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); string sql = generator.Generate(expression); sql.ShouldBe("ALTER TABLE TestTable1 ADD CONSTRAINT FK_Test FOREIGN KEY (TestColumn1) REFERENCES TestTable2 (TestColumn2)"); }
public override void CanCreateForeignKeyWithDifferentSchemas() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.ForeignTableSchema = "TestSchema"; Assert.Throws <System.ArgumentException>(() => Generator.Generate(expression)); }
public void CanCreateForeignKeyWithDefaultSchema() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); var sql = generator.Generate(expression); sql.ShouldBe( "ALTER TABLE [dbo].[TestTable1] ADD CONSTRAINT [FK_Test] FOREIGN KEY ([TestColumn1]) REFERENCES [dbo].[TestTable2] ([TestColumn2])"); }
public override void CanCreateForeignKeyWithDefaultSchema() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); var result = Generator.Generate(expression); result.ShouldBe("ALTER TABLE \"public\".\"TestTable1\" ADD CONSTRAINT \"FK_TestTable1_TestColumn1_TestTable2_TestColumn2\" FOREIGN KEY (\"TestColumn1\") REFERENCES \"public\".\"TestTable2\" (\"TestColumn2\");"); }
public override void CanCreateForeignKey() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); var sql = _generator.Generate(expression); sql.ShouldBe( "ALTER TABLE `TestTable1` ADD CONSTRAINT `FK_Test` FOREIGN KEY (`TestColumn1`) REFERENCES `TestTable2` (`TestColumn2`)"); }
public override void CanCreateForeignKey() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); var sql = _generator.Generate(expression); sql.ShouldBe( "ALTER TABLE [TestTable1] ADD CONSTRAINT [FK_Test] FOREIGN KEY ([TestColumn1]) REFERENCES [TestTable2] ([TestColumn2])"); }
public override void CanCreateForeignKeyWithDifferentSchemas() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.ForeignTableSchema = "TestSchema"; Assert.Throws <DatabaseOperationNotSupportedException>(() => Generator.Generate(expression)); }
public override void CanCreateForeignKeyWithDefaultSchema() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); var result = Generator.Generate(expression); result.ShouldBe("ALTER TABLE TestTable1 ADD CONSTRAINT FK_TestTable1_TestColumn1_TestTable2_TestColumn2 FOREIGN KEY (TestColumn1) REFERENCES TestTable2 (TestColumn2)"); }
public void CanCreateForeignKeyWithOnUpdateOptions(Rule rule, string output) { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.OnUpdate = rule; var sql = generator.Generate(expression); sql.ShouldBe( string.Format("ALTER TABLE \"public\".\"TestTable1\" ADD CONSTRAINT \"FK_Test\" FOREIGN KEY (\"TestColumn1\") REFERENCES \"public\".\"TestTable2\" (\"TestColumn2\") ON UPDATE {0}", output)); }
public override void CanCreateForeignKeyWithDifferentSchemas() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.ForeignTableSchema = "TestSchema"; var result = Generator.Generate(expression); result.ShouldBe(string.Empty); }
public override void CanCreateForeignKeyWithCustomSchema() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.ForeignTableSchema = "TestSchema"; expression.ForeignKey.PrimaryTableSchema = "TestSchema"; var result = Generator.Generate(expression); result.ShouldBe("ALTER TABLE \"TestTable1\" ADD CONSTRAINT \"FK_TestTable1_TestColumn1_TestTable2_TestColumn2\" " + "FOREIGN KEY (\"TestColumn1\") REFERENCES \"TestTable2\" (\"TestColumn2\");"); }
public void CanCreateForeignKeyWithOnDeleteOptions(Rule rule, string output) { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.OnDelete = rule; var sql = _generator.Generate(expression); sql.ShouldBe( string.Format("ALTER TABLE [TestTable1] ADD CONSTRAINT [FK_Test] FOREIGN KEY ([TestColumn1]) REFERENCES [TestTable2] ([TestColumn2]) ON DELETE {0}", output)); }
public override void CanCreateForeignKeyWithDifferentSchemas() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.ForeignTableSchema = "TestSchema"; var result = Generator.Generate(expression); result.ShouldBe("ALTER TABLE [TestSchema].[TestTable1] ADD CONSTRAINT [FK_TestTable1_TestColumn1_TestTable2_TestColumn2] FOREIGN KEY ([TestColumn1]) REFERENCES [dbo].[TestTable2] ([TestColumn2])"); }
public override void CanCreateForeignKeyWithDifferentSchemas() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.ForeignTableSchema = "TestSchema"; var result = Generator.Generate(expression); result.ShouldBe("ALTER TABLE `TestTable1` ADD CONSTRAINT `FK_TestTable1_TestColumn1_TestTable2_TestColumn2` FOREIGN KEY (`TestColumn1`) REFERENCES `TestTable2` (`TestColumn2`)"); }
public void CanCreateForeignKeyWithOnUpdateOptions(Rule rule, string output) { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.OnUpdate = rule; var sql = _generator.Generate(expression); sql.ShouldBe( string.Format("ALTER TABLE `TestTable1` ADD CONSTRAINT `FK_Test` FOREIGN KEY (`TestColumn1`) REFERENCES `TestTable2` (`TestColumn2`) ON UPDATE {0}", output)); }
public void CanCreateForeignKeyWithOnDeleteAndOnUpdateOptions() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.OnDelete = Rule.Cascade; expression.ForeignKey.OnUpdate = Rule.SetDefault; var sql = _generator.Generate(expression); sql.ShouldBe( "ALTER TABLE [TestTable1] ADD CONSTRAINT [FK_Test] FOREIGN KEY ([TestColumn1]) REFERENCES [TestTable2] ([TestColumn2]) ON DELETE CASCADE ON UPDATE SET DEFAULT"); }
public void CanCreateForeignKeyWithCustomSchema() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.ForeignTableSchema = "TestSchema"; expression.ForeignKey.PrimaryTableSchema = "TestSchema"; var sql = generator.Generate(expression); sql.ShouldBe( "ALTER TABLE [TestSchema].[TestTable1] ADD CONSTRAINT [FK_Test] FOREIGN KEY ([TestColumn1]) REFERENCES [TestSchema].[TestTable2] ([TestColumn2])"); }
public void CanCreateForeignKeyWithOnDeleteAndOnUpdateOptions() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.OnDelete = Rule.Cascade; expression.ForeignKey.OnUpdate = Rule.SetDefault; var sql = generator.Generate(expression); sql.ShouldBe( "ALTER TABLE \"public\".\"TestTable1\" ADD CONSTRAINT \"FK_Test\" FOREIGN KEY (\"TestColumn1\") REFERENCES \"public\".\"TestTable2\" (\"TestColumn2\") ON DELETE CASCADE ON UPDATE SET DEFAULT"); }
public void CanCreateForeignKeyWithMultipleColumns() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.PrimaryColumns = new[] { "Column1", "Column2" }; expression.ForeignKey.ForeignColumns = new[] { "Column3", "Column4" }; string sql = generator.Generate(expression); sql.ShouldBe("ALTER TABLE \"public\".\"TestTable1\" ADD CONSTRAINT \"FK_Test\" FOREIGN KEY (\"Column3\",\"Column4\") REFERENCES \"public\".\"TestTable2\" (\"Column1\",\"Column2\")"); }
public override void CanCreateForeignKeyWithDifferentSchemas() { Assert.Ignore("HANA does not support schema like us know schema in hana is a database name"); var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.ForeignTableSchema = "TestSchema"; var result = Generator.Generate(expression); result.ShouldBe("ALTER TABLE \"TestTable1\" ADD CONSTRAINT \"FK_TestTable1_TestColumn1_TestTable2_TestColumn2\" " + "FOREIGN KEY (\"TestColumn1\") REFERENCES \"TestTable2\" (\"TestColumn2\")"); }
public void CanCreateForeignKeyWithOnDeleteOptions(Rule rule, string output) { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); expression.ForeignKey.OnDelete = rule; var sql = generator.Generate(expression); sql.ShouldBe( string.Format("ALTER TABLE TestTable1 ADD CONSTRAINT FK_Test FOREIGN KEY (TestColumn1) REFERENCES TestTable2 (TestColumn2) ON DELETE {0}", output)); sql = quotedIdentiferGenerator.Generate(expression); sql.ShouldBe( string.Format("ALTER TABLE \"TestTable1\" ADD CONSTRAINT \"FK_Test\" FOREIGN KEY (\"TestColumn1\") REFERENCES \"TestTable2\" (\"TestColumn2\") ON DELETE {0}", output)); }
public void CanCreateForeignKeyInStrictMode() { _generator.compatabilityMode = Runner.CompatabilityMode.STRICT; Assert.Throws <DatabaseOperationNotSupportedException>(() => _generator.Generate(GeneratorTestHelper.GetCreateForeignKeyExpression())); }
public override void CanCreateForeignKeyWithDefaultSchema() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); Assert.Throws <System.ArgumentException>(() => Generator.Generate(expression)); }
public override void CanCreateForeignKeyWithDefaultSchema() { var expression = GeneratorTestHelper.GetCreateForeignKeyExpression(); Assert.Throws <DatabaseOperationNotSupportedException>(() => Generator.Generate(expression)); }