From 9e5960da8785a44239d489fa1b86a4f739423d8f Mon Sep 17 00:00:00 2001 From: JPANZO Date: Thu, 17 Feb 2022 21:14:48 +0100 Subject: [PATCH] Method addToFavoriteSongs of CDPlayer tested on addingDuplicatedSong -> SongShouldNotBeAdded. --- src/main/java/device/cdPlayer/CDPlayer.java | 4 +++- .../java/device/cdPlayer/CDPlayerTest.java | 19 ++++++++++++++----- 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/src/main/java/device/cdPlayer/CDPlayer.java b/src/main/java/device/cdPlayer/CDPlayer.java index 7742fcb..b6ccdab 100644 --- a/src/main/java/device/cdPlayer/CDPlayer.java +++ b/src/main/java/device/cdPlayer/CDPlayer.java @@ -167,7 +167,9 @@ public class CDPlayer implements Device { this.loadedCD=CDList.get(nextIndex); } public void addToFavoriteSongs(String song){ - favoriteSongs.add(song); + if(!(favoriteSongs.contains(song))) { + favoriteSongs.add(song); + } } //Getters, Setters und SupportMethods diff --git a/src/test/java/device/cdPlayer/CDPlayerTest.java b/src/test/java/device/cdPlayer/CDPlayerTest.java index 2468c0c..9f53724 100644 --- a/src/test/java/device/cdPlayer/CDPlayerTest.java +++ b/src/test/java/device/cdPlayer/CDPlayerTest.java @@ -494,10 +494,18 @@ class CDPlayerTest { @ParameterizedTest @MethodSource("addToFavoriteSongsData") void addToFavoriteSongs(String testName,String cases, CDPlayer _cdPlayer,Exception exception) { - String myFavoriteSong=_cdPlayer.getCD().getPlayList()[0]; - _cdPlayer.addToFavoriteSongs(myFavoriteSong); - assertThat(_cdPlayer.getFavoriteSongs().get(0)).describedAs(testName).isEqualTo(myFavoriteSong); - + if(cases.equals("Case1")) { + String myFavoriteSong = _cdPlayer.getCD().getPlayList()[0]; + _cdPlayer.addToFavoriteSongs(myFavoriteSong); + assertThat(_cdPlayer.getFavoriteSongs().get(0)).describedAs(testName).isEqualTo(myFavoriteSong); + } + if(cases.equals("Case2")) { + String myFavoriteSong1 = _cdPlayer.getCD().getPlayList()[0]; + String myFavoriteSong2 = _cdPlayer.getCD().getPlayList()[0]; + _cdPlayer.addToFavoriteSongs(myFavoriteSong1); + _cdPlayer.addToFavoriteSongs(myFavoriteSong2); + assertThat(_cdPlayer.getFavoriteSongs().size()>1).describedAs(testName).isNotEqualTo(true); + } } static Stream addToFavoriteSongsData () { String[] audioPlayList = new String[]{"Audio 01", "Audio 02", "Audio 03", "Audio 04", "Audio 05"}; @@ -510,7 +518,8 @@ class CDPlayerTest { cdPlayer1.loadCDWechseler(audioCD2, 1); return Stream.of( - Arguments.of("[addToFavoriteSongs() by addingOneSong] => favoriteSongsShouldReturnsThatAddedSong", "Case1", cdPlayer1, null) + Arguments.of("[addToFavoriteSongs() by addingOneSong] => favoriteSongsShouldReturnsThatAddedSong", "Case1", cdPlayer1, null), + Arguments.of("[addToFavoriteSongs() by addingDuplicatedSong] => SongShouldNotBeAdded", "Case2", cdPlayer1, null) ); }