public void Delete() { var db = ConnectTo.Sql2005(Config.TestDBConnectionString); var person = new Person(); person.FirstName = "bob"; person.LastName = "morris"; var key = db.Insert("Person", person._AsDictionary()); db.Delete("Person", key); Assert.AreEqual(0, db.RawRead("Person", key).Count()); }
public void Insert() { var db = ConnectTo.Sql2005(Config.TestDBConnectionString); var contents = db.ReadAll<Person>(); var person = new Person(); person.FirstName = "test"; person.LastName = "person"; db.Insert("Person", person._AsDictionary()); Assert.AreEqual(contents.Count() + 1, db.ReadAll<Person>().Count()); }
public void Update() { var db = ConnectTo.Sql2005(Config.TestDBConnectionString); var person = new Person(); person.FirstName = "test"; person.LastName = "person"; var keys = db.Insert("Person", person._AsDictionary()); //Retrieve the saved person so we can verify it saved with our intended data var retrieved = db.RawRead("Person", keys).First(); Assert.AreEqual(person.FirstName, retrieved["FirstName"]); Assert.AreEqual(person.LastName, retrieved["LastName"]); person.FirstName = "newFirst"; person.LastName = "newLastName"; //Update and retrieve the person again so we can verify that the Update worked db.Update("Person", person._AsDictionary(), keys); retrieved = db.RawRead("Person", keys).First(); Assert.AreEqual(person.FirstName, retrieved["FirstName"]); Assert.AreEqual(person.LastName, retrieved["LastName"]); }
public void TransactionSuccessful() { var db = ConnectTo.Sql2005(Config.TestDBConnectionString); var transaction = db.BeginTransaction(); var person = new Person(); person.FirstName = "test"; person.LastName = "person"; var keys = transaction.Insert("Person", person._AsDictionary()); transaction.Commit(); Assert.AreEqual(1, db.RawRead("Person", keys).Count()); }
public void TransactionAbandoned() { var keys = new Dictionary<string, object>(); var db = ConnectTo.Sql2005(Config.TestDBConnectionString); using(var transaction = db.BeginTransaction()) { var person = new Person(); person.FirstName = "test"; person.LastName = "person"; keys = transaction.Insert("Person", person._AsDictionary()); } var conn = ConnectTo.Sql2005(Config.TestDBConnectionString); Assert.AreEqual(0, conn.RawRead("Person", keys).Count()); }
public void TransactionRollback() { var db = ConnectTo.Sql2005(connString); var transaction = db.BeginTransaction(); var person = new Person(); person.FirstName = "test"; person.LastName = "person"; var keys = transaction.Insert("Person", person._AsDictionary()); transaction.Rollback(); Assert.AreEqual(0, db.RawRead("Person", keys).Count()); }