public async Task Given_Valid_OrganisationService_And_OrganisationName_And_UserName_When_Call_GetUserAsync_ShouldReturns_OkObjectResult_And_UserInstance(string organisationName, string userName) { var moqService = new Mock <IUserService>(); moqService .Setup(t => t.GetByUsernameAsync(It.IsAny <string>(), It.IsAny <string>())) .ReturnsAsync(new DataContracts.User { Username = userName }) .Verifiable(); var controller = new WebAPI.Controllers.UserController(); var result = await controller.GetUserAsync(organisationName, userName, moqService.Object); moqService.Verify(); Assert.IsType <OkObjectResult>(result); var okObjectResult = (OkObjectResult)result; Assert.NotNull(okObjectResult); Assert.NotNull(okObjectResult.Value); var resultOrganisation = (DataContracts.User)okObjectResult.Value; Assert.NotNull(resultOrganisation); Assert.Equal(resultOrganisation.Username, userName); }
public async Task Given_Invalid_OrganisationName_Or_UserName_When_Call_DeleteUserAsync_ShouldReturns_BadRequest(string organisationName, string userName) { var controller = new WebAPI.Controllers.UserController(); var result = await controller.DeleteUserAsync(organisationName, userName, null); Assert.IsType <BadRequestObjectResult>(result); }
public void TryGet1Recover() { var testUserController = new WebAPI.Controllers.UserController(); var userFromController = testUserController.Get(1); Assert.AreEqual(userFromController.Id, 1); }
public void TryGetExist() { var testUserController = new WebAPI.Controllers.UserController(); var userFromController = testUserController.Get(); Assert.IsNotNull(userFromController); }
public async Task Given_UserName_And_Instance_UserName_Is_Different_When_Call_UpdateUserAsync_ShouldReturns_BadRequest(string organisationName, string userName, string instanceUserName) { var controller = new WebAPI.Controllers.UserController(); var result = await controller.UpdateUserAsync(organisationName, userName, new DataContracts.User { Username = instanceUserName }, null); Assert.IsType <BadRequestObjectResult>(result); }
public void TryCreate() { var testUserController = new WebAPI.Controllers.UserController(); var name = Guid.NewGuid().ToString(); var userFromController = testUserController.Post(new User { Name = name, Birthdate = DateTime.Now }); Assert.AreEqual(userFromController.Name, name); }
public async Task Given_Invalid_UserService_When_Call_AddUserAsync_ShouldReturns_InternalServerError(string organisationName, string userName) { var controller = new WebAPI.Controllers.UserController(); var result = await controller.AddUserAsync(organisationName, new DataContracts.User { Username = userName }, null); Assert.IsType <StatusCodeResult>(result); var statusCodeResult = (StatusCodeResult)result; Assert.NotNull(statusCodeResult); Assert.Equal((int)HttpStatusCode.InternalServerError, statusCodeResult.StatusCode); }
public void TryDelete() { var testUserController = new WebAPI.Controllers.UserController(); int lastUserId = testUserController.Get().Last().Id; var userFromController = testUserController.Delete(lastUserId); Assert.AreEqual(userFromController, 1); var testUser = testUserController.Get(lastUserId); Assert.IsNull(testUser); }
public async Task Given_Valid_OrganisationService_And_OrganisationName_And_UserName_When_Call_DeleteUserAsync_ShouldReturns_OkObjectResult_And_UserInstance(string organisationName, string userName) { var moqService = new Mock <IUserService>(); moqService .Setup(t => t.DeleteAsync(It.IsAny <string>(), It.IsAny <string>())) .Returns(Task.CompletedTask) .Verifiable(); var controller = new WebAPI.Controllers.UserController(); var result = await controller.DeleteUserAsync(organisationName, userName, moqService.Object); moqService.Verify(); Assert.IsType <NoContentResult>(result); }
public async Task Given_User_Not_Registered_When_Call_GetUserAsync_ShouldReturns_NotFoundResult(string organisationName, string userName) { var moqService = new Mock <IUserService>(); moqService .Setup(t => t.GetByUsernameAsync(It.IsAny <string>(), It.IsAny <string>())) .ReturnsAsync(() => null) .Verifiable(); var controller = new WebAPI.Controllers.UserController(); var result = await controller.GetUserAsync(organisationName, userName, moqService.Object); moqService.Verify(); Assert.IsType <NotFoundResult>(result); }
public async Task Given_UserName_Is_Already_Registered_When_Call_AddUserAsync_ShouldReturns_BadRequest(string organisationName, string userName) { var moqService = new Mock <IUserService>(); moqService .Setup(t => t.AddAsync(It.IsAny <string>(), It.IsAny <DataContracts.User>())) .ThrowsAsync(new NameAlreadyUsedException(userName)) .Verifiable(); var controller = new WebAPI.Controllers.UserController(); var result = await controller.AddUserAsync(organisationName, new DataContracts.User { Username = userName }, moqService.Object); moqService.Verify(); Assert.IsType <BadRequestObjectResult>(result); }
public async Task Given_UserName_Is_Not_Registered_When_Call_UpdateUserAsync_ShouldReturns_NotFound(string organisationName, string userName, string instanceUserName) { var moqService = new Mock <IUserService>(); moqService .Setup(t => t.UpdateAsync(It.IsAny <string>(), It.IsAny <DataContracts.User>(), It.IsAny <bool>())) .ReturnsAsync(() => null) .Verifiable(); var controller = new WebAPI.Controllers.UserController(); var result = await controller.UpdateUserAsync(organisationName, userName, new DataContracts.User { Username = instanceUserName }, moqService.Object); moqService.Verify(); Assert.IsType <NotFoundResult>(result); }
public async Task Given_Invalid_OrganisationService_When_Call_DeleteUserAsync_ShouldReturns_InternalServerError(string organisationName, string userName) { var moqService = new Mock <IUserService>(); moqService .Setup(t => t.DeleteAsync(It.IsAny <string>(), It.IsAny <string>())) .Throws <Exception>() .Verifiable(); var controller = new WebAPI.Controllers.UserController(); var result = await controller.DeleteUserAsync(organisationName, userName, moqService.Object); moqService.Verify(); Assert.IsType <StatusCodeResult>(result); var internalServerError = (StatusCodeResult)result; Assert.NotNull(internalServerError); Assert.Equal((int)HttpStatusCode.InternalServerError, internalServerError.StatusCode); }
public void TryEdit() { var testUserController = new WebAPI.Controllers.UserController(); var lastUser = testUserController.Get().Last(); var newName = Guid.NewGuid().ToString(); var userFromController = testUserController.Put( lastUser.Id, new User { Name = newName, Birthdate = lastUser.Birthdate }); Assert.AreEqual(userFromController, 1); var testUser = testUserController.Get(lastUser.Id); Assert.AreEqual(testUser.Name, newName); }
public async Task Given_UserName_Not_Registered_When_Call_AddUserAsync_ShouldReturns_CreateAtRouteResult(string organisationName, string userName) { var moqService = new Mock <IUserService>(); moqService .Setup(t => t.AddAsync(It.IsAny <string>(), It.IsAny <DataContracts.User>())) .ReturnsAsync(new DataContracts.User { Username = userName }) .Verifiable(); var controller = new WebAPI.Controllers.UserController(); var result = await controller.AddUserAsync(organisationName, new DataContracts.User { Username = userName }, moqService.Object); moqService.Verify(); Assert.IsType <CreatedAtRouteResult>(result); }