public void ShouldAddNewExpense() { var report = new ExpenseReport(); report.Description = "TestReportDescription"; report.Total = new decimal(97.34); report.AddExpense(report.Description, report.Total); Assert.That(report._expenses.Count, Is.EqualTo(1)); Assert.That(report._expenses.First().Description, Is.EqualTo(report.Description)); }
private static void Main() { var report = new ExpenseReport(); report.AddExpense(new Expense(ExpenseType.Breakfast, 525)); report.AddExpense(new Expense(ExpenseType.Breakfast, 400)); report.AddExpense(new Expense(ExpenseType.Breakfast, 500)); report.AddExpense(new Expense(ExpenseType.Breakfast, 1050)); report.AddExpense(new Expense(ExpenseType.CarRental, 5600)); report.AddExpense(new Expense(ExpenseType.Dinner, 4800)); report.AddExpense(new Expense(ExpenseType.Dinner, 5400)); report.PrintReport(new ConsoleReportPrinter()); }
public void ShouldSaveExpenses() { new DatabaseTester().Clean(); var creator = new Employee("1", "1", "1", "1"); var assignee = new Employee("2", "2", "2", "2"); var report = new ExpenseReport(); report.Submitter = creator; report.Approver = assignee; report.Title = "foo"; report.Description = "bar"; report.ChangeStatus(ExpenseReportStatus.Approved); report.Number = "123"; report.AddExpense("howdy", 123.45m); using (ISession session = DataContext.GetTransactedSession()) { session.SaveOrUpdate(creator); session.SaveOrUpdate(assignee); session.SaveOrUpdate(report); session.Transaction.Commit(); } ExpenseReport rehydratedExpenseReport; using (ISession session2 = DataContext.GetTransactedSession()) { rehydratedExpenseReport = session2.Load <ExpenseReport>(report.Id); } Expense x = report.GetExpenses()[0]; Expense y = rehydratedExpenseReport.GetExpenses()[0]; Assert.That(x.Description, Is.EqualTo(y.Description)); Assert.That(x.Amount, Is.EqualTo(y.Amount)); }