Exemple #1
0
        protected override void InitializeFixture()
        {
            var context  = new NUnitDBInteractionContext(this);
            var dbExists = (bool)DBUpdateManager.IsDatabaseExists(_DataBaseName)(context);

            if (NeedToRecreateDB || !dbExists)
            {
                if (dbExists)
                {
                    Debug.WriteLine(string.Format("Deleting database '{0}'...", context.DBName));
                    DropTestDataBase();
                }
                Debug.WriteLine(string.Format("Creating database '{0}'...", context.DBName));
                CreateTestDataBase();
            }
            else
            {
                _Connection.Close();
                _Connection.ConnectionString = new SqlConnectionStringBuilder(_Connection.ConnectionString)
                {
                    InitialCatalog = _DataBaseName
                }.ToString();
                _Connection.Open();
            }

            var scriptsToRun = ((KeyValuePair <IList <string>, IList <string> >)DBUpdateManager.GetScriptsToRun(context)).Value;

            Debug.Write("Scripts to run:" + scriptsToRun.ConcatComma());
            foreach (var s in scriptsToRun)
            {
                var updateAction = DBUpdateManager.UpgrateToNextVersion(
                    DBUpdateManager.ExtractScriptVersion(s),
                    File.ReadAllText(Path.Combine(context.DBScriptsPath,
                                                  s + ".sql")), s);
                Debug.WriteLine(string.Format("Running script '{0}'...", s));
                updateAction(context);
            }
            ServerModel.Initialize(Connection.ConnectionString, HttpRuntime.Cache);
        }
Exemple #2
0
 protected void DropTestDataBase()
 {
     DBUpdateManager.DropDataBase(new NUnitDBInteractionContext(this));
 }
Exemple #3
0
 protected void CreateTestDataBase()
 {
     DBUpdateManager.CreateDataBase(new NUnitDBInteractionContext(this));
 }