You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Digitalisation_EPA_Serveur/EPAServeur.Tests/Controllers/DemandeFormationApiTests.cs

637 lines
28 KiB

using EPAServeur.Context;
using EPAServeur.Exceptions;
using EPAServeur.Models.Formation;
using EPAServeur.Services;
using IO.Swagger.Controllers;
using IO.Swagger.DTO;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging.Abstractions;
using NUnit.Framework;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.DependencyInjection;
using EPAServeur.IServices;
using Moq;
using IO.Swagger.ApiCollaborateur;
using IO.Swagger.Enum;
namespace EPAServeur.Tests.Controllers
{
[TestFixture]
public class DemandeFormationApiTests
{
#region Variables
private IDemandeFormationService demandeFormationService;
private Mock<IWebHostEnvironment> mockEnvironment;
private EpContext epContext;
#endregion
#region Setup
[SetUp]
public void Setup()
{
// Création d'une collection de services pour l'injection de dépendance
var services = new ServiceCollection();
// Utilisation d'une base de données en mémoire
var optionBuider = new DbContextOptionsBuilder<EpContext>()
.UseInMemoryDatabase("server_ep_test")
.Options;
services.AddDbContext<EpContext>(b => b.UseInMemoryDatabase("server_ep_test"));
epContext = new EpContext(optionBuider);
epContext.Database.EnsureDeleted();
epContext.Database.EnsureCreated();
epContext.SaveChanges();
// Ajout du jeu de données pour les tests
DataSeeder.AddFormations(epContext);
// Détache les entités du context car la base de données InMemory créé des conflits
// entre les clés primaires lors d'un Update ou d'un Insert
foreach (var entity in epContext.ChangeTracker.Entries())
{
entity.State = EntityState.Detached;
}
services.AddScoped<ITransformDTO, TransformDTO>();
services.AddScoped<ICollaborateurApi, CollaborateurApi>();
services.AddScoped<ICollaborateurService, CollaborateurService>();
services.AddScoped<IDemandeFormationService, DemandeFormationService>();
// Récupère le service qui sera utilsé pour tester le contrôleur
var serviceProvider = services.BuildServiceProvider();
demandeFormationService = serviceProvider.GetService<IDemandeFormationService>();
// Simule l'interface IWebHostEnvironment avec Moq
mockEnvironment = new Mock<IWebHostEnvironment>();
mockEnvironment
.Setup(m => m.EnvironmentName)
.Returns("Development");
}
#endregion
#region Tests GetDemandesFormation
[Test]
public void GetDemandesFormation_PasseDesParamsPresentsDansLaBDD_RetourneUnObjetOkResult()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
// Act
var okResult = DemandesFormationApiController.GetDemandesFormation(null, null, null, null, null, null, null, null, null, null);
// Assert
Assert.IsInstanceOf<OkObjectResult>(okResult.Result);
}
[Test]
public void GetDemandesFormation_PasseDesParamsPresentsDansLaBDD_RetourneLesCinqPremieresDemandesDeFormations()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
int nbDemandeFormation = 5;
int idFirstDemandeFormation = 1;
int idLastDemandeFormation = 3;
// Act
var okResult = DemandesFormationApiController.GetDemandesFormation(null, null, null, null, 1, 5, null, null, null, null).Result as OkObjectResult;
// Assert
Assert.IsInstanceOf<IEnumerable<DemandeFormationDTO>>(okResult.Value);
Assert.AreEqual(nbDemandeFormation, (okResult.Value as IEnumerable<DemandeFormationDTO>).Count());
Assert.AreEqual(idFirstDemandeFormation, (okResult.Value as IEnumerable<DemandeFormationDTO>).First().Id);
Assert.AreEqual(idLastDemandeFormation, (okResult.Value as IEnumerable<DemandeFormationDTO>).Last().Id);
}
#endregion
#region Tests GetDemandesFormationCount
[Test]
public void GetDemandesFormationCount_PasseDesParamsPresentsDansLaBDD_RetourneUnObjetOkResult()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
// Act
var okResult = DemandesFormationApiController.GetDemandesFormationCount(null, null, null, null, null, null);
// Assert
Assert.IsInstanceOf<OkObjectResult>(okResult.Result);
}
[Test]
public void GetDemandesFormationCount_PasseDesParamsPresentsDansLaBDD_RetourneLeBonNombreDeDemandeDeFormation()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
int nbDemandeFormation = 12;
// Act
var okResult = DemandesFormationApiController.GetDemandesFormationCount(null, null, null, null, null, null).Result as OkObjectResult;
// Assert
Assert.IsInstanceOf<long>(okResult.Value);
Assert.AreEqual(nbDemandeFormation, (long)okResult.Value);
}
#endregion
#region Tests GetOriginesDemandeFormation
[Test]
public void GetOriginesDemandeFormation_RetourneUnObjetOkResult()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
// Act
var okResult = DemandesFormationApiController.GetOriginesDemandeFormation();
// Assert
Assert.IsInstanceOf<OkObjectResult>(okResult.Result);
}
[Test]
public void GetOriginesDemandeFormation_RetourneToutesLesOriginesDeDemande()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
int nbOrigineDemande = 5;
// Act
var okResult = DemandesFormationApiController.GetOriginesDemandeFormation().Result as OkObjectResult;
// Assert
Assert.IsInstanceOf<IEnumerable<OrigineDemandeFormationDTO>>(okResult.Value);
Assert.AreEqual(nbOrigineDemande, (okResult.Value as IEnumerable<OrigineDemandeFormationDTO>).Count());
}
#endregion
#region Tests AddDemandeFormation
[Test]
public void AddDemandeFormation_AjouteUneDemandeDeFormationAvecUnCollaborateurNull_RetourneUnObjetObjectResult()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
OrigineDemandeFormationDTO origineDemandeFormationApside = new OrigineDemandeFormationDTO { Id = 5, Libelle = "Demande Apside" };
List<BusinessUnitDTO> Bus = new List<BusinessUnitDTO>() {
new BusinessUnitDTO { Id = 1, Nom = "Tours" },
new BusinessUnitDTO { Id = 2, Nom = "Orléans" },
};
CollaborateurDTO collaborateur = null;
DemandeFormationDTO demandeFormation = new DemandeFormationDTO
{
Libelle = "Formation React",
Description = "Demande de formation React avec Redux",
DemandeRH = true,
DateDemande = DateTime.Now,
EtatDemande = EtatDemande.EnAttente,
Origine = origineDemandeFormationApside,
Collaborateur = collaborateur,
};
// Act
var objectResult = DemandesFormationApiController.AddDemandeFormation(demandeFormation);
// Assert
Assert.IsInstanceOf<ObjectResult>(objectResult.Result);
}
[Test]
public void AddDemandeFormation_AjouteUneDemandeDeFormationValide_RetourneUnObjetCreatedResult()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
OrigineDemandeFormationDTO origineDemandeFormationApside = new OrigineDemandeFormationDTO { Id = 5, Libelle = "Demande Apside" };
List<BusinessUnitDTO> Bus = new List<BusinessUnitDTO>() {
new BusinessUnitDTO { Id = 1, Nom = "Tours" },
new BusinessUnitDTO { Id = 2, Nom = "Orléans" },
};
CollaborateurDTO collaborateur = new CollaborateurDTO
{
Id = Guid.Parse("842650db-a548-4472-a3af-4c5fff3c1ab8"),
BusinessUnit = new BusinessUnitDTO { Id = 2, Nom = "Orléans", Agence = new AgenceDTO { Id = 1, Nom = "TOP", Bu = Bus } },
Nom = "Lemoine",
Prenom = "Coty",
MailApside = "coty.lemoine@apside-groupe.com",
DateArrivee = new DateTime(2017, 2, 10, 20, 37, 58, 741),
DateDepart = null,
};
DemandeFormationDTO demandeFormation = new DemandeFormationDTO
{
Libelle = "Formation React",
Description = "Demande de formation React avec Redux",
DemandeRH = true,
DateDemande = DateTime.Now,
EtatDemande = EtatDemande.EnAttente,
Origine = origineDemandeFormationApside,
Collaborateur = collaborateur,
};
// Act
var createdResult = DemandesFormationApiController.AddDemandeFormation(demandeFormation);
// Assert
Assert.IsInstanceOf<CreatedResult>(createdResult.Result);
}
[Test]
public void AddDemandeFormation_AjouteUneDemandeDeFormationValide_RetourneLaDemandeDeFormationCreee()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
OrigineDemandeFormationDTO origineDemandeFormationApside = new OrigineDemandeFormationDTO { Id = 5, Libelle = "Demande Apside" };
List<BusinessUnitDTO> Bus = new List<BusinessUnitDTO>() {
new BusinessUnitDTO { Id = 1, Nom = "Tours" },
new BusinessUnitDTO { Id = 2, Nom = "Orléans" },
};
CollaborateurDTO collaborateur = new CollaborateurDTO
{
Id = Guid.Parse("842650db-a548-4472-a3af-4c5fff3c1ab8"),
BusinessUnit = new BusinessUnitDTO { Id = 2, Nom = "Orléans", Agence = new AgenceDTO { Id = 1, Nom = "TOP", Bu = Bus } },
Nom = "Lemoine",
Prenom = "Coty",
MailApside = "coty.lemoine@apside-groupe.com",
DateArrivee = new DateTime(2017, 2, 10, 20, 37, 58, 741),
DateDepart = null,
};
DemandeFormationDTO demandeFormation = new DemandeFormationDTO
{
Libelle = "Formation React",
Description = "Demande de formation React avec Redux",
DemandeRH = true,
DateDemande = DateTime.Now,
EtatDemande = EtatDemande.EnAttente,
Origine = origineDemandeFormationApside,
Collaborateur = collaborateur,
};
// Act
var createdResult = DemandesFormationApiController.AddDemandeFormation(demandeFormation).Result as CreatedResult;
// Assert
Assert.IsInstanceOf<DemandeFormationDTO>(createdResult.Value);
Assert.AreEqual("Formation React", (createdResult.Value as DemandeFormationDTO).Libelle);
}
#endregion
#region Tests UpdateDemandeFormation
[Test]
public async Task UpdateDemandeFormation_AccepteUneDemandeAvecUneFormationNull_RetourneUnObjetObjectResultDansCatchDemandeFormationInvalidException()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
long idDemandeFormation = 3;
OrigineDemandeFormationDTO origineDemandeFormationClient = new OrigineDemandeFormationDTO { Id = 3, Libelle = "Exigence Client" };
List<BusinessUnitDTO> Bus = new List<BusinessUnitDTO>() {
new BusinessUnitDTO { Id = 1, Nom = "Tours" },
new BusinessUnitDTO { Id = 2, Nom = "Orléans" },
};
CollaborateurDTO collaborateur = new CollaborateurDTO
{
Id = Guid.Parse("a0f40e2a-cc03-4032-a627-5389e1281c64"),
BusinessUnit = new BusinessUnitDTO { Id = 2, Nom = "Orléans", Agence = new AgenceDTO { Id = 1, Nom = "TOP", Bu = Bus } },
Nom = "Vasseur",
Prenom = "Florencio",
MailApside = "florencio.vasseur@apside-groupe.com",
DateArrivee = new DateTime(2016, 1, 15, 10, 22, 30, 778),
DateDepart = null,
};
FormationDetailsDTO formation = null;
DemandeFormationDTO demandeFormation = new DemandeFormationDTO
{
Id = idDemandeFormation,
Libelle = "Formation C#",
Description = "Demande de formation C# avec WPF",
DemandeRH = false,
DateDemande = new DateTime(2020, 3, 22, 9, 0, 0),
EtatDemande = EtatDemande.Validee,
Origine = origineDemandeFormationClient,
Collaborateur = collaborateur,
Formation = formation,
};
// Act
var objectResult = DemandesFormationApiController.UpdateDemandeFormation(demandeFormation, idDemandeFormation);
// Assert
Assert.IsInstanceOf<ObjectResult>(objectResult.Result);
}
[Test]
public async Task UpdateDemandeFormation_AccepteUneDemandeAvecUnIdDemandeFormationNull_RetourneUnObjetObjectResultDansCatchDemandeFormationIncompatibleIdException()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
long idDemandeFormation = 1;
long? idDemandeFormationIncorrecte = null;
int nbParticipant = 1;
OrigineDemandeFormationDTO origineDemandeFormationClient = new OrigineDemandeFormationDTO { Id = 3, Libelle = "Exigence Client" };
List<BusinessUnitDTO> Bus = new List<BusinessUnitDTO>() {
new BusinessUnitDTO { Id = 1, Nom = "Tours" },
new BusinessUnitDTO { Id = 2, Nom = "Orléans" },
};
CollaborateurDTO collaborateur = new CollaborateurDTO
{
Id = Guid.Parse("a0f40e2a-cc03-4032-a627-5389e1281c64"),
BusinessUnit = new BusinessUnitDTO { Id = 2, Nom = "Orléans", Agence = new AgenceDTO { Id = 1, Nom = "TOP", Bu = Bus } },
Nom = "Vasseur",
Prenom = "Florencio",
MailApside = "florencio.vasseur@apside-groupe.com",
DateArrivee = new DateTime(2016, 1, 15, 10, 22, 30, 778),
DateDepart = null,
};
FormationDetailsDTO formation = new FormationDetailsDTO
{
Id = 3,
Intitule = "Apprendre C# et le développement de logiciels avec WPF",
DateDebut = new DateTime(2020, 5, 25, 14, 0, 0),
DateFin = new DateTime(2020, 5, 27),
Organisme = "Organisme2",
Origine = new OrigineFormationDTO { Id = 3, Libelle = "Exigence Apside" },
Statut = new StatutFormationDTO { Id = 1, Libelle = "Planifiée" },
EstCertifiee = true,
NbParticipations = nbParticipant
};
DemandeFormationDTO demandeFormation = new DemandeFormationDTO
{
Id = idDemandeFormationIncorrecte,
Libelle = "Formation C#",
Description = "Demande de formation C# avec WPF",
DemandeRH = false,
DateDemande = new DateTime(2020, 3, 22, 9, 0, 0),
EtatDemande = EtatDemande.Validee,
Origine = origineDemandeFormationClient,
Collaborateur = collaborateur,
Formation = formation,
};
// Act
var objectResult = DemandesFormationApiController.UpdateDemandeFormation(demandeFormation, idDemandeFormation);
// Assert
Assert.IsInstanceOf<ObjectResult>(objectResult.Result);
}
[Test]
public async Task UpdateDemandeFormation_AccepteUneDemandeInexistante_RetourneUnObjetObjectResultDansCatchDemandeFormationNotFoundExceptionn()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
long idDemandeFormation = 0;
int nbParticipant = 1;
OrigineDemandeFormationDTO origineDemandeFormationClient = new OrigineDemandeFormationDTO { Id = 3, Libelle = "Exigence Client" };
List<BusinessUnitDTO> Bus = new List<BusinessUnitDTO>() {
new BusinessUnitDTO { Id = 1, Nom = "Tours" },
new BusinessUnitDTO { Id = 2, Nom = "Orléans" },
};
CollaborateurDTO collaborateur = new CollaborateurDTO
{
Id = Guid.Parse("a0f40e2a-cc03-4032-a627-5389e1281c64"),
BusinessUnit = new BusinessUnitDTO { Id = 2, Nom = "Orléans", Agence = new AgenceDTO { Id = 1, Nom = "TOP", Bu = Bus } },
Nom = "Vasseur",
Prenom = "Florencio",
MailApside = "florencio.vasseur@apside-groupe.com",
DateArrivee = new DateTime(2016, 1, 15, 10, 22, 30, 778),
DateDepart = null,
};
FormationDetailsDTO formation = new FormationDetailsDTO
{
Id = 3,
Intitule = "Apprendre C# et le développement de logiciels avec WPF",
DateDebut = new DateTime(2020, 5, 25, 14, 0, 0),
DateFin = new DateTime(2020, 5, 27),
Organisme = "Organisme2",
Origine = new OrigineFormationDTO { Id = 3, Libelle = "Exigence Apside" },
Statut = new StatutFormationDTO { Id = 1, Libelle = "Planifiée" },
EstCertifiee = true,
NbParticipations = nbParticipant
};
DemandeFormationDTO demandeFormation = new DemandeFormationDTO
{
Id = idDemandeFormation,
Libelle = "Formation C#",
Description = "Demande de formation C# avec WPF",
DemandeRH = false,
DateDemande = new DateTime(2020, 3, 22, 9, 0, 0),
EtatDemande = EtatDemande.Validee,
Origine = origineDemandeFormationClient,
Collaborateur = collaborateur,
Formation = formation,
};
// Act
var objectResult = DemandesFormationApiController.UpdateDemandeFormation(demandeFormation, idDemandeFormation);
// Assert
Assert.IsInstanceOf<ObjectResult>(objectResult.Result);
}
[Test]
public async Task UpdateDemandeFormation_AccepteUneDemandeDeDemandeFormation_RetourneUnObjetOkObjectResult()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
long idDemandeFormation = 1;
int nbParticipant = 0;
OrigineDemandeFormationDTO origineDemandeFormationApside = new OrigineDemandeFormationDTO { Id = 5, Libelle = "Demande Apside" };
List<BusinessUnitDTO> Bus = new List<BusinessUnitDTO>() {
new BusinessUnitDTO { Id = 1, Nom = "Tours" },
new BusinessUnitDTO { Id = 2, Nom = "Orléans" },
};
CollaborateurDTO collaborateur = new CollaborateurDTO
{
Id = Guid.Parse("842650db-a548-4472-a3af-4c5fff3c1ab8"),
BusinessUnit = new BusinessUnitDTO { Id = 2, Nom = "Orléans", Agence = new AgenceDTO { Id = 1, Nom = "TOP", Bu = Bus } },
Nom = "Lemoine",
Prenom = "Coty",
MailApside = "coty.lemoine@apside-groupe.com",
DateArrivee = new DateTime(2017, 2, 10, 20, 37, 58, 741),
DateDepart = null,
};
FormationDetailsDTO formation = new FormationDetailsDTO
{
Id = 1,
Intitule = "Formation Mainframe Complète",
DateDebut = new DateTime(2020, 1, 25, 10, 0, 0),
DateFin = new DateTime(2020, 1, 27),
Organisme = "Organisme1",
Origine = new OrigineFormationDTO { Id = 2, Libelle = "Exigence client" },
Statut = new StatutFormationDTO { Id = 1, Libelle = "Planifiée" },
EstCertifiee = false,
NbParticipations = nbParticipant
};
DemandeFormationDTO demandeFormation = new DemandeFormationDTO
{
Id = idDemandeFormation,
Libelle = "Formation Cobol",
Description = "Demande de formation Cobol avec Mainframe",
DemandeRH = false,
DateDemande = new DateTime(2020, 1, 22, 9, 0, 0),
EtatDemande = EtatDemande.Validee,
Origine = origineDemandeFormationApside,
Collaborateur = collaborateur,
Formation = formation,
};
// Act
var okObjectResult = DemandesFormationApiController.UpdateDemandeFormation(demandeFormation, idDemandeFormation);
// Assert
Assert.IsInstanceOf<OkObjectResult>(okObjectResult.Result);
}
[Test]
public async Task UpdateDemandeFormation_AccepteUneDemandeDeDemandeFormation_RetourneLaDemandeDeFormationAcceptee()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
long idDemandeFormation = 1;
int nbParticipant = 0;
OrigineDemandeFormationDTO origineDemandeFormationApside = new OrigineDemandeFormationDTO { Id = 5, Libelle = "Demande Apside" };
List<BusinessUnitDTO> Bus = new List<BusinessUnitDTO>() {
new BusinessUnitDTO { Id = 1, Nom = "Tours" },
new BusinessUnitDTO { Id = 2, Nom = "Orléans" },
};
CollaborateurDTO collaborateur = new CollaborateurDTO
{
Id = Guid.Parse("842650db-a548-4472-a3af-4c5fff3c1ab8"),
BusinessUnit = new BusinessUnitDTO { Id = 2, Nom = "Orléans", Agence = new AgenceDTO { Id = 1, Nom = "TOP", Bu = Bus } },
Nom = "Lemoine",
Prenom = "Coty",
MailApside = "coty.lemoine@apside-groupe.com",
DateArrivee = new DateTime(2017, 2, 10, 20, 37, 58, 741),
DateDepart = null,
};
FormationDetailsDTO formation = new FormationDetailsDTO
{
Id = 1,
Intitule = "Formation Mainframe Complète",
DateDebut = new DateTime(2020, 1, 25, 10, 0, 0),
DateFin = new DateTime(2020, 1, 27),
Organisme = "Organisme1",
Origine = new OrigineFormationDTO { Id = 2, Libelle = "Exigence client" },
Statut = new StatutFormationDTO { Id = 1, Libelle = "Planifiée" },
EstCertifiee = false,
NbParticipations = nbParticipant
};
DemandeFormationDTO demandeFormation = new DemandeFormationDTO
{
Id = idDemandeFormation,
Libelle = "Formation Cobol",
Description = "Demande de formation Cobol avec Mainframe",
DemandeRH = false,
DateDemande = new DateTime(2020, 1, 22, 9, 0, 0),
EtatDemande = EtatDemande.Validee,
Origine = origineDemandeFormationApside,
Collaborateur = collaborateur,
Formation = formation,
};
// Act
var okObjectResult = DemandesFormationApiController.UpdateDemandeFormation(demandeFormation, idDemandeFormation).Result as OkObjectResult;
// Assert
Assert.IsInstanceOf<DemandeFormationDTO>(okObjectResult.Value);
Assert.AreEqual("Formation Cobol", (okObjectResult.Value as DemandeFormationDTO).Libelle);
}
#endregion
#region Tests DeleteDemandeFormation
[Test]
public void DeleteDemandeFormation_SupprimeUneDemandeDeFormationInexistante_RetourneUnObjetNotFoundObjectResult()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
long idDemandeFormation = 0;
// Act
var notFoundObjectResult = DemandesFormationApiController.DeleteDemandeFormation(idDemandeFormation);
// Assert
Assert.IsInstanceOf<NotFoundObjectResult>(notFoundObjectResult.Result);
}
[Test]
public void DeleteDemandeFormation_SupprimeUneDemandeDeFormationConcernantUnEpSigne_RetourneUnObjetObjectResultDansCatchDemandeFormationInvalidException()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
long idDemandeFormation = 2;
// Act
var objectResult = DemandesFormationApiController.DeleteDemandeFormation(idDemandeFormation);
// Assert
Assert.IsInstanceOf<ObjectResult>(objectResult.Result);
}
[Test]
public void DeleteDemandeFormation_SupprimeUneDemandeDeFormation_RetourneUnObjetNoContentResult()
{
// Arrange
DemandesFormationApiController DemandesFormationApiController = new DemandesFormationApiController(demandeFormationService, new NullLogger<DemandesFormationApiController>(), mockEnvironment.Object);
long idDemandeFormation = 5;
// Act
var noContentResult = DemandesFormationApiController.DeleteDemandeFormation(idDemandeFormation);
// Assert
Assert.IsInstanceOf<NoContentResult>(noContentResult.Result);
}
#endregion
}
}