コード例 #1
0
    def _create_player_from_selected(self) -> None:
        """Creates player(s) based on the selected items and adds to the queue.

        If the active menu is the feed menu, then this will create players for
        all episodes in the selected feed. If the active menu is the episode
        menu, this will simply create a single player.

        This method will not clear the queue prior to adding the new player(s),
        nor will it play the episodes after running.
        """
        if self._active_window == 0:
            feed = self._feed_menu.item
            if feed is not None:
                for episode in self._display.database.episodes(feed):
                    player = Player.create_instance(
                        self._display.AVAILABLE_PLAYERS, str(episode),
                        episode.get_playable(), episode)
                    self._display.queue.add(player)
        elif self._active_window == 1:
            episode = self._episode_menu.item
            if episode is not None:
                player = Player.create_instance(
                    self._display.AVAILABLE_PLAYERS, str(episode),
                    episode.get_playable(), episode)
                self._display.queue.add(player)
コード例 #2
0
 def _restore_queue(self) -> None:
     """Recreate players in queue from the database."""
     for episode in self.database.queue():
         player = Player.create_instance(self.AVAILABLE_PLAYERS,
                                         str(episode),
                                         episode.get_playable(), episode)
         self.queue.add(player)
コード例 #3
0
ファイル: test_player.py プロジェクト: swipswaps/castero
def test_player_create_instance_dep_error_indirect():
    Config.data = {'player': ''}
    SomePlayer.check_dependencies.side_effect = PlayerDependencyError()
    with pytest.raises(PlayerDependencyError):
        Player.create_instance(available_players, "t", "p", episode)
        assert SomePlayer.check_dependencies.call_count == 1
コード例 #4
0
ファイル: test_player.py プロジェクト: swipswaps/castero
def test_player_create_instance_success_indirect():
    Config.data = {'player': ''}
    Player.create_instance(available_players, "t", "p", episode)
    SomePlayer.check_dependencies.assert_called = 2
    SomePlayer.assert_called_with("t", "p", episode)
コード例 #5
0
ファイル: test_player.py プロジェクト: swipswaps/castero
def test_player_create_instance_success_direct():
    Config.data = {'player': 'someplayer'}
    Player.create_instance(available_players, "t", "p", episode)
    assert SomePlayer.check_dependencies.call_count == 1
    SomePlayer.assert_called_with("t", "p", episode)