using CapaServicio.Controllers; using CapaServicio.Models; using CapaServicio.Repository; using CapaServicio.Service; using Microsoft.AspNetCore.Mvc; using Moq; namespace CapaTest { public class UnitTest1 { private Mock<IAlumnoService> _mockService; private AlumnoesController _controller; public UnitTest1() { // Crear el mock del servicio y configurar su comportamiento _mockService = new Mock<IAlumnoService>(); // Esto son datos falsos de prueba que será lo que obtengamos cuando // El controlador llame al servicio _mockService.Setup(s => s.ObtenerTodos()).Returns(new List<Alumno> { new Alumno(), new Alumno() }); _mockService.Setup(s => s.ObtenerPorId(2)).Returns(new Alumno()); //// Crear una instancia del controlador con el mock del servicio _controller = new AlumnoesController(_mockService.Object); } [Fact] public async Task Test1Async() { // Aquí verifico el index var result = await _controller.Index() as ViewResult; // Verificar Assert.NotNull(result); // Compruebo, por ejemplo, que el modelo es una lista de alumnos Assert.IsType(typeof(List<Alumno>), result.Model); Assert.Equal(2, ((List<Alumno>)result.Model).Count); // Aquí verifico el Details con un id 2 result = await _controller.Details(2) as ViewResult; Assert.NotNull(result); // Compruebo que el modelo sea alumno... Assert.IsType(typeof(Alumno), result.Model); } } }