コード例 #1
0
    def test_search_and_play_tvshow_next_episode(self):
        self.handler.handler({
            "type": "command",
            "commandType": "searchAndPlay",
            "filter": {
                u'genres': [],
                u'episode':
                None,
                u'roles': [],
                u'season':
                None,
                u'mediaType':
                None,
                u'titles': [
                    u'How I Met Your Mother', u'Goodbye How I Met Your Mother',
                    u'How I Met Your Mother: Extras',
                    u'How I Met Your Puppet Mother'
                ],
                u'actors': [],
                u'collections': [],
            }
        })
        run_one()

        current_item = self.player._get_current_item()

        self.assertEqual(current_item['type'], 'episode')
        self.assertEqual(current_item['tvshowid'], 21)
        self.assertEqual(current_item['id'], 487)
        self.assertEqual(current_item['season'], 4)
        self.assertEqual(current_item['episode'], 23)
コード例 #2
0
    def test_pause(self):
        self.handler.handler({
            "type": "command",
            "commandType": "pause",
        })
        run_one()

        self.assertEqual(self.player.speed, 0)
コード例 #3
0
 def test_search_and_display(self):
     self.handler.handler({
         "type": "command",
         "commandType": "searchAndDisplay",
         "filter": {
             'actors': ['Jason Statham'],
         }
     })
     run_one()
コード例 #4
0
    def _test_adjust_volume(self, volume, expected_volume):
        self.handler.handler({
            "type": "command",
            "commandType": "adjustVolume",
            "volume": volume,
        })
        run_one()

        kodi_volume = kodi_rpc.get_volume()
        self.assertEqual(kodi_volume, expected_volume)
コード例 #5
0
 def setUp(self):
     library_cache = LibraryCache()
     self.kodi = KodiInterface(library_cache)
     self.kodi.update_cache()
     self.player = CustomPlayer()
     self.player.set_kodi(self.kodi)
     self.kodi.find_and_play({
         'titles': ['Maze Runner'],
     })
     run_one()
コード例 #6
0
    def _test_set_mute(self, mute):
        self.handler.handler({
            "type": "command",
            "commandType": "setMute",
            "mute": mute,
        })
        run_one()

        kodi_muted = kodi_rpc.get_muted()
        self.assertEqual(kodi_muted, mute)
コード例 #7
0
    def test_search_and_play_not_found(self):
        self.handler.handler({
            "type": "command",
            "commandType": "searchAndPlay",
            "filter": {
                'titles': ['some made up name'],
            }
        })
        run_one()

        current_item = self.player._get_current_item()

        self.assertIsNone(current_item)
コード例 #8
0
    def test_search_and_play_movie_by_actor(self):
        self.handler.handler({
            "type": "command",
            "commandType": "searchAndPlay",
            "filter": {
                'actors': ['Jason Statham'],
            }
        })
        run_one()

        current_item = self.player._get_current_item()

        self.assertEqual(current_item['type'], 'movie')
        self.assertIn(current_item['id'], [202, 163, 48])
コード例 #9
0
    def test_search_and_play_movie_by_title_and_tvshow_mediatype(self):
        self.handler.handler({
            "type": "command",
            "commandType": "searchAndPlay",
            "filter": {
                'titles': ['Maze Runner'],
                'mediaType': 'tv show',
            }
        })
        run_one()

        current_item = self.player._get_current_item()

        self.assertIsNone(current_item)
コード例 #10
0
    def test_search_and_play_movie_by_title(self):
        self.handler.handler({
            "type": "command",
            "commandType": "searchAndPlay",
            "filter": {
                'titles': ['Maze Runner'],
            }
        })
        run_one()

        current_item = self.player._get_current_item()

        self.assertEqual(current_item['type'], 'movie')
        self.assertEqual(current_item['id'], 161)
コード例 #11
0
    def setUp(self):
        library_cache = LibraryCache()
        self.kodi = KodiInterface(library_cache)
        self.handler = Handler(self.kodi)

        self.handler.handler({
            "type": "command",
            "commandType": "setVolume",
            "volume": 50,
        })
        run_one()

        self.handler.handler({
            "type": "command",
            "commandType": "setMute",
            "volume": False,
        })
        run_one()
コード例 #12
0
    def test_previous_item_cross_season(self):
        self.kodi.find_and_play({
            'titles': ['How I Met Your Mother'],
            'season': '2',
            'episode': '1',
        })
        run_one()

        self.assertTrue(self.kodi.previous_item())
        run_one()

        current_item = self.player._get_current_item()

        self.assertEqual(current_item['type'], 'episode')
        self.assertEqual(current_item['tvshowid'], 21)
        self.assertEqual(current_item['id'], 422)
        self.assertEqual(current_item['season'], 1)
        self.assertEqual(current_item['episode'], 22)
コード例 #13
0
    def test_no_next_item(self):
        self.kodi.find_and_play({
            'titles': ['How I Met Your Mother'],
            'season': '6',
            'episode': '24',
        })

        run_one()

        self.assertFalse(self.kodi.next_item())

        current_item = self.player._get_current_item()

        self.assertEqual(current_item['type'], 'episode')
        self.assertEqual(current_item['tvshowid'], 21)
        self.assertEqual(current_item['id'], 536)
        self.assertEqual(current_item['season'], 6)
        self.assertEqual(current_item['episode'], 24)
コード例 #14
0
    def test_stop(self):
        self.handler.handler({
            "type": "command",
            "commandType": "stop",
        })
        run_one()

        self.assertEqual(self.player.speed, 0)
        self.assertIsNone(self.player.current_item)

        self.handler.handler({
            "type": "command",
            "commandType": "resume",
        })
        run_one()

        self.assertEqual(self.player.speed, 0)
        self.assertIsNone(self.player.current_item)
コード例 #15
0
    def test_search_and_play_tvshow(self):
        self.handler.handler({
            "type": "command",
            "commandType": "searchAndPlay",
            "filter": {
                'titles': ['How I Met Your Mother'],
                'season': '2',
                'episode': '1',
            }
        })
        run_one()

        current_item = self.player._get_current_item()

        self.assertEqual(current_item['type'], 'episode')
        self.assertEqual(current_item['tvshowid'], 21)
        self.assertEqual(current_item['id'], 423)
        self.assertEqual(current_item['season'], 2)
        self.assertEqual(current_item['episode'], 1)
コード例 #16
0
    def test_previous_item(self):
        self.kodi.find_and_play({
            'titles': ['How I Met Your Mother'],
            'season': '2',
            'episode': '2',
        })

        self.handler.handler({
            "type": "command",
            "commandType": "previous",
        })
        run_one()

        current_item = self.player._get_current_item()

        self.assertEqual(current_item['type'], 'episode')
        self.assertEqual(current_item['tvshowid'], 21)
        self.assertEqual(current_item['id'], 423)
        self.assertEqual(current_item['season'], 2)
        self.assertEqual(current_item['episode'], 1)
コード例 #17
0
    def test_search_and_play_movie_by_genre(self):
        self.handler.handler({
            "type": "command",
            "commandType": "searchAndPlay",
            "filter": {
                "mediaType":
                "movie",
                "genres": [
                    "film de science-fiction",
                    "science fiction",
                    "Science fiction",
                    "Science",
                    "Science & Nature Docs",
                ]
            }
        })
        run_one()

        current_item = self.player._get_current_item()

        self.assertEqual(current_item['type'], 'movie')