fix: prevent overwriting saved queue with empty track lists in repository and music player

This commit is contained in:
mmacierzanka committed 2026-09-11 01:29:31 +02:00
1 parent 06238b0438
commit 9143c6029a
4 files changed
+56 -8

No files matched your search

+16
View File
@@ -20,6 +20,22 @@ class QueueRepositoryTest(unittest.TestCase):
self.assertTrue((Path(directory) / "10.json").exists())
self.assertTrue((Path(directory) / "20.json").exists())
def test_save_empty_tracks_does_nothing(self):
with tempfile.TemporaryDirectory() as directory:
repository = QueueRepository(directory)
tracks = [{"id": "first", "title": "First", "plays_left": 2}]
repository.save(10, tracks)
self.assertEqual(repository.load(10), tracks)
# Próba zapisania pustej listy nie powinna nadpisać poprzedniej
repository.save(10, [])
self.assertEqual(repository.load(10), tracks)
# Zapis pustej kolejki dla nowego serwera nie powinien tworzyć pliku
repository.save(20, [])
self.assertFalse(repository.exists(20))
if __name__ == "__main__":
unittest.main()