public void Accounts_CheckExpenseApproved_ViewData_IsListOf_AmountProcessedSupervisor()
 {
     AccountsController controller = new AccountsController(mockEmployeeService, mockReportService, mockEmployee, mockBudgetService);
     MockHttpContext.SetFakeHttpContext(controller);
     var result = controller.CheckExpenseApproved() as ViewResult;
     Assert.IsInstanceOfType(result.ViewData.Model, typeof(List<AmountProcessedSupervisor>));
 }
        public void Accounts_ApproveExpenses_Returns_ActionResult()
        {
            AccountsController controller = new AccountsController(mockEmployeeService, mockReportService, mockEmployee, mockBudgetService);
            MockHttpContext.SetFakeHttpContext(controller);

            var result = controller.ProcessExpenses();

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

            var result = controller.CheckExpenseApproved() as ViewResult;

            Assert.AreEqual(expectedViewName, result.ViewName, "View names do not match, expected view name is {0}", expectedViewName);
        }
        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_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_ProcessExpenses_ViewData_IsProcessExpensesViewModel()
 {
     AccountsController controller = new AccountsController(mockEmployeeService, mockReportService, mockEmployee, mockBudgetService);
     MockHttpContext.SetFakeHttpContext(controller);
     var result = controller.ProcessExpenses() as ViewResult;
     Assert.IsInstanceOfType(result.ViewData.Model, typeof(ProcessExpensesViewModel));
 }
        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>));
        }
        public void Accounts_HttpPost_ViewReports_Returns_ActionResult()
        {
            AccountsController controller = new AccountsController(mockEmployeeService, mockReportService, mockEmployee, mockBudgetService);
            MockHttpContext.SetFakeHttpContext(controller);

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

            Assert.IsInstanceOfType(result, typeof(ActionResult), "Result is not of ActionResult type");
        }