public void ChangeRepresentative_Valid()
        {
            // Arrange
            var expected   = "*****@*****.**";
            var controller = new DepartmentAPIController()
            {
                Request       = new HttpRequestMessage(),
                Configuration = new HttpConfiguration(),
                Context       = context,
            };
            var department = departmentService.FindDepartmentByDepartmentCode("COMM");

            // Act
            IHttpActionResult actionResult = controller.ChangeRepresentative(new ChangeRepresentativeViewModel()
            {
                RepresentativeEmail = "*****@*****.**",
                HeadEmail           = "*****@*****.**",
            });
            var contentResult = actionResult as OkNegotiatedContentResult <MessageViewModel>;

            // Assert
            Assert.IsNotNull(contentResult);
            Assert.IsNotNull(contentResult.Content);
            Assert.AreEqual(contentResult.Content.Message, "Successfully changed");
            Assert.AreEqual(expected, new UserService(context).FindUserByEmail("*****@*****.**").Department.Representative.Email);
        }
        public void ChangeRepresentative_NoRights_BadRequest()
        {
            // Arrange
            var expected   = "User does not have managerial rights";
            var controller = new DepartmentAPIController()
            {
                Request       = new HttpRequestMessage(),
                Configuration = new HttpConfiguration(),
                Context       = context,
            };

            // Act
            IHttpActionResult actionResult = controller.ChangeRepresentative(new ChangeRepresentativeViewModel()
            {
                RepresentativeEmail = "*****@*****.**",
                HeadEmail           = "*****@*****.**",
            });
            BadRequestErrorMessageResult badRequest = actionResult as BadRequestErrorMessageResult;

            // Assert
            Assert.IsInstanceOfType(actionResult, typeof(BadRequestErrorMessageResult));
            Assert.AreEqual(expected, badRequest.Message);
        }