Bonjour,
J'ai un problème sur mes tests. Alors je suis entrain de faire une application qui fait une liste de Todo. Tout marche, par contre j'aimerais tester mon controleur, mais mon vrai controleur sans faire de Mock ni de faux repository.
Quand je fais:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 [TestMethod]
        public async Task TesterLaCategorieControllee()
        {
            Category categorieBidon = new Category
            {
                Id = 25,
                Titre = "bidon"
            };
            var categorieController = new CategoriesController(_userManager, _signInManager, _emailSender, _logger, _context);
 
            await categorieController.CreerCategorie(categorieBidon);
 
            Assert.IsNotNull(_context.Categorie);
          /*Assert.AreEqual(categorieBidon, _context.Categorie.Find(categorieBidon));*/
        }
J'obtiens que ma liste est nulle.
Pour le reste, ma catégorie CreerCategorie et dans CategoriesController:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
 public async Task<IActionResult> CreerCategorie([Bind("Id,Titre")] Category categorie)
        {
            if (ModelState.IsValid)
            {            
                _context.Add(categorie);
                await _context.SaveChangesAsync();
                return RedirectToAction(nameof(Index));
            }
            return View(categorie);
        }
Et ma liste de Todos et de Categories est là:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
  public class ApplicationDbContext : IdentityDbContext<ApplicationUser>
    {
        public ApplicationDbContext(DbContextOptions<ApplicationDbContext> options)
            : base(options)
        {
        }
 
 
 
        protected override void OnModelCreating(ModelBuilder builder)
        {
            base.OnModelCreating(builder);
            // Customize the ASP.NET Identity model and override the defaults if needed.
            // For example, you can rename the ASP.NET Identity table names and more.
            // Add your customizations after calling base.OnModelCreating(builder);
        }
 
 
 
              public DbSet<Todo> Todo { get; set; }
 
        public DbSet<Category> Categorie { get; set; }
    }
}
Il considère que ma liste de catégories est nulle même après la création d'une catégorie.
Si vous avez des idées je suis preneur.

Merci d'avance.