using Dto; using HeartTrackAPI.Controllers; using HeartTrackAPI.Request; using HeartTrackAPI.Responce; using Microsoft.AspNetCore.Mvc; using Microsoft.Extensions.Logging.Abstractions; using Model.Manager; using Model.Repository; using StubAPI; namespace UnitTestApi; [TestClass] public class UserControllerTest { private readonly IDataManager StubDataManager; private readonly UsersController _usersController; public UserControllerTest() { StubDataManager = new StubData(); _usersController = new UsersController(new NullLogger(), StubDataManager); } [TestMethod] public void Get_ReturnsPageResponse_WhenRequestIsValid() { // Arrange var request = new PageRequest { Index = 0, Count = 10, OrderingPropertyName = "Id", Descending = false }; // Act //var result = _usersController.Get(request).Result as OkObjectResult; // Assert // Assert.IsNotNull(result); //Assert.IsInstanceOfType(result.Value, typeof(PageResponse)); } /* [TestMethod] public void GetById_ReturnsUserDto_WhenRequestIsValid() { // Arrange var id = 1; // Act var result = _usersController.GetById(id).Result as OkObjectResult; // Assert Assert.IsNotNull(result); Assert.IsInstanceOfType(result.Value, typeof(UserDto)); } [TestMethod] public void GetById_Returns404_WhenIdIsInvalid() { // Arrange var id = 0; // Act var result = _usersController.GetById(id).Result as NotFoundResult; // Assert Assert.IsNotNull(result); } [TestMethod] public void GetById_Returns500_WheExceptionIsThrown() { // Arrange var id = 0; // Act var result = _usersController.GetById(id).Result as StatusCodeResult; // Assert Assert.IsNotNull(result); Assert.AreEqual(500, result.StatusCode); } [TestMethod] public void Count_ReturnsInt_WhenRequestIsValid() { // Act var result = _usersController.Count().Result as OkObjectResult; // Assert Assert.IsNotNull(result); Assert.IsInstanceOfType(result.Value, typeof(int)); } [TestMethod] public void Count_Returns500_WheExceptionIsThrown() { // Act var result = _usersController.Count().Result as StatusCodeResult; // Assert Assert.IsNotNull(result); Assert.AreEqual(500, result.StatusCode); } [TestMethod] public void Update_ReturnsUserDto_WhenRequestIsValid() { // Arrange var id = 1; var user = new UserDto { Id = 1, FirstName = "John", LastName = "Doe", Email = "toto@eoeo.fr", }; }*/ }