diff --git a/src/Umbraco.Core/Persistence/Migrations/Syntax/Delete/Expressions/DeleteForeignKeyExpression.cs b/src/Umbraco.Core/Persistence/Migrations/Syntax/Delete/Expressions/DeleteForeignKeyExpression.cs index 75eb5d1d1f..76a6a35db3 100644 --- a/src/Umbraco.Core/Persistence/Migrations/Syntax/Delete/Expressions/DeleteForeignKeyExpression.cs +++ b/src/Umbraco.Core/Persistence/Migrations/Syntax/Delete/Expressions/DeleteForeignKeyExpression.cs @@ -1,4 +1,5 @@ using System; +using System.Linq; using Umbraco.Core.Persistence.DatabaseModelDefinitions; using Umbraco.Core.Persistence.SqlSyntax; @@ -41,7 +42,7 @@ namespace Umbraco.Core.Persistence.Migrations.Syntax.Delete.Expressions if (string.IsNullOrEmpty(ForeignKey.Name)) { - ForeignKey.Name = string.Format("FK_{0}_{1}", ForeignKey.ForeignTable, ForeignKey.PrimaryTable); + ForeignKey.Name = string.Format("FK_{0}_{1}_{2}", ForeignKey.ForeignTable, ForeignKey.PrimaryTable, ForeignKey.PrimaryColumns.First()); } return string.Format(SqlSyntaxContext.SqlSyntaxProvider.DeleteConstraint, diff --git a/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs b/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs index 7362cec9e7..1b18b77e51 100644 --- a/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs +++ b/src/Umbraco.Tests/Migrations/AlterMigrationTests.cs @@ -17,7 +17,6 @@ namespace Umbraco.Tests.Migrations SqlSyntaxContext.SqlSyntaxProvider = SqlCeSyntax.Provider; } - [NUnit.Framework.Ignore("this doesn't actually test anything")] [Test] public void Drop_Foreign_Key() { @@ -29,15 +28,9 @@ namespace Umbraco.Tests.Migrations stub.GetUpExpressions(context); // Assert - Assert.That(context.Expressions.Any(), Is.True); + Assert.That(context.Expressions.Count(), Is.EqualTo(1)); + Assert.That(context.Expressions.Single().ToString(), Is.EqualTo("ALTER TABLE [umbracoUser2app] DROP CONSTRAINT [FK_umbracoUser2app_umbracoUser_id]")); - //Console output - Console.WriteLine("Number of expressions in context: {0}", context.Expressions.Count); - Console.WriteLine(""); - foreach (var expression in context.Expressions) - { - Console.WriteLine(expression.ToString()); - } } [NUnit.Framework.Ignore("this doesn't actually test anything")] diff --git a/src/Umbraco.Tests/Migrations/Stubs/AlterUserTableMigrationStub.cs b/src/Umbraco.Tests/Migrations/Stubs/AlterUserTableMigrationStub.cs index 7312d2cc7e..a9a7385530 100644 --- a/src/Umbraco.Tests/Migrations/Stubs/AlterUserTableMigrationStub.cs +++ b/src/Umbraco.Tests/Migrations/Stubs/AlterUserTableMigrationStub.cs @@ -19,12 +19,12 @@ namespace Umbraco.Tests.Migrations.Stubs } - [MigrationAttribute("6.0.0", 0, "Test")] + [MigrationAttribute("1.0.0", 0, "Test")] public class DropForeignKeyMigrationStub : MigrationBase { public override void Up() { - Delete.ForeignKey().FromTable("umbracoUser2app").ForeignColumn("app").ToTable("umbracoApp").PrimaryColumn("appAlias"); + Delete.ForeignKey().FromTable("umbracoUser2app").ForeignColumn("user").ToTable("umbracoUser").PrimaryColumn("id"); } public override void Down()