public async void GetEmployeeByIdAsync_ShouldReturnEmployee() { // Arrange var employee = new Employee { Id = 23, FirstName = "John", LastName = "Dou", MediaInteractivaEmployee = true, Pet = new Pet { Id = 73, Name = "Dick", Type = "duck", OwnerId = 23 } }; var employeesRepoMock = new Mock <IBaseRepository <Employee> >(); employeesRepoMock.Setup(x => x.GetByIdAsync(It.IsAny <int>())).ReturnsAsync(employee); var employeesService = new EmployeesService(employeesRepoMock.Object); // Act var result = await employeesService.GetEmployeeByIdAsync(employee.Id); // Arrange Assert.IsAssignableFrom <Employee>(result); Assert.Equal(employee.Id, result.Id); Assert.Equal(employee.FirstName, result.FirstName); Assert.Equal(employee.LastName, result.LastName); }