public void IdentityCanInsert() { using (var table = new FirebirdTestTable(Processor, null, "bogus int")) { Processor.Process(new CreateColumnExpression { TableName = table.Name, Column = { Name = "id", IsIdentity = true, Type = DbType.Int64, IsPrimaryKey = true } }); var insert = new InsertDataExpression { TableName = table.Name }; var item = new Model.InsertionDataDefinition(); item.Add(new System.Collections.Generic.KeyValuePair <string, object>("BOGUS", 0)); insert.Rows.Add(item); Processor.Process(insert); using (DataSet ds = Processor.ReadTableData(String.Empty, table.Name)) { ds.Tables.Count.ShouldBe(1); ds.Tables[0].Rows.Count.ShouldBe(1); ds.Tables[0].Rows[0]["BOGUS"].ShouldBe(0); ds.Tables[0].Rows[0]["id"].ShouldBe(1); } } }
public void IdentityCanInsertMultiple() { using (var table = new FirebirdTestTable(Processor, null, "bogus int")) { Processor.Process(new CreateColumnExpression { TableName = table.Name, Column = { Name = "id", IsIdentity = true, Type = DbType.Int64, IsPrimaryKey = true } }); var insert = new InsertDataExpression { TableName = table.Name }; var item = new Model.InsertionDataDefinition(); item.Add(new System.Collections.Generic.KeyValuePair<string, object>("BOGUS", 0)); insert.Rows.Add(item); //Process 5 times = insert 5 times Processor.Process(insert); Processor.Process(insert); Processor.Process(insert); Processor.Process(insert); Processor.Process(insert); using (DataSet ds = ((DataSetContainer)Processor.ReadTableData(String.Empty, table.Name)).DataSet) { ds.Tables.Count.ShouldBe(1); ds.Tables[0].Rows.Count.ShouldBe(5); ds.Tables[0].Rows[0]["BOGUS"].ShouldBe(0); ds.Tables[0].Rows[0]["id"].ShouldBe(1); ds.Tables[0].Rows[1]["id"].ShouldBe(2); ds.Tables[0].Rows[2]["id"].ShouldBe(3); ds.Tables[0].Rows[3]["id"].ShouldBe(4); ds.Tables[0].Rows[4]["id"].ShouldBe(5); } } }