aboutsummaryrefslogtreecommitdiffstats
path: root/playlist_unittest.py
diff options
context:
space:
mode:
Diffstat (limited to 'playlist_unittest.py')
-rw-r--r--playlist_unittest.py53
1 files changed, 31 insertions, 22 deletions
diff --git a/playlist_unittest.py b/playlist_unittest.py
index 06785cc..ff5a79c 100644
--- a/playlist_unittest.py
+++ b/playlist_unittest.py
@@ -1,67 +1,76 @@
from playlist import Playlist
-class MockPlayer:
- def __init__(self):
- self.songSetByCallback = None
-
- def setCurrentSong(self, path):
- self.songSetByCallback = path
-
def test_addAndSelectOneSong():
songAddedByUser = "/path/to/song"
- mockPlayer = MockPlayer()
+ songSetByCallback = None
+
+ def testCallback(song):
+ nonlocal songSetByCallback
+ songSetByCallback = song
- uut = Playlist(mockPlayer)
+ uut = Playlist(testCallback)
uut.addSong(songAddedByUser)
uut.setCurrentSong(0)
- assert songAddedByUser == mockPlayer.songSetByCallback
+ assert songAddedByUser == songSetByCallback
assert uut.getCurrentSong() == songAddedByUser
assert uut.getSongs() == [songAddedByUser]
def test_addTwoSongsAndSelectBoth():
songAddedByUser = ["/path/to/song", "/path/to/second/song"]
- mockPlayer = MockPlayer()
+ songSetByCallback = None
- uut = Playlist(mockPlayer)
+ def testCallback(song):
+ nonlocal songSetByCallback
+ songSetByCallback = song
+
+ uut = Playlist(testCallback)
uut.addSong(songAddedByUser[0])
uut.addSong(songAddedByUser[1])
assert uut.getSongs() == songAddedByUser
uut.setCurrentSong(0)
- assert songAddedByUser[0] == mockPlayer.songSetByCallback
+ assert songAddedByUser[0] == songSetByCallback
assert uut.getCurrentSong() == songAddedByUser[0]
uut.setCurrentSong(1)
- assert songAddedByUser[1] == mockPlayer.songSetByCallback
+ assert songAddedByUser[1] == songSetByCallback
assert uut.getCurrentSong() == songAddedByUser[1]
def test_firstAddedSongIsNotSelected():
songAddedByUser = "/path/to/song"
- mockPlayer = MockPlayer()
+ songSetByCallback = None
+
+ def testCallback(song):
+ nonlocal songSetByCallback
+ songSetByCallback = song
- uut = Playlist(mockPlayer)
+ uut = Playlist(testCallback)
uut.addSong(songAddedByUser)
- assert mockPlayer.songSetByCallback == None
+ assert songSetByCallback == None
assert uut.getCurrentSong() == None
assert uut.getSongs() == [songAddedByUser]
def test_invalidSongSelection():
songAddedByUser = "/path/to/song"
- mockPlayer = MockPlayer()
+ songSetByCallback = None
+
+ def testCallback(song):
+ nonlocal songSetByCallback
+ songSetByCallback = song
- uut = Playlist(mockPlayer)
- assert mockPlayer.songSetByCallback == None
+ uut = Playlist(testCallback)
+ assert songSetByCallback == None
assert uut.getCurrentSong() == None
uut.setCurrentSong(10)
- assert mockPlayer.songSetByCallback == None
+ assert songSetByCallback == None
assert uut.getCurrentSong() == None
uut.addSong(songAddedByUser)
uut.setCurrentSong(10)
- assert mockPlayer.songSetByCallback == None
+ assert songSetByCallback == None
assert uut.getCurrentSong() == None
assert uut.getSongs() == [songAddedByUser]