public override ISet <Item> CreateSource() { var databaseDriver = new SqlDatabaseDriver(); var table = TableBuilder.WithName("Items").WithKeyColumnsFromTypeProperties <Item>().Build(); _fixture.SqlConnectionFixture.DropTable(table.Schema, table.Name); var mapper = new TypeMapper <Item>(table); return(new SqlSet <Item>(databaseDriver, _fixture.SqlConnectionFixture.ConnectionString, table, mapper)); }
public override IPropertyMap <Guid, Item> CreateSource() { var databaseDriver = new SqlDatabaseDriver(); var table = TableBuilder .WithName("GuidItems") .WithColumnsFromTypeProperties <Item>() .WithKeyColumnFromType <Guid>("Key") .Build(); _fixture.SqlConnectionFixture.DropTable(table.Schema, table.Name); var keyMapper = new ValueMapper <Guid>("Key"); var valueMapper = new TypeMapper <Item>(table); return(new SqlMap <Guid, Item>(databaseDriver, _fixture.SqlConnectionFixture.ConnectionString, table, keyMapper, valueMapper)); }
public override IMap <Guid, ISet <Item> > CreateSource() { var databaseDriver = new SqlDatabaseDriver(); var columns = typeof(Item) .GetProperties(BindingFlags.Instance | BindingFlags.Public) .ToSqlColumns(); columns.Add("Key", new SqlType(DbType.Guid)); var table = new Table("GuidItems", new[] { "Key", nameof(Item.GuidProperty) }, columns); _fixture.SqlConnectionFixture.DropTable(table.Schema, table.Name); var keyMapper = new ValueMapper <Guid>("Key"); var valueMapper = new TypeMapper <Item>(table); return(new SqlSetMap <Guid, Item>(databaseDriver, _fixture.SqlConnectionFixture.ConnectionString, table, keyMapper, valueMapper)); }
public SqlServerFixture() { // Note: You should create the Localdb instance if it doesn't exists // Go to the command prompt and run: sqllocaldb create "MSSQLLocalDB" Connection = new SqlConnection(ConnectionString.Replace(DatabaseName, "master")); Connection.Open(); using (var dropDatabaseCommand = Connection.CreateCommand()) { dropDatabaseCommand.CommandText = $"IF NOT EXISTS(SELECT * FROM sys.databases WHERE Name = '{DatabaseName}') CREATE DATABASE {DatabaseName}"; dropDatabaseCommand.ExecuteNonQuery(); } using (var useDatabaseCommand = Connection.CreateCommand()) { useDatabaseCommand.CommandText = $"USE {DatabaseName}"; useDatabaseCommand.ExecuteNonQuery(); } DatabaseDriver = new SqlDatabaseDriver(); }
public FakeDatabaseDriver() { _sqlDatabaseDriver = new SqlDatabaseDriver(); }