public void TestCreateNewBill() { foreach (bool paid in new List <bool> { true, false }) { MockBillReaderWriter billWriter = new MockBillReaderWriter(); BillDetailViewModel billDetail = new BillDetailViewModel(billWriter, null, new NavigatorViewModel()); billDetail.Amount = 1; billDetail.BillName = "Test name"; billDetail.BillType = BillType.Food; billDetail.Description = "Test description"; billDetail.DueDate = new DateTime(1990, 1, 1); billDetail.IsAlreadyPaid = paid; Assert.IsTrue(billDetail.OnRecordButtonClick.CanExecute(null)); billDetail.OnRecordButtonClick.Execute(null); BillInfo actualBilLSaved = billWriter.BillSaved; Assert.AreEqual(actualBilLSaved.Amount, 1); Assert.AreEqual(actualBilLSaved.BillName, "Test name"); Assert.AreEqual(actualBilLSaved.Type, BillType.Food); Assert.AreEqual(actualBilLSaved.Description, "Test description"); Assert.AreEqual(actualBilLSaved.DueDate, new DateTime(1990, 1, 1)); Assert.AreEqual(actualBilLSaved.IsAlreadyPaid, paid); } }
public void TestBillDetailCanLoadCorrectWhenClickingOnBillOnBillSearch() { NavigatorViewModel nav = new NavigatorViewModel(); nav.ViewNameToDisplay = Constants.BillSearchView; MockBillReaderWriter billReaderWriter = new MockBillReaderWriter(); BillSearchViewModel bs = new BillSearchViewModel(billReaderWriter, nav); var allBills = billReaderWriter.GetAllBills(); bs.SelectedBill = allBills[1]; bs.OnGridDataRowClicked.Execute(null); Assert.AreEqual(nav.ViewNameToDisplay, Constants.BillDetailView); Assert.AreEqual(nav.BillIdSelected, 2); Assert.IsTrue(bs.SelectedBill.SameData(new BillInfo())); }
public void TestBillDetailStaysSameOnSaveFailure() { MockBillReaderWriter readerWriter = new MockBillReaderWriter( () => new List <BillInfo>(), (BillInfo _, out string err) => { err = ""; return(false); }); NavigatorViewModel nav = new NavigatorViewModel(); nav.ViewNameToDisplay = Constants.BillDetailView; BillDetailViewModel db = new BillDetailViewModel(readerWriter, null, nav); db.OnRecordButtonClick.Execute(null); Assert.AreEqual(nav.ViewNameToDisplay, Constants.BillDetailView); }
public void TestBillDetailLoadWillSetBillInfo() { MockBillReaderWriter readerWriter = new MockBillReaderWriter(); IList <BillInfo> allBills = readerWriter.GetAllBills(); NavigatorViewModel nav = new NavigatorViewModel(); nav.BillIdSelected = 2; BillDetailViewModel billDetail = new BillDetailViewModel(readerWriter, null, nav); BillInfo billInBillDetailModel = new BillInfo() { Amount = billDetail.Amount, BillName = billDetail.BillName, Description = billDetail.Description, DueDate = billDetail.DueDate, Type = billDetail.BillType, IsAlreadyPaid = billDetail.IsAlreadyPaid, Attachement = billDetail.Attachement }; Assert.IsTrue(billInBillDetailModel.SameData(allBills[1])); }