public void When_MovePrevious_SongListHasPreviousSongs_ReturnsCorrectSongs() { // Arrange var songList = new SongList { PlayMode = _noShuffleNoLoop, Playlist = _bigPlaylist }; for (int i = 0; i < _nbSongs; i++) { songList.MoveNext(); } // Act var previousSongs = new List <SongDto>(); for (int i = 0; i < _nbSongs; i++) { var song = songList.MovePrevious().CurrentSong; previousSongs.Add(song); } // Assert for (int i = 0; i < _nbSongs; i++) { Assert.AreEqual($"{_songPrefixBig}{_nbSongs - 1 - i}", previousSongs[i].Title); } }
public void When_PlayModeSet_MovePreviousFollowingSongsContainsCorrectSongs() { // Arrange int goBack = 5; var songList = new SongList { PlayMode = _noShuffleLoopPlaylist, Playlist = _bigPlaylist }; for (int i = 0; i < _nbSongs; i++) // play some songs { songList.MoveNext(); } for (int i = 0; i < goBack; i++) // go back 5 songs { songList.MovePrevious(); } // Act songList.PlayMode = _noShuffleNoLoop; var songs = songList.GetFollowingSongs(_queueSize); // Assert for (int i = _nbSongs - goBack; i < _nbSongs; i++) { Assert.AreEqual($"{_songPrefixBig}{i}", songs[i - (_nbSongs - goBack)].Title); } }
public void When_CurrentSong_HasNoPreviousSongs_MovePreviousReturnsNull() { // Arrange var songList = new SongList { PlayMode = _noShuffleLoopPlaylist, Playlist = _smallPlaylist }; // Act var actual = songList.MovePrevious().CurrentSong; // Assert Assert.AreEqual(null, actual); }
public void When_MovePrevious_SongListHasNoPreviousSongs_ReturnsNull() { // Arrange var songList = new SongList { PlayMode = _noShuffleLoopPlaylist, Playlist = _bigPlaylist }; // Act var song = songList.MovePrevious().CurrentSong; // Assert Assert.IsNull(song); }
public void When_MovePrevious_CalledTwice_SecondCallDoesNothing() { // Arrange var songList = new SongList { PlayMode = _noShuffleNoLoop, Playlist = _bigPlaylist }; var expected = songList.CurrentSong; // Act var actual = songList.MovePrevious().MovePrevious().MoveNext().CurrentSong; // Assert Assert.AreEqual(expected, actual); }
public void When_CurrentSongGet_HasFollowingSongs_MovePreviousReturnsCorrectSong() { // Arrange var songList = new SongList { PlayMode = _noShuffleLoopPlaylist, Playlist = _smallPlaylist }; // Act var expected = songList.MoveNext().CurrentSong; songList.MoveNext(); var actual = songList.MovePrevious().CurrentSong; // Assert Assert.AreEqual(expected, actual); }