コード例 #1
0
        /// <summary>
        ///
        /// </summary>
        /// <returns>The connection string for the newly created database</returns>
        public static string CreateTestDatabase()
        {
            if (DatabaseTestHelpers.IsLocalDBAvailable() == false)
            {
                throw new InvalidOperationException("Can't create a new test database when localDb is not available");
            }

            string dbPrefix = Guid.NewGuid().ToString().ToLowerInvariant().Substring(0, 30);

            string connString = @"Data Source=(LocalDB)\v11.0;Initial Catalog=" + dbPrefix + @";Integrated Security=True;Connect Timeout=30";

            Console.WriteLine("Using local database: " + connString);

            Stopwatch timer = new Stopwatch();

            timer.Start();

            var migrate = new System.Data.Entity.Migrations.DbMigrator(new TestConfiguration(connString));

            migrate.Update();
            //var dacService = new DacServices(connString);
            //var dacPackage = DacPackage.Load(System.IO.Directory.GetCurrentDirectory() + "\\Client.Database.dacpac");
            //dacService.Deploy(dacPackage, dbPrefix, true, new DacDeployOptions { CreateNewDatabase = true });

            timer.Stop();
            Console.WriteLine("Database setup took {0}s", timer.Elapsed.TotalSeconds);

            return(connString);
        }
コード例 #2
0
 public void Teardown()
 {
     DatabaseTestHelpers.DeleteDatabase(this.databaseLocation);
 }
コード例 #3
0
 public void Setup()
 {
     this.databaseLocation = DatabaseTestHelpers.CreateTestDatabase();
 }