public void FileNameUsedAsIsWhenRooted() { var expected = Path.Combine(Path.GetTempPath(), _filename); var db = new LocalDbDatabase(_databaseName, expected); Assert.Equal(expected, db.FileName); }
public void FilenameDefaultsToDatabaseName() { var db = new LocalDbDatabase(_databaseName); var expected = Path.Combine(Directory.GetCurrentDirectory(), _databaseName + ".mdf"); Assert.Equal(expected, db.FileName); }
public void FileNameRootedAtCurrentDirectoryIfNotAlreadyRooted() { var db = new LocalDbDatabase(_databaseName, _filename); var expected = Path.Combine(Directory.GetCurrentDirectory(), _filename); Assert.Equal(expected, db.FileName); }
public void ConnectionStringUsesPassedInDatabaseName() { var db = new LocalDbDatabase(_databaseName); var builder = new SqlConnectionStringBuilder(db.ConnectionString); Assert.Equal(_databaseName, builder.InitialCatalog); }
public void FileNameUsesPassedInValue() { var db = new LocalDbDatabase(_databaseName, _filename); var expected = Path.Combine(Directory.GetCurrentDirectory(), _filename); Assert.Equal(expected, db.FileName); }
public void ConnectionStringDefaultsInstanceNameWhenNotProvided() { var db = new LocalDbDatabase(_databaseName); var builder = new SqlConnectionStringBuilder(db.ConnectionString); Assert.Equal($"(localdb)\\{LocalDbDatabase.DefaultInstanceName}", builder.DataSource); }
public void ConnectionStringUsesPassedInInstanceName() { var db = new LocalDbDatabase(_databaseName, _filename, _instanceName); var builder = new SqlConnectionStringBuilder(db.ConnectionString); Assert.Equal($"(localdb)\\{_instanceName}", builder.DataSource); }
public void MasterConnectionStringUsesAllValuesExceptDatabaseName() { var db = new LocalDbDatabase(_databaseName, _filename, _instanceName); var builder = new SqlConnectionStringBuilder(db.MasterConnectionString); Assert.Equal($"(localdb)\\{_instanceName}", builder.DataSource); Assert.Equal("master", builder.InitialCatalog); }
public void CreateDatabaseCreatesAUseableDatabase() { var filename = Path.Combine(Path.GetTempPath(), _filename); _db = new LocalDbDatabase(_databaseName, filename); _db.CreateDatabase(); AssertUsableDatabase(_db.ConnectionString); }
public void DropDatabaseHandlesDatabaseDoesNotExist() { var filename = Path.Combine(Path.GetTempPath(), _filename); _db = new LocalDbDatabase(_databaseName, filename); Assert.False(DatabaseExist(_db.MasterConnectionString, _databaseName)); _db.DropDatabase(); }
public void CreateDatabaseUsesCorrectFilename() { var filename = Path.Combine(Path.GetTempPath(), _filename); _db = new LocalDbDatabase(_databaseName, filename); Assert.False(File.Exists(filename)); _db.CreateDatabase(); Assert.True(File.Exists(filename)); }
public void CreateDatabaseWorksEvenIfFilesAlreadyExist() { var filename = Path.Combine(Path.GetTempPath(), _filename); File.AppendAllText(filename, "foo"); _db = new LocalDbDatabase(_databaseName, filename); _db.CreateDatabase(); AssertUsableDatabase(_db.ConnectionString); }
public void DropDatabaseRemovesFilesFromFileSystem() { var filename = Path.Combine(Path.GetTempPath(), _filename); _db = new LocalDbDatabase(_databaseName, filename); // Make sure database exists. _db.CreateDatabase(); Assert.True(File.Exists(filename)); _db.DropDatabase(); Assert.False(File.Exists(filename)); }
public void DropDatabaseRemovesDatabaseFromLocalDb() { var filename = Path.Combine(Path.GetTempPath(), _filename); _db = new LocalDbDatabase(_databaseName, filename); // Make sure database exists. _db.CreateDatabase(); Assert.True(DatabaseExist(_db.MasterConnectionString, _databaseName)); _db.DropDatabase(); Assert.False(DatabaseExist(_db.MasterConnectionString, _databaseName)); }
public void CreateDatabaseCreatesNewDatabaseIfDatabaseAlreadyExists() { var filename = Path.Combine(Path.GetTempPath(), _filename); _db = new LocalDbDatabase(_databaseName, filename); // Make sure database exists. _db.CreateDatabase(); AssertUsableDatabase(_db.ConnectionString); // Now create it again. _db.CreateDatabase(); AssertUsableDatabase(_db.ConnectionString); }
public void DropDatabaseIgnoresErrorsWhenDataFileDoesNotExist() { var directory = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName()); Directory.CreateDirectory(directory); var filename = Path.Combine(directory, _filename); _db = new LocalDbDatabase(_databaseName, filename); _db.CreateDatabase(); // Let the filesystem let go of the file so it isn't in use. Thread.Sleep(250); Directory.Delete(directory, true); _db = new LocalDbDatabase(_databaseName); _db.CreateDatabase(); _db.DropDatabase(); }