From a98fddbd58b95e0fd0989ebf779e83c10dfba2f5 Mon Sep 17 00:00:00 2001 From: sitereactor Date: Thu, 1 Nov 2012 15:06:35 -0100 Subject: [PATCH] Fixing event subscription which caused a series of unit tests to fail --- .../Migrations/Initial/DatabaseCreation.cs | 69 ------------------- .../Persistence/PetaPocoExtensions.cs | 4 +- .../Services/ContentServiceTests.cs | 2 +- .../TestHelpers/BaseDatabaseFactoryTest.cs | 11 ++- 4 files changed, 8 insertions(+), 78 deletions(-) diff --git a/src/Umbraco.Core/Persistence/Migrations/Initial/DatabaseCreation.cs b/src/Umbraco.Core/Persistence/Migrations/Initial/DatabaseCreation.cs index 6aabc063a4..4108c928ce 100644 --- a/src/Umbraco.Core/Persistence/Migrations/Initial/DatabaseCreation.cs +++ b/src/Umbraco.Core/Persistence/Migrations/Initial/DatabaseCreation.cs @@ -123,75 +123,6 @@ namespace Umbraco.Core.Persistence.Migrations.Initial _database.CreateTable(); _database.CreateTable(); _database.CreateTable(); - - //NOTE Please mind the order of the table creation, as some references requires other tables. - /*using (var transaction = _database.GetTransaction()) - { - _database.CreateTable(); - - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - - _database.CreateTable(); - _database.CreateTable(); - _database.CreateTable(); - - transaction.Complete(); - }*/ } FireAfterCreation(e); diff --git a/src/Umbraco.Core/Persistence/PetaPocoExtensions.cs b/src/Umbraco.Core/Persistence/PetaPocoExtensions.cs index f43b995e1d..e13aa756bc 100644 --- a/src/Umbraco.Core/Persistence/PetaPocoExtensions.cs +++ b/src/Umbraco.Core/Persistence/PetaPocoExtensions.cs @@ -35,7 +35,6 @@ namespace Umbraco.Core.Persistence var foreignSql = SyntaxConfig.SqlSyntaxProvider.ToCreateForeignKeyStatements(tableDefinition); var indexSql = SyntaxConfig.SqlSyntaxProvider.ToCreateIndexStatements(tableDefinition); - /* #if DEBUG Console.WriteLine(createSql); Console.WriteLine(createPrimaryKeySql); @@ -48,7 +47,6 @@ namespace Umbraco.Core.Persistence Console.WriteLine(sql); } #endif - */ var tableExist = db.TableExist(tableName); if (overwrite && tableExist) @@ -127,6 +125,8 @@ namespace Umbraco.Core.Persistence var creation = new DatabaseCreation(db); creation.InitializeDatabaseSchema(); + + NewTable -= PetaPocoExtensions_NewTable; } private static void PetaPocoExtensions_NewTable(string tableName, Database db, TableCreationEventArgs e) diff --git a/src/Umbraco.Tests/Services/ContentServiceTests.cs b/src/Umbraco.Tests/Services/ContentServiceTests.cs index 9cd91b0b03..d00dc64fe5 100644 --- a/src/Umbraco.Tests/Services/ContentServiceTests.cs +++ b/src/Umbraco.Tests/Services/ContentServiceTests.cs @@ -13,7 +13,7 @@ namespace Umbraco.Tests.Services /// This is more of an integration test as it involves multiple layers /// as well as configuration. /// - [TestFixture] + [TestFixture, RequiresSTA] public class ContentServiceTests : BaseDatabaseFactoryTest { [SetUp] diff --git a/src/Umbraco.Tests/TestHelpers/BaseDatabaseFactoryTest.cs b/src/Umbraco.Tests/TestHelpers/BaseDatabaseFactoryTest.cs index d0887dfc5e..bb682a632a 100644 --- a/src/Umbraco.Tests/TestHelpers/BaseDatabaseFactoryTest.cs +++ b/src/Umbraco.Tests/TestHelpers/BaseDatabaseFactoryTest.cs @@ -9,7 +9,6 @@ using Umbraco.Core; using Umbraco.Core.IO; using Umbraco.Core.ObjectResolution; using Umbraco.Core.Persistence; -using Umbraco.Core.Persistence.SqlSyntax; using Umbraco.Tests.Stubs; using Umbraco.Web; using Umbraco.Web.Routing; @@ -33,11 +32,6 @@ namespace Umbraco.Tests.TestHelpers string path = TestHelper.CurrentAssemblyDirectory; AppDomain.CurrentDomain.SetData("DataDirectory", path); - Resolution.Freeze(); - ApplicationContext = new ApplicationContext() { IsReady = true }; - ServiceContext = ServiceContext.Current; - DatabaseContext = new DatabaseContext(); - //we need to clear out all currently created template files var masterPages = new DirectoryInfo(IOHelper.MapPath(SystemDirectories.Masterpages)); masterPages.GetFiles().ForEach(x => x.Delete()); @@ -58,6 +52,11 @@ namespace Umbraco.Tests.TestHelpers var engine = new SqlCeEngine(settings.ConnectionString); engine.CreateDatabase(); + Resolution.Freeze(); + ApplicationContext = new ApplicationContext() { IsReady = true }; + ServiceContext = ServiceContext.Current; + DatabaseContext = new DatabaseContext(); + //Configure the Database and Sql Syntax based on connection string set in config DatabaseContext.Initialize(); //Create the umbraco database and its base data