public void Accounts_HttpPost_ViewReports_CheckDepartmentIdOfReportAndEmployee_AreEqual()
        {
            Employee mockEmployee = mockEmployeeService.GetEmployee(1);
            AccountsController controller = new AccountsController(mockEmployeeService, mockReportService, mockEmployee, mockBudgetService);
            MockHttpContext.SetFakeHttpContext(controller);

            var result = controller.ViewReports(ReportStatus.ApprovedBySupervisor.ToString()) as ViewResult;
            var ExpenseReports = (List<ExpenseReport>)result.Model;
            foreach (var report in ExpenseReports)
            {
                Assert.AreEqual(mockEmployee.Department.DepartmentId, report.ExpenseToDept);
            }
        }
        public void Accounts_ViewReports_Returns_ActionResult()
        {
            AccountsController controller = new AccountsController(mockEmployeeService, mockReportService, mockEmployee, mockBudgetService);
            MockHttpContext.SetFakeHttpContext(controller);

            var result = controller.ViewReports();

            Assert.IsInstanceOfType(result, typeof(ActionResult), "Result is not of ActionResult type");
        }
        public void Accounts_ViewReports_Returns_View_ViewReports()
        {
            const string expectedViewName = "ViewReports";
            AccountsController controller = new AccountsController(mockEmployeeService, mockReportService, mockEmployee, mockBudgetService);
            MockHttpContext.SetFakeHttpContext(controller);

            var result = controller.ViewReports(ReportStatus.ApprovedByAccounts.ToString()) as ViewResult;

            Assert.AreEqual(expectedViewName, result.ViewName, "View names do not match, expected view name is{0}", expectedViewName);
        }
        public void Accounts_HttpPost_ViewReports_ViewData_IsListOfExpenseReports()
        {
            AccountsController controller = new AccountsController(mockEmployeeService, mockReportService, mockEmployee, mockBudgetService);
            MockHttpContext.SetFakeHttpContext(controller);

            var result = controller.ViewReports(ReportStatus.ApprovedBySupervisor.ToString()) as ViewResult;

            Assert.IsInstanceOfType(result.ViewData.Model, typeof(List<ExpenseReport>));
        }