Ajout de test UserController
continuous-integration/drone/push Build is passing Details

notePad
Maxime SAPOUNTZIS 1 year ago
parent 493719d1db
commit b474a171e6

@ -18,7 +18,7 @@ public class UserUnitTest
} }
[Fact] [Fact]
public void GetNumberOfUsers() public void GetNumberOfUsersSuccess()
{ {
var userList = GetUsersData(); var userList = GetUsersData();
_userService.Setup(x => x.GetNumberOfUsers()) _userService.Setup(x => x.GetNumberOfUsers())
@ -35,6 +35,24 @@ public class UserUnitTest
} }
} }
[Fact]
public void GetNumberOfUsers_Fail_Cause_Not_Found()
{
var userList = GetUsersData();
_userService.Setup(x => x.GetNumberOfUsers())
.Returns(0);
var usersController = new UsersController(new NullLogger<UsersController>(), _userService.Object);
var userResult = usersController.GetNumberOfUsers();
if (userResult is StatusCodeResult statusCodeResult && statusCodeResult.StatusCode == 204)
{
Assert.IsNotType<OkObjectResult>(userResult);
}
}
[Fact] [Fact]
public void GetUsersListSuccess() public void GetUsersListSuccess()
{ {
@ -55,6 +73,22 @@ public class UserUnitTest
} }
} }
[Fact]
public void GetUserListFail()
{
_userService.Setup(x => x.GetUsers(1, 4, 0))
.Returns(new List<UserDto>());
var usersController = new UsersController(new NullLogger<UsersController>(), _userService.Object);
var userResult = usersController.GetUsers(2, 3, 0);
if (userResult is StatusCodeResult statusCodeResult && statusCodeResult.StatusCode == 204)
{
Assert.IsNotType<OkObjectResult>(userResult);
}
}
[Fact] [Fact]
public void GetNotAdminUsersListSuccess() public void GetNotAdminUsersListSuccess()
{ {
@ -65,30 +99,31 @@ public class UserUnitTest
var userResult = usersController.GetNotAdminUsers(1, 4, 0); var userResult = usersController.GetNotAdminUsers(1, 4, 0);
if (userResult is OkObjectResult okObjectResult) if (userResult is StatusCodeResult statusCodeResult && statusCodeResult.StatusCode == 204)
{
var valeur = okObjectResult.Value;
Assert.NotNull(valeur); {
Assert.Equal(GetUsersData().ToString(), valeur.ToString()); Assert.IsNotType<OkObjectResult>(userResult);
Assert.True(userList.Where(u => u.IsAdmin == false)
.SequenceEqual(valeur as IEnumerable<UserDto>, new UserIdEqualityComparer()));
} }
} }
[Fact] [Fact]
public void GetUserListFail() public void GetNotAdminUsersListFail_Cause_Not_Found()
{ {
_userService.Setup(x => x.GetUsers(1, 4, 0)) var userList = GetUsersData();
.Returns(new List<UserDto>()); _userService.Setup(x => x.GetNotAdminUsers(1, 4, 0))
.Returns(userList.Where(u => u.IsAdmin == false));
var usersController = new UsersController(new NullLogger<UsersController>(), _userService.Object); var usersController = new UsersController(new NullLogger<UsersController>(), _userService.Object);
var userResult = usersController.GetUsers(2, 3, 0); var userResult = usersController.GetNotAdminUsers(100, 4, 0);
if (userResult is StatusCodeResult statusCodeResult && statusCodeResult.StatusCode == 204)
if (userResult is OkObjectResult okObjectResult)
{ {
Assert.IsNotType<OkObjectResult>(userResult); var valeur = okObjectResult.Value;
Assert.NotNull(valeur);
Assert.Equal(GetUsersData().ToString(), valeur.ToString());
Assert.True(userList.Where(u => u.IsAdmin == false)
.SequenceEqual(valeur as IEnumerable<UserDto>, new UserIdEqualityComparer()));
} }
} }
@ -116,7 +151,7 @@ public class UserUnitTest
} }
[Fact] [Fact]
public void GetUserIdFail() public void GetUserIdFail_Id_Doesnt_Exist()
{ {
var userList = GetUsersData(); var userList = GetUsersData();
_userService.Setup(x => x.GetUserById(1)) _userService.Setup(x => x.GetUserById(1))
@ -134,6 +169,26 @@ public class UserUnitTest
} }
} }
[Fact]
public void GetUserIdFail__Argument_Exception_Negative_Id()
{
var userList = GetUsersData();
_userService.Setup(x => x.GetUserById(1))
.Returns(userList[1]);
var usersController = new UsersController(new NullLogger<UsersController>(), _userService.Object);
var userResult = usersController.GetUserById(-1);
if (userResult is NotFoundObjectResult nfObjectResult)
{
var valeur = nfObjectResult.Value;
Assert.NotNull(valeur);
Assert.IsNotType<UserDto>(valeur);
Assert.DoesNotContain(valeur, userList);
}
}
[Fact] [Fact]
public void GetUserUsernameSuccess() public void GetUserUsernameSuccess()
{ {
@ -274,7 +329,7 @@ public class UserUnitTest
} }
[Fact] [Fact]
public void CreateUserFail() public void CreateUserFail_When_Field_Null()
{ {
GetUsersData(); GetUsersData();
_userService.Setup(x => x.CreateUser("Nom", "Passssss", "heudfk@hdye.com", true)) _userService.Setup(x => x.CreateUser("Nom", "Passssss", "heudfk@hdye.com", true))
@ -289,6 +344,7 @@ public class UserUnitTest
} }
} }
[Fact] [Fact]
public void CreateUserWithExistingEmail() public void CreateUserWithExistingEmail()
{ {
@ -297,11 +353,11 @@ public class UserUnitTest
.Returns(new UserDto("Nom", "Passssss", "adressemail@gmail.com", true)); .Returns(new UserDto("Nom", "Passssss", "adressemail@gmail.com", true));
var usersController = new UsersController(new NullLogger<UsersController>(), _userService.Object); var usersController = new UsersController(new NullLogger<UsersController>(), _userService.Object);
var userResult = usersController.CreateUser(new UserDto(null, "Passssss", "adressemail@gmail.com", true)); var userResult = usersController.CreateUser(new UserDto("user", "Passssss", "adressemail@gmail.com", true));
if (userResult is BadRequestResult bdObjectResult) if (userResult is BadRequestResult bdObjectResult)
{ {
Assert.Equal(400, bdObjectResult.StatusCode); Assert.Equal(409, bdObjectResult.StatusCode);
} }
} }
@ -309,11 +365,11 @@ public class UserUnitTest
public void CreateUserWithExistingUsername() public void CreateUserWithExistingUsername()
{ {
GetUsersData(); GetUsersData();
_userService.Setup(x => x.CreateUser("Useruser", "Passssss", "heudfk@hdye.com", true)) _userService.Setup(x => x.CreateUser("Nom", "Passssss", "adressemail@gmail.com", true))
.Returns(new UserDto("Useruser", "Passssss", "heudfk@hdye.com", true)); .Returns(new UserDto("Nom", "Passssss", "adressemail@gmail.com", true));
var usersController = new UsersController(new NullLogger<UsersController>(), _userService.Object); var usersController = new UsersController(new NullLogger<UsersController>(), _userService.Object);
var userResult = usersController.CreateUser(new UserDto("Useruser", "Passssss", "heudfk@hdye.com", true)); var userResult = usersController.CreateUser(new UserDto("Useruser", "Passssss", "adressemail@gmail.com", true));
if (userResult is BadRequestResult bdObjectResult) if (userResult is BadRequestResult bdObjectResult)
{ {

Loading…
Cancel
Save