Exemple #1
0
    def test_get_next_asset_should_be_y_and_x(self):
        assets_helper.create_multiple(viewer.db_conn, [asset_x, asset_y])
        sch = viewer.Scheduler()

        expect_y = sch.get_next_asset()
        expect_x = sch.get_next_asset()

        self.assertEqual([expect_y, expect_x], [asset_y, asset_x])
Exemple #2
0
    def test_keep_same_position_on_playlist_update(self):
        assets_helper.create_multiple(viewer.db_conn, [asset_x, asset_y])
        sch = viewer.Scheduler()

        sch.get_next_asset()

        assets_helper.create(viewer.db_conn, asset_z)
        sch.update_playlist()
        self.assertEqual(sch.index, 1)
Exemple #3
0
    def test_playlist_should_be_updated_after_deadline_reached(self):
        assets_helper.create_multiple(viewer.db_conn, [asset_x, asset_y])
        _, deadline = viewer.generate_asset_list()

        fake = FakeDatetime(deadline + timedelta(seconds=1))
        viewer.datetime, assets_helper.get_time = fake, lambda: fake.utcnow()

        sch = viewer.Scheduler()
        sch.refresh_playlist()

        self.assertEqual([asset_x], sch.assets)
Exemple #4
0
    def test_counter_should_increment_after_full_asset_loop(self):
        settings.settings['shuffle_playlist'] = True
        assets_helper.create_multiple(viewer.db_conn, [asset_x, asset_y])
        sch = viewer.Scheduler()

        self.assertEqual(sch.counter, 0)

        sch.get_next_asset()
        sch.get_next_asset()

        self.assertEqual(sch.counter, 1)
Exemple #5
0
    def test_check_get_db_mtime(self):
        settings.settings['database'] = FAKE_DB_PATH
        with open(FAKE_DB_PATH, 'a'):
            os.utime(FAKE_DB_PATH, (0, 0))

        self.assertEqual(0, viewer.Scheduler().get_db_mtime())