feat: déplacement du fichier TitreFactory.cs pour une meilleure organisation
This commit is contained in:
76
Webzine.Entity/Fixtures/TitreFactory.cs
Normal file
76
Webzine.Entity/Fixtures/TitreFactory.cs
Normal file
@@ -0,0 +1,76 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Faker;
|
||||
using Webzine.Entity;
|
||||
|
||||
namespace Webzine.Repository.Fake
|
||||
{
|
||||
/// <summary>
|
||||
/// Classe de fabrique pour générer des données factices (fake data) pour les entités Artiste et Titre.
|
||||
/// </summary>
|
||||
public static class FakeDataFactory
|
||||
{
|
||||
//https://cdn-images.dzcdn.net/images/cover/311bba0fc112d15f72c8b5a65f0456c1/1900x1900-000000-80-0-0.jpg",
|
||||
/// <summary>
|
||||
/// Génère une liste d'artistes avec des données factices, incluant des titres associés à chaque artiste.
|
||||
/// </summary>
|
||||
/// <param name="count">Le nombre d'artistes à générer. Par défaut, 10 artistes seront générés.</param>
|
||||
/// <returns>Une liste d'objets Artiste avec des titres associés, générés de manière aléatoire.</returns>
|
||||
public static List<Artiste> GetArtistes(int count = 10)
|
||||
{
|
||||
var artistes = new List<Artiste>();
|
||||
|
||||
for (int i = 1; i <= count; i++)
|
||||
{
|
||||
artistes.Add(new Artiste
|
||||
{
|
||||
IdArtiste = i,
|
||||
Nom = Name.FullName(),
|
||||
Biographie = Lorem.Paragraph(),
|
||||
Titres = new List<Titre>()
|
||||
});
|
||||
}
|
||||
|
||||
return artistes;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Génère une liste de titres avec des données factices, en associant chaque titre à un artiste existant.
|
||||
/// </summary>
|
||||
/// <param name="count">Le nombre de titres à générer. Par défaut, 40 titres seront générés.</param>
|
||||
/// <returns>Une liste d'objets Titre avec des données factices, associés à des artistes générés de manière aléatoire.</returns>
|
||||
public static List<Titre> GetTitres(int count = 40)
|
||||
{
|
||||
var artistes = GetArtistes();
|
||||
var titres = new List<Titre>();
|
||||
|
||||
for (int i = 1; i <= count; i++)
|
||||
{
|
||||
var artiste = artistes[RandomNumber.Next(0, artistes.Count - 1)];
|
||||
|
||||
var titre = new Titre
|
||||
{
|
||||
IdTitre = i,
|
||||
IdArtiste = artiste.IdArtiste,
|
||||
Artiste = artiste,
|
||||
Libelle = Lorem.Sentence(3),
|
||||
Chronique = Lorem.Paragraph(),
|
||||
DateCreation = DateTime.Now.AddDays(-RandomNumber.Next(1, 100)),
|
||||
DateSortie = DateTime.Now.AddYears(-RandomNumber.Next(1, 20)),
|
||||
Duree = RandomNumber.Next(120, 420),
|
||||
UrlJaquette = "https://picsum.photos/300",
|
||||
UrlEcoute = Internet.Url(),
|
||||
NbLectures = RandomNumber.Next(0, 500),
|
||||
NbLikes = RandomNumber.Next(0, 200),
|
||||
Album = Lorem.Sentence(2),
|
||||
Commentaires = new List<Commentaire>()
|
||||
};
|
||||
|
||||
titres.Add(titre);
|
||||
artiste.Titres.Add(titre);
|
||||
}
|
||||
|
||||
return titres;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user