Ejemplo n.º 1
0
 def _save_state(self):
     return TracklistState(tl_tracks=self._tl_tracks,
                           next_tlid=self._next_tlid,
                           consume=self.get_consume(),
                           random=self.get_random(),
                           repeat=self.get_repeat(),
                           single=self.get_single())
Ejemplo n.º 2
0
    def test_load(self):
        old_version = self.core.tracklist.get_version()
        target = TracklistState(
            consume=False,
            repeat=True,
            single=True,
            random=False,
            next_tlid=12,
            tl_tracks=self.tl_tracks,
        )
        coverage = ["mode", "tracklist"]
        self.core.tracklist._load_state(target, coverage)
        assert self.core.tracklist.get_consume() is False
        assert self.core.tracklist.get_repeat() is True
        assert self.core.tracklist.get_single() is True
        assert self.core.tracklist.get_random() is False
        assert 12 == self.core.tracklist._next_tlid
        assert 4 == self.core.tracklist.get_length()
        assert self.tl_tracks == self.core.tracklist.get_tl_tracks()
        assert self.core.tracklist.get_version() > old_version

        # after load, adding more tracks must be possible
        self.core.tracklist.add(uris=[self.tracks[1].uri])
        assert 13 == self.core.tracklist._next_tlid
        assert 5 == self.core.tracklist.get_length()
Ejemplo n.º 3
0
 def test_save(self):
     tl_tracks = self.core.tracklist.add(uris=[t.uri for t in self.tracks])
     consume = True
     next_tlid = len(tl_tracks) + 1
     self.core.tracklist.set_consume(consume)
     target = TracklistState(consume=consume,
                             repeat=False,
                             single=False,
                             random=False,
                             next_tlid=next_tlid,
                             tl_tracks=tl_tracks)
     value = self.core.tracklist._save_state()
     self.assertEqual(target, value)
Ejemplo n.º 4
0
 def test_load_tracklist_only(self):
     old_version = self.core.tracklist.get_version()
     target = TracklistState(consume=False,
                             repeat=True,
                             single=True,
                             random=False,
                             next_tlid=12,
                             tl_tracks=self.tl_tracks)
     coverage = ['tracklist']
     self.core.tracklist._load_state(target, coverage)
     self.assertEqual(False, self.core.tracklist.get_consume())
     self.assertEqual(False, self.core.tracklist.get_repeat())
     self.assertEqual(False, self.core.tracklist.get_single())
     self.assertEqual(False, self.core.tracklist.get_random())
     self.assertEqual(12, self.core.tracklist._next_tlid)
     self.assertEqual(4, self.core.tracklist.get_length())
     self.assertEqual(self.tl_tracks, self.core.tracklist.get_tl_tracks())
     self.assertGreater(self.core.tracklist.get_version(), old_version)
Ejemplo n.º 5
0
 def test_load_tracklist_only(self):
     old_version = self.core.tracklist.get_version()
     target = TracklistState(
         consume=False,
         repeat=True,
         single=True,
         random=False,
         next_tlid=12,
         tl_tracks=self.tl_tracks,
     )
     coverage = ["tracklist"]
     self.core.tracklist._load_state(target, coverage)
     assert self.core.tracklist.get_consume() is False
     assert self.core.tracklist.get_repeat() is False
     assert self.core.tracklist.get_single() is False
     assert self.core.tracklist.get_random() is False
     assert 12 == self.core.tracklist._next_tlid
     assert 4 == self.core.tracklist.get_length()
     assert self.tl_tracks == self.core.tracklist.get_tl_tracks()
     assert self.core.tracklist.get_version() > old_version
Ejemplo n.º 6
0
    def test_load(self):
        old_version = self.core.tracklist.get_version()
        target = TracklistState(consume=False,
                                repeat=True,
                                single=True,
                                random=False,
                                next_tlid=12,
                                tl_tracks=self.tl_tracks)
        coverage = ['mode', 'tracklist']
        self.core.tracklist._load_state(target, coverage)
        self.assertEqual(False, self.core.tracklist.get_consume())
        self.assertEqual(True, self.core.tracklist.get_repeat())
        self.assertEqual(True, self.core.tracklist.get_single())
        self.assertEqual(False, self.core.tracklist.get_random())
        self.assertEqual(12, self.core.tracklist._next_tlid)
        self.assertEqual(4, self.core.tracklist.get_length())
        self.assertEqual(self.tl_tracks, self.core.tracklist.get_tl_tracks())
        self.assertGreater(self.core.tracklist.get_version(), old_version)

        # after load, adding more tracks must be possible
        self.core.tracklist.add(uris=[self.tracks[1].uri])
        self.assertEqual(13, self.core.tracklist._next_tlid)
        self.assertEqual(5, self.core.tracklist.get_length())
Ejemplo n.º 7
0
 def test_tracks(self):
     tracks = (TlTrack(), TlTrack())
     result = TracklistState(tl_tracks=tracks)
     self.assertEqual(result.tl_tracks, tracks)
     with self.assertRaises(AttributeError):
         result.tl_tracks = None
Ejemplo n.º 8
0
 def test_next_tlid(self):
     val = 654
     result = TracklistState(next_tlid=val)
     self.assertEqual(result.next_tlid, val)
     with self.assertRaises(AttributeError):
         result.next_tlid = None
Ejemplo n.º 9
0
 def test_single_true(self):
     val = True
     result = TracklistState(single=val)
     self.assertEqual(result.single, val)
     with self.assertRaises(AttributeError):
         result.single = None
Ejemplo n.º 10
0
 def test_random_true(self):
     val = True
     result = TracklistState(random=val)
     self.assertEqual(result.random, val)
     with self.assertRaises(AttributeError):
         result.random = None
Ejemplo n.º 11
0
 def test_consume_true(self):
     val = True
     result = TracklistState(consume=val)
     self.assertEqual(result.consume, val)
     with self.assertRaises(AttributeError):
         result.repeat = None
Ejemplo n.º 12
0
 def test_repeat_false(self):
     repeat = False
     result = TracklistState(repeat=repeat)
     self.assertEqual(result.repeat, repeat)
     with self.assertRaises(AttributeError):
         result.repeat = None