public void LogonTest()
        {
            // Arrange
            IList<LogonCredentials> credentials = new List<LogonCredentials>()
            {
                new LogonCredentials { EmployeeID = 1, Username = "******", Password = "******" }
            };

            IList<Employee> employees = new List<Employee>()
            {
                new Employee { ID = 1, FirstName = "Employee", LastName = "Test" }
            };

            ILogonRepository logonRepository = new LogonRepository(credentials);
            IEmployeeRepository employeeRepository = new EmployeeRepository(employees);

            ILogonService logonService = new LogonService(logonRepository, employeeRepository);

            LogonRequest request = new LogonRequest { Username = "******", Password = "******" };

            // Act
            LogonResponse response = logonService.Logon(request);

            // Assert
            Assert.IsNotNull(response.Employee);
            Assert.IsTrue(response.Success);
            Assert.AreEqual(1, response.Employee.ID);
        }
        public LogonResponse Logon(LogonRequest request)
        {
            LogonCredentials credentials = logonRepository.GetLogonCredentials(request.Username, request.Password);

            LogonResponse response = new LogonResponse();
            response.Employee = employeeRepository.GetEmployeeByID(credentials.EmployeeID);

            if (response.Employee != null)
            {
                response.Success = true;
            }
            else
            {
                response.Success = false;
                response.Message = "Cannot find that employee";
            }

            return response;
        }