public ActionResult Edit(PaymentVoucher model) { var vouchers = new PaymentVoucherRepository(); model.PreparedBy = UserRepository.CurrentUserName; if (ModelState.IsValid) { vouchers.Update(model); return RedirectToAction("Index", new { ProjectID = model.ProjectID }); } else { var v = vouchers.Get(model.ID); model.Project = v.Project; return View("Edit", model); } }
public void PaymentVoucherRepository_Update_ShouldSaveNewEntries() { //Create test voucher var voucher = createTestVoucher(); var vouchers = new PaymentVoucherRepository(); //Create a few entries var entries = new List<PaymentVoucherEntry>(); for (int i = 0; i < 10; i++) { var entry = createTestVoucherEntry(voucher.ID); entries.Add(entry); } //save it voucher.Entries = entries; vouchers.Create(voucher); //query it back out var newFoundVoucher = vouchers.Get(voucher.ID); //Create new entries entries = new List<PaymentVoucherEntry>(); for (int i = 0; i < 10; i++) { var entry = createTestVoucherEntry(newFoundVoucher.ID); entries.Add(entry); } //save it newFoundVoucher.Entries = entries; vouchers.Update(newFoundVoucher); //query it back out. again to check for Updates newFoundVoucher = vouchers.Get(voucher.ID); Assert.IsNotNull(newFoundVoucher); Assert.IsNotNull(newFoundVoucher.Entries); Assert.AreEqual(PaymentVoucher.NumberOfEntriesInAVoucher, newFoundVoucher.Entries.Count); }