I have several methods that are used to initialize and clean up the database that I use with my tests, but my methods with the AssemblyInitialize and AssemblyCleanup attributes do not start.
Any ideas?
[TestInitialize] public void Init() { LoadData(); } [AssemblyInitialize] public void AssemblyInit() { } public void LoadData(string testDataFileName = "TestData.xml") { connectionString = ConfigurationManager.ConnectionStrings["NDbUnit"].ConnectionString; mySqlDatabase = new NDbUnit.Core.SqlClient.SqlDbUnitTest(connectionString); mySqlDatabase.ReadXmlSchema("DataSet.xsd"); mySqlDatabase.ReadXml(testDataFileName); mySqlDatabase.PerformDbOperation(NDbUnit.Core.DbOperationFlag.CleanInsertIdentity); dataSet = mySqlDatabase.CopyDataSet(); } [AssemblyCleanup] public void RemoveDatabases() { List<string> databasesToDelete = new List<string>(); ServerConnection serverConnection = new ServerConnection(new SqlConnection(connectionString)); Server server = new Server(serverConnection); foreach (Database db in server.Databases) { if (db.Name.ToLower().Contains(testDatabaseIdentifier)) { databasesToDelete.Add(db.Name); } } databasesToDelete.ForEach(x => { Database db = new Database(server, x); db.Refresh(); db.Drop(); }); } [TestCleanup] public void CleanUpData() { mySqlDatabase.PerformDbOperation(NDbUnit.Core.DbOperationFlag.DeleteAll); }
khr055
source share