using Persistence; using Microsoft.VisualStudio.TestTools.UnitTesting; using System; namespace UnitTests { /// ///This is a abstract test class for all HeuristicLab unit tests /// public abstract class AbstractHeuristicLabTest { /// /// shared database for all test methods /// protected Persistence.DataClassesDataContext db; /// /// constructor creates database connection for all other test methods /// public AbstractHeuristicLabTest() { Persistence.DatabaseUtil.ProductionDatabase = false; db = Persistence.DatabaseUtil.createDataClassesDataContext(); } /// /// creates and opens a local database out of the DataClasses and checks connection state /// [TestInitialize()] public virtual void updateDBConnection() { Assert.IsNotNull(db); DatabaseUtil.createDatabase(db); if (db.Connection.State != System.Data.ConnectionState.Open) { db.Connection.Open(); } Assert.AreEqual(System.Data.ConnectionState.Open, db.Connection.State); } /// /// closes db connection /// [TestCleanup()] public virtual void closeDBConnection() { if (db.Connection.State == System.Data.ConnectionState.Open) { db.Connection.Close(); } Assert.AreEqual(System.Data.ConnectionState.Closed, db.Connection.State); } } }