aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--solo-tool-project/src/solo_tool/session_manager.py2
-rw-r--r--solo-tool-project/src/solo_tool/solo_tool.py13
-rw-r--r--solo-tool-project/test/fixtures.py4
-rw-r--r--solo-tool-project/test/solo_tool_songs_integrationtest.py7
4 files changed, 7 insertions, 19 deletions
diff --git a/solo-tool-project/src/solo_tool/session_manager.py b/solo-tool-project/src/solo_tool/session_manager.py
index 4f831ba..bf6e218 100644
--- a/solo-tool-project/src/solo_tool/session_manager.py
+++ b/solo-tool-project/src/solo_tool/session_manager.py
@@ -25,7 +25,7 @@ class SessionManager(Protocol):
@staticmethod
def _dict2st(session: dict, songPool: str, player) -> SoloTool:
- st = SoloTool(songPool, player=player)
+ st = SoloTool(player=player)
for i, entry in enumerate(session):
songPath = entry["path"]
diff --git a/solo-tool-project/src/solo_tool/solo_tool.py b/solo-tool-project/src/solo_tool/solo_tool.py
index 92b5595..63fb7f9 100644
--- a/solo-tool-project/src/solo_tool/solo_tool.py
+++ b/solo-tool-project/src/solo_tool/solo_tool.py
@@ -1,12 +1,10 @@
import os
-from pathlib import Path
from .notifier import Notifier
from .player_mpv import Player
class SoloTool:
- def __init__(self, songPool: str, player=None):
- self._songPool = Path(songPool)
+ def __init__(self, player=None):
self._player = Player() if player is None else player
self._notifier = Notifier(self._player)
self._songs = []
@@ -21,7 +19,7 @@ class SoloTool:
previousSong = self._song
self._song = index
self._player.pause()
- self._player.setCurrentSong(self._songPool / self._songs[index])
+ self._player.setCurrentSong(self._songs[index])
self._notifier.notify(Notifier.CURRENT_SONG_EVENT, index)
previousKp = self._keyPoint
@@ -40,13 +38,10 @@ class SoloTool:
def songs(self) -> list[str]:
return self._songs.copy()
- def addSong(self, fileName: str) -> None:
- path = self._songPool / fileName
- if not os.path.isfile(path):
- raise FileNotFoundError(path)
+ def addSong(self, path: str) -> None:
if path in self._songs:
return
- self._songs.append(fileName)
+ self._songs.append(path)
self._keyPoints.append([])
self._notifier.notify(Notifier.SONG_LIST_EVENT, self.songs)
if self.song is None:
diff --git a/solo-tool-project/test/fixtures.py b/solo-tool-project/test/fixtures.py
index e63d363..3306388 100644
--- a/solo-tool-project/test/fixtures.py
+++ b/solo-tool-project/test/fixtures.py
@@ -22,8 +22,8 @@ def sessionPath(tmp_path):
return path
@pytest.fixture
-def soloTool(mockPlayer, songPool):
- return SoloTool(songPool, player=mockPlayer)
+def soloTool(mockPlayer):
+ return SoloTool(player=mockPlayer)
@pytest.fixture
def testSongs(songPool):
diff --git a/solo-tool-project/test/solo_tool_songs_integrationtest.py b/solo-tool-project/test/solo_tool_songs_integrationtest.py
index 6030d19..0acfc2b 100644
--- a/solo-tool-project/test/solo_tool_songs_integrationtest.py
+++ b/solo-tool-project/test/solo_tool_songs_integrationtest.py
@@ -66,13 +66,6 @@ def test_songAdditionEdgeCases(uut, mockPlayer, testSongs):
assert mockPlayer.currentSong == testSongs[0]
assert uut.songs == testSongs
- # Songs must exist in the filesystem
- with pytest.raises(FileNotFoundError):
- uut.addSong("/not/a/real/file")
- assert uut.song == 0
- assert mockPlayer.currentSong == testSongs[0]
- assert uut.songs == testSongs
-
def test_songSelectionNotification(uut, testSongs):
selectionCalled = False
selectionValue = None