Add Update UT
continuous-integration/drone/push Build is passing Details

pull/39/head
Corentin LEMAIRE 2 years ago
parent 96a0b87041
commit d5fa316a57

@ -189,7 +189,7 @@ namespace Model
/// <param name="artist">Artist de l'objet InfoTitle</param>
/// <param name="description">Description de l'objet InfoTitle</param>
/// <param name="genre">Genre de l'objet InfoTitle</param>
void UpdateInfoTitleByName(string name, string newUrl, string info, Artist artist, string description, Genre genre);
void UpdateInfoTitleByName(string name, string newName, string newUrl, string info, Artist artist, string description, Genre genre);
/// <summary>
/// Modifie un objet Album avec les informations données en paramètre
@ -210,28 +210,7 @@ namespace Model
/// <param name="artist">Artist de l'objet Album</param>
/// <param name="description">Description de l'objet Album</param>
/// <param name="info">Informations de l'objet Album</param>
void UpdateAlbumByName(string name, string newUrl, Artist artist, string description, string info);
/// <summary>
/// Modifie un objet Album avec les informations données en paramètre
/// </summary>
/// <param name="album">Album à modifier</param>
/// <param name="name">Nom de l'objet Album</param>
/// <param name="url">Chemin d'accès de l'image de l'objet Album</param>
/// <param name="artist">Nom de l'artiste de l'objet Album</param>
/// <param name="description">Description de l'objet Album</param>
/// <param name="info">Informations de l'objet Album</param>
void UpdateAlbumByArtistName(Album album, string name, string url, string artist, string description, string info);
/// <summary>
/// Modifie un objet Album avec les informations données en paramètre
/// </summary>
/// <param name="name">Nom de l'objet Album à modifier</param>
/// <param name="newUrl">Chemin d'accès de l'image de l'objet Album</param>
/// <param name="artist">Nom de l'artiste de l'objet Album</param>
/// <param name="description">Description de l'objet Album</param>
/// <param name="info">Informations de l'objet Album</param>
void UpdateAlbumByNameByArtistName(string name, string newUrl, string artist, string description, string info);
void UpdateAlbumByName(string name, string newName, string newUrl, Artist artist, string description, string info);
/// <summary>
/// Modifie un objet Playlist avec les informations données en paramètre
@ -248,7 +227,7 @@ namespace Model
/// <param name="name">Nom de l'objet Playlist à modifier</param>
/// <param name="description">Description de l'objet Playlist</param>
/// <param name="newUrl">Chemin d'accès de l'image de l'objet Playlist</param>
void UpdatePlaylistByName(string name, string description, string newUrl);
void UpdatePlaylistByName(string name, string newName, string description, string newUrl);
/// <summary>
/// Modifie un objet Artist avec les informations données en paramètre

