public void RemoveKindOfGoods() { var kindOfGoods = new KindOfGoods { UId = Guid.NewGuid().ToString(), Name = "kind 01", Customized = true }; var receiptDb = new ReceiptDb(); receiptDb.Save(kindOfGoods); receiptDb.RemoveKindOfGoods(kindOfGoods.UId); Assert.IsFalse(receiptDb.GetAllKindsOfGoods().Any(k => k.UId.Equals(kindOfGoods.UId))); Assert.IsFalse(new ReceiptDb().GetAllKindsOfGoods().Any(k => k.UId.Equals(kindOfGoods.UId))); }
public void AddKindOfGoods() { // todo. test case run failed. var kindsOfGoods = new[] { new KindOfGoods { UId = Guid.NewGuid().ToString(), Name = "added kind 01", Customized = true }, new KindOfGoods { UId = Guid.NewGuid().ToString(), Name = "added kind 02", Customized = true } }; var receiptDb = new ReceiptDb(); try { receiptDb.GetAllKindsOfGoods().Where(k => k.Name.StartsWith("added kind ")).Select(k => k.UId).ToList().ForEach(u => receiptDb.RemoveKindOfGoods(u)); } catch { } // add one receiptDb.Save(kindsOfGoods[0]); Assert.AreEqual(1, receiptDb.GetAllKindsOfGoods().Where(k => k.Name.StartsWith("added kind ")).Count()); Assert.AreEqual(1, new ReceiptDb().GetAllKindsOfGoods().Where(k => k.Name.StartsWith("added kind ")).Count()); var actual = receiptDb.GetAllKindsOfGoods().First(k => k.UId.Equals(kindsOfGoods[0].UId)); this.AssertAreEqual(kindsOfGoods[0], actual); actual = new ReceiptDb().GetAllKindsOfGoods().First(k => k.UId.Equals(kindsOfGoods[0].UId)); this.AssertAreEqual(kindsOfGoods[0], actual); // add another receiptDb.Save(kindsOfGoods[1]); Assert.AreEqual(2, receiptDb.GetAllKindsOfGoods().Where(k => k.Name.StartsWith("added kind ")).Count()); Assert.AreEqual(2, new ReceiptDb().GetAllKindsOfGoods().Where(k => k.Name.StartsWith("added kind ")).Count()); actual = receiptDb.GetAllKindsOfGoods().First(k => k.UId.Equals(kindsOfGoods[1].UId)); this.AssertAreEqual(kindsOfGoods[1], actual); actual = new ReceiptDb().GetAllKindsOfGoods().First(k => k.UId.Equals(kindsOfGoods[1].UId)); this.AssertAreEqual(kindsOfGoods[1], actual); }
public void VerifyThatShouldThrowWhileRemovingAnInUsedKind() { var kindOfGoods = new KindOfGoods { UId = Guid.NewGuid().ToString(), Name = "kind 01", Customized = true }; var receiptDb = new ReceiptDb(); receiptDb.Save(kindOfGoods); var receipt = this.GetTestReceipts()[0]; receipt.KindOfGoods = kindOfGoods; receiptDb.Save(receipt); this.AssertHasException <InvalidOperationException>(String.Format("The kind [{0}] is currently in used, cannot be removed", kindOfGoods.UId), () => receiptDb.RemoveKindOfGoods(kindOfGoods.UId)); }