public void DeletePurchaseOrderHeaderTest() { // Get a test user var testUser = GetTestUser(); var testCompany = GetTestCompany(testUser, true); // Create a purchase var model = GetTestPurchaseOrderHeader(testCompany, testUser, 10); // Check that it was written var result = db.FindPurchaseOrderHeader(model.Id); var test = PurchasingService.MapToModel(result); var excludes = new List <string>(); excludes.Add("OrderNumberUrl"); // Because it isn't known yet AreEqual(model, test, excludes); // Now delete it PurchasingService.DeletePurchaseOrderHeader(model.Id); // And check that is was deleted result = db.FindPurchaseOrderHeader(model.Id); Assert.IsTrue(result == null, "Error: A non-NULL value was returned when a NULL value was expected - record delete failed"); }
public void DeletePurchaseOrderDetailTempTest() { // Get a test user var testUser = GetTestUser(); var testCompany = GetTestCompany(testUser, true); var testPurchase = GetTestPurchaseOrderHeader(testCompany, testUser, 1); var pohtModel = PurchasingService.CopyPurchaseOrderToTemp(testCompany, testPurchase, testUser); var model = PurchasingService.FindPurchaseOrderDetailTempsListModel(testCompany.Id, pohtModel.Id, 0, 1, PageSize, ""); // Create a record var newItem = createPurchaseOrderDetailTemp(model); var error = PurchasingService.InsertOrUpdatePurchaseOrderDetailTemp(newItem, testUser, ""); Assert.IsTrue(!error.IsError, error.Message); // Check that it was written var result = db.FindPurchaseOrderDetailTemp(newItem.Id); var test = PurchasingService.MapToModel(result); AreEqual(model, test); // Now delete it PurchasingService.DeletePurchaseOrderDetailTemp(newItem.Id); // And check that is was deleted result = db.FindPurchaseOrderDetailTemp(newItem.Id); Assert.IsTrue(result == null, "Error: A non-NULL value was returned when a NULL value was expected - record delete failed"); }
private PurchaseOrderDetailModel createPurchaseOrderDetail(PurchaseOrderDetailListModel model) { // Create a new item by duplicating a randomly selected item already in the list // This is an easy way, otherwise we have to go looking for suppliers, products, tax codes etc var pod = PurchasingService.MapToModel(model.Items[RandomInt(0, model.Items.Count() - 1)]); pod.Id = 0; pod.LineNumber = 0; pod.OrderQty = RandomInt(); return(pod); }
public void FindPurchaseOrderDetailListModelTest() { var testUser = GetTestUser(); var testCompany = GetTestCompany(testUser, true); var poh = GetTestPurchaseOrderHeader(testCompany, testUser, 1); var model = PurchasingService.FindPurchaseOrderDetailListModel(poh); var dbData = db.FindPurchaseOrderDetails(testCompany.Id, poh.Id); int expected = dbData.Count(), actual = model.Items.Count(); Assert.IsTrue(actual == expected, $"Error: {actual} items were found when {expected} were expected"); // Check that all the items match foreach (var item in model.Items) { var dbItem = dbData.Where(m => m.Id == item.Id).FirstOrDefault(); Assert.IsTrue(dbItem != null, "Error: Model item not found in db item list"); var temp = PurchasingService.MapToModel(dbItem); AreEqual(item, temp); } // Add another item a make sure it is found var newItem = createPurchaseOrderDetail(model); var error = PurchasingService.InsertOrUpdatePurchaseOrderDetail(newItem, testUser, ""); Assert.IsTrue(!error.IsError, $"Error: {error.Message}"); model = PurchasingService.FindPurchaseOrderDetailListModel(poh); var testItem = model.Items.Where(i => i.Id == newItem.Id).FirstOrDefault(); Assert.IsTrue(testItem != null, "Error: A NULL value was returned when a non-NULL value was expected"); // Delete it and make sure it disappears // Detail items are removed from the temp table, not main table, hence there is // no service API to delete them from main db.DeletePurchaseOrderDetail(newItem.Id); model = PurchasingService.FindPurchaseOrderDetailListModel(poh); testItem = model.Items.Where(i => i.Id == newItem.Id).FirstOrDefault(); Assert.IsTrue(testItem == null, "Error: A non-NULL value was returned when a NULL value was expected"); }