public async void Add_POST_Unsuccessful() { // arrange AddUserViewModel model = MockObjects.GetAddUserViewModel(); var identityError = MockObjects.GetIdentityErrors(); var userManager = MockObjects.GetUserManagerMock <User>(); userManager.Setup(u => u.CreateAsync(It.IsAny <User>(), It.IsAny <string>())).ReturnsAsync(IdentityResult.Failed(identityError)); var roleManager = MockObjects.GetRoleManagerMock <IdentityRole>().Object; ITempDataDictionary tempData = MockObjects.GetMockTempData(); var controller = new UserController(userManager.Object, roleManager) { TempData = tempData }; // act var result = await controller.Add(model); // assert // We should observe an error added to the ModelState Assert.NotEqual(0, controller.ModelState.ErrorCount); Assert.IsType <ViewResult>(result); }
public async void Add_POST_Successful() { // arrange string expectedMessage = "The user was added successfully"; AddUserViewModel model = MockObjects.GetAddUserViewModel(); var userManager = MockObjects.GetUserManagerMock <User>(); userManager.Setup(u => u.CreateAsync(It.IsAny <User>(), It.IsAny <string>())).ReturnsAsync(IdentityResult.Success); var roleManager = MockObjects.GetRoleManagerMock <IdentityRole>().Object; ITempDataDictionary tempData = MockObjects.GetMockTempData(); var controller = new UserController(userManager.Object, roleManager) { TempData = tempData }; // act var result = await controller.Add(model); string actualMessage = controller.TempData["message"].ToString(); // assert Assert.Equal(expectedMessage, actualMessage); Assert.IsType <RedirectToActionResult>(result); }