@ -656,12 +656,12 @@ namespace Model.Serialization
/// <param name="artist">Artist de l'objet InfoTitle</param>
/// <param name="description">Description de l'objet InfoTitle</param>
/// <param name="genre">Genre de l'objet InfoTitle</param>
public void UpdateInfoTitleByName(string name, string newUrl, string info, Artist artist, string description, Genre genre)
public void UpdateInfoTitleByName(string name, string newName, string newUrl, string info, Artist artist, string description, Genre genre)
{
InfoTitle title = GetInfoTitleByName(name);
if (title != null)
{
title.Name = name;
title.Name = newName;
title.ImageURL = newUrl;
title.Information = info;
title.Description = description;
@ -695,12 +695,12 @@ namespace Model.Serialization
/// <param name="artist">Artist de l'objet Album</param>
/// <param name="description">Description de l'objet Album</param>
/// <param name="info">Informations de l'objet Album</param>
public void UpdateAlbumByName(string name, string newUrl, Artist artist, string description, string info)
public void UpdateAlbumByName(string name, string newName, string newUrl, Artist artist, string description, string info)
{
Album album = GetAlbumByName(name);
if (album != null)
{
album.Name = name;
album.Name = newName;
album.ImageURL = newUrl;
album.Artist = artist;
album.Description = description;
@ -708,53 +708,6 @@ namespace Model.Serialization
}
}
/// <summary>
/// Modifie un objet Album avec les informations données en paramètre
/// </summary>
/// <param name="album">Album à modifier</param>
/// <param name="name">Nom de l'objet Album</param>
/// <param name="url">Chemin d'accès de l'image de l'objet Album</param>
/// <param name="artist">Nom de l'artiste de l'objet Album</param>
/// <param name="description">Description de l'objet Album</param>
/// <param name="info">Informations de l'objet Album</param>
public void UpdateAlbumByArtistName(Album album, string name, string url, string artist, string description, string info)
{
album.Name = name;
album.ImageURL = url;
Artist artist2 = GetArtistByName(artist);
if (artist2 != null)
{
album.Artist = artist2;
}
album.Description = description;
album.Information = info;
}
/// <summary>
/// Modifie un objet Album avec les informations données en paramètre
/// </summary>
/// <param name="name">Nom de l'objet Album à modifier</param>
/// <param name="newUrl">Chemin d'accès de l'image de l'objet Album</param>
/// <param name="artist">Nom de l'artiste de l'objet Album</param>
/// <param name="description">Description de l'objet Album</param>
/// <param name="info">Informations de l'objet Album</param>
public void UpdateAlbumByNameByArtistName(string name, string newUrl, string artist, string description, string info)
{
Album album = GetAlbumByName(name);
if (album != null)
{
album.Name = name;
album.ImageURL = newUrl;
Artist artist2 = GetArtistByName(artist);
if (artist2 != null)
{
album.Artist = artist2;
}
album.Description = description;
album.Information = info;
}
}
/// <summary>
/// Modifie un objet Playlist avec les informations données en paramètre
/// </summary>
@ -775,12 +728,12 @@ namespace Model.Serialization
/// <param name="name">Nom de l'objet Playlist à modifier</param>
/// <param name="description">Description de l'objet Playlist</param>
/// <param name="newUrl">Chemin d'accès de l'image de l'objet Playlist</param>
public void UpdatePlaylistByName(string name, string description, string newUrl)
public void UpdatePlaylistByName(string name, string newName, string description, string newUrl)
{
Playlist playlist = GetPlaylistByName(name);
if (playlist != null)
{
playlist.Name = name;
playlist.Name = newName;
playlist.Description = description;
playlist.ImageURL = newUrl;
}
@ -803,7 +756,7 @@ namespace Model.Serialization
/// <param name="newName">Nouveau nom de l'objet Artist</param>
public void UpdateArtistByName(string name, string newName)
{
Artist artist = GetArtistByName(newName);
Artist artist = GetArtistByName(name);
if (artist != null)
{
artist.Name = newName;

@ -408,12 +408,12 @@ namespace Model.Stub
/// <param name="artist">Artist de l'objet InfoTitle</param>
/// <param name="description">Description de l'objet InfoTitle</param>
/// <param name="genre">Genre de l'objet InfoTitle</param>
public void UpdateInfoTitleByName(string name, string newUrl, string info, Artist artist, string description, Genre genre)
public void UpdateInfoTitleByName(string name, string newName, string newUrl, string info, Artist artist, string description, Genre genre)
{
InfoTitle title = GetInfoTitleByName(name);
if (title != null)
{
title.Name = name;
title.Name = newName;
title.ImageURL = newUrl;
title.Information = info;
title.Description = description;
@ -447,12 +447,12 @@ namespace Model.Stub
/// <param name="artist">Artist de l'objet Album</param>
/// <param name="description">Description de l'objet Album</param>
/// <param name="info">Informations de l'objet Album</param>
public void UpdateAlbumByName(string name, string newUrl, Artist artist, string description, string info)
public void UpdateAlbumByName(string name, string newName, string newUrl, Artist artist, string description, string info)
{
Album album = GetAlbumByName(name);
if (album != null)
{
album.Name = name;
album.Name = newName;
album.ImageURL = newUrl;
album.Artist = artist;
album.Description = description;
@ -460,53 +460,6 @@ namespace Model.Stub
}
}
/// <summary>
/// Modifie un objet Album avec les informations données en paramètre
/// </summary>
/// <param name="album">Album à modifier</param>
/// <param name="name">Nom de l'objet Album</param>
/// <param name="url">Chemin d'accès de l'image de l'objet Album</param>
/// <param name="artist">Nom de l'artiste de l'objet Album</param>
/// <param name="description">Description de l'objet Album</param>
/// <param name="info">Informations de l'objet Album</param>
public void UpdateAlbumByArtistName(Album album, string name, string url, string artist, string description, string info)
{
album.Name = name;
album.ImageURL = url;
Artist artist2 = GetArtistByName(artist);
if (artist2 != null)
{
album.Artist = artist2;
}
album.Description = description;
album.Information = info;
}
/// <summary>
/// Modifie un objet Album avec les informations données en paramètre
/// </summary>
/// <param name="name">Nom de l'objet Album à modifier</param>
/// <param name="newUrl">Chemin d'accès de l'image de l'objet Album</param>
/// <param name="artist">Nom de l'artiste de l'objet Album</param>
/// <param name="description">Description de l'objet Album</param>
/// <param name="info">Informations de l'objet Album</param>
public void UpdateAlbumByNameByArtistName(string name, string newUrl, string artist, string description, string info)
{
Album album = GetAlbumByName(name);
if (album != null)
{
album.Name = name;
album.ImageURL = newUrl;
Artist artist2 = GetArtistByName(artist);
if (artist2 != null)
{
album.Artist = artist2;
}
album.Description = description;
album.Information = info;
}
}
/// <summary>
/// Modifie un objet Playlist avec les informations données en paramètre
/// </summary>
@ -527,12 +480,12 @@ namespace Model.Stub
/// <param name="name">Nom de l'objet Playlist à modifier</param>
/// <param name="description">Description de l'objet Playlist</param>
/// <param name="newUrl">Chemin d'accès de l'image de l'objet Playlist</param>
public void UpdatePlaylistByName(string name, string description, string newUrl)
public void UpdatePlaylistByName(string name, string newName, string description, string newUrl)
{
Playlist playlist = GetPlaylistByName(name);
if (playlist != null)
{
playlist.Name = name;
playlist.Name = newName;
playlist.Description = description;
playlist.ImageURL = newUrl;
}
@ -555,7 +508,7 @@ namespace Model.Stub
/// <param name="newName">Nouveau nom de l'objet Artist</param>
public void UpdateArtistByName(string name, string newName)
{
Artist artist = GetArtistByName(newName);
Artist artist = GetArtistByName(name);
if (artist != null)
{
artist.Name = newName;

@ -109,6 +109,167 @@ namespace TestUnitaires
Assert.False(l.ExistsCustomTitle(new CustomTitle(name, imageURL, info, path)));
Assert.False(l.ExistsCustomTitleByName(name));
}
[Fact]
public void TU_RemoveAddMultiple()
{
List<Album> albums = new()
{
new Album("album1", "img1.png", new Artist("artist"), "desc", "info"),
new Album("album2", "img2.png", new Artist("artist"), "desc", "info"),
new Album("album3", "img3.png", new Artist("artist"), "desc", "info")
};
List<Artist> artists = new()
{
new Artist("artist1"),
new Artist("artist2"),
new Artist("artist3")
};
List<InfoTitle> infoTitles = new()
{
new InfoTitle("it1", "img1.png", "desc", "info", Genre.POP, 0),
new InfoTitle("it2", "img2.png", "desc", "info", Genre.POP, 0),
new InfoTitle("it3", "img3.png", "desc", "info", Genre.POP, 0)
};
List<CustomTitle> customTitles = new()
{
new CustomTitle("ct1", "img1.png", "info", "path1.mp3"),
new CustomTitle("ct2", "img2.png", "info", "path2.mp3"),
new CustomTitle("ct3", "img3.png", "info", "path3.mp3")
};
List<Playlist> playlists = new()
{
new Playlist("nom1", "desc", "img1.png"),
new Playlist("nom2", "desc", "img2.png"),
new Playlist("nom3", "desc", "img3.png")
};
LinqXmlSerialization l = new(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Data"));
l.AddAlbums(albums);
l.AddArtists(artists);
l.AddInfoTitles(infoTitles);
l.AddCustomTitles(customTitles);
l.AddPlaylists(playlists);
l.RemoveAlbums(albums);
l.RemoveArtists(artists);
l.RemoveInfoTitles(infoTitles);
l.RemoveCustomTitles(customTitles);
l.RemovePlaylists(playlists);
l.AddAlbums(albums);
l.AddArtists(artists);
l.AddInfoTitles(infoTitles);
l.AddCustomTitles(customTitles);
l.AddPlaylists(playlists);
}
[Theory]
[InlineData("nom", "url2.png", "artist", "desc", "info", Genre.POP, "path.mp3")]
[InlineData("nom", "url2.png", "", "desc", "info", Genre.POP, "path.mp3")]
[InlineData("nom", "url2.png", "artist", "", "info", Genre.POP, "path.mp3")]
[InlineData("nom", "url2.png", "artist", "desc", "", Genre.POP, "path.mp3")]
[InlineData("nom", "url2.png", "artist", "desc", "", Genre.POP, "")]
public void TU_Update(string nom, string url, string artistName, string description, string info, Genre genre, string path)
{
LinqXmlSerialization l = new(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "Data"));
Album album = new("album1", "img1.png", new Artist("artist1"), "desc", "info");
Album album2 = new("album2", "img2.png", new Artist("artist1"), "desc", "info");
Artist artist = new("artist1");
Artist artist2 = new("artist2");
InfoTitle infoTitle = new("it1", "img1.png", "desc", "info", Genre.RAP, 0);
InfoTitle infoTitle2 = new("it12", "img12.png", "desc", "info", Genre.RAP, 0);
CustomTitle customTitle = new("nom1", "img1.png", "info", "path1.mp3");
CustomTitle customTitle2 = new("nom2", "img2.png", "info", "path2.mp3");
Playlist playlist = new("nom1", "desc", "img1.png");
Playlist playlist2 = new("nom2", "desc", "img2.png");
l.AddAlbum(album);
l.AddAlbum(album2);
l.AddArtist(artist);
l.AddArtist(artist2);
l.AddInfoTitle(infoTitle);
l.AddInfoTitle(infoTitle2);
l.AddCustomTitle(customTitle);
l.AddCustomTitle(customTitle2);
l.AddPlaylist(playlist);
l.AddPlaylist(playlist2);
l.UpdateAlbum(album, nom, url, new Artist(artistName), description, info);
l.UpdateAlbumByName(album2.Name, nom, url, new Artist(artistName), description, info);
l.UpdateArtist(artist, nom);
l.UpdateArtistByName(artist2.Name, nom);
l.UpdateInfoTitle(infoTitle, nom, url, info, new Artist(artistName), description, genre);
l.UpdateInfoTitleByName(infoTitle2.Name, nom, url, info, new Artist(artistName), description, genre);
l.UpdateCustomTitle(customTitle, nom, url, info, path);
l.UpdateCustomTitleByPath(customTitle2.Path, nom, url, info, path);
l.UpdatePlaylist(playlist, nom, description, url);
l.UpdatePlaylistByName(playlist2.Name, nom, description, url);
List<Album> albums = new()
{
album, album2
};
List<Artist> artists = new()
{
artist, artist2
};
List<InfoTitle> infoTitles = new()
{
infoTitle, infoTitle2
};
List<CustomTitle> customTitles = new()
{
customTitle, customTitle2
};
List<Playlist> playlists = new()
{
playlist, playlist2
};
foreach(Album a in albums)
{
Assert.Equal(nom, a.Name);
Assert.Equal(url, a.ImageURL);
Assert.Equal(artistName, a.Artist.Name);
Assert.Equal(description, a.Description);
Assert.Equal(info, a.Information);
}
foreach(Artist a in artists)
{
Assert.Equal(nom, a.Name);
}
foreach(InfoTitle it in infoTitles)
{
Assert.Equal(nom, it.Name);
Assert.Equal(url, it.ImageURL);
Assert.Equal(description, it.Description);
Assert.Equal(info, it.Information);
Assert.Equal(genre, it.Genre);
}
foreach(CustomTitle ct in customTitles)
{
Assert.Equal(nom, ct.Name);
Assert.Equal(url, ct.ImageURL);
Assert.Equal(info, ct.Information);
Assert.Equal(path, ct.Path);
}
foreach(Playlist p in playlists)
{
Assert.Equal(nom, p.Name);
Assert.Equal(description, p.Description);
Assert.Equal(url, p.ImageURL);
}
}
}
}
Loading…
Cancel
Save