diff --git a/src/main/java/device/cdPlayer/CDPlayer.java b/src/main/java/device/cdPlayer/CDPlayer.java index 8d4a53b..7742fcb 100644 --- a/src/main/java/device/cdPlayer/CDPlayer.java +++ b/src/main/java/device/cdPlayer/CDPlayer.java @@ -23,6 +23,8 @@ public class CDPlayer implements Device { private CDWechseler cdWechseler=null; private String activeSource="CDDrive";//or CDWechseler + private ListfavoriteSongs=new ArrayList<>(); + @Override public void louder() { if(volume < 100) { @@ -164,6 +166,9 @@ public class CDPlayer implements Device { int nextIndex=(indexOfLoadedCD+1)%CDList.size(); this.loadedCD=CDList.get(nextIndex); } + public void addToFavoriteSongs(String song){ + favoriteSongs.add(song); + } //Getters, Setters und SupportMethods public void setCD(CD _loadedCD) { @@ -215,4 +220,8 @@ public class CDPlayer implements Device { public CDWechseler getCdWechseler() { return cdWechseler; } + + public List getFavoriteSongs() { + return favoriteSongs; + } } diff --git a/src/test/java/device/cdPlayer/CDPlayerTest.java b/src/test/java/device/cdPlayer/CDPlayerTest.java index a3e3ebf..2468c0c 100644 --- a/src/test/java/device/cdPlayer/CDPlayerTest.java +++ b/src/test/java/device/cdPlayer/CDPlayerTest.java @@ -491,6 +491,27 @@ 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); + + } + static Stream addToFavoriteSongsData () { + String[] audioPlayList = new String[]{"Audio 01", "Audio 02", "Audio 03", "Audio 04", "Audio 05"}; + CD audioCD1 = new CD("Audio", "PopMusic", audioPlayList, "XAc20044"); + CD audioCD2=new CD("Audio","RockMusic",audioPlayList,"BLXPP78"); + CDPlayer cdPlayer1 = new CDPlayer(); + cdPlayer1.changePlaySource(); + cdPlayer1.loadCDWechseler(audioCD1, 0); + cdPlayer1.loadCDWechseler(audioCD2, 1); + + return Stream.of( + Arguments.of("[addToFavoriteSongs() by addingOneSong] => favoriteSongsShouldReturnsThatAddedSong", "Case1", cdPlayer1, null) + ); + } } \ No newline at end of file