Ejemplo n.º 1
0
def test_tvmaze_show_search__success():
    results = tvmaze_show_search(META["series"])
    expected_top_level_keys = {"score", "show"}
    assert results
    result = results[0]
    assert expected_top_level_keys == set(result)
    for expected_show_key in EXPECTED_SHOW_KEYS:
        assert expected_show_key in result["show"]
    assert result["show"]["id"] == META["id_tvmaze"]
    assert result["show"]["name"] == META["series"]
Ejemplo n.º 2
0
 def _search(self, series: str, season: Optional[int],
             episode: Optional[int]) -> Iterator[MetadataEpisode]:
     assert series
     series_data = tvmaze_show_search(series)
     for idx, series_entry in enumerate(series_data):
         if idx >= 3:
             break
         series_entry = series_entry["show"]
         id_tvmaze = series_entry["id"]
         episode_data = tvmaze_show_episodes_list(id_tvmaze)
         for episode_entry in episode_data:
             id_tvdb = series_entry["externals"]["thetvdb"]
             meta = self._transform_meta(id_tvmaze, id_tvdb, series_entry,
                                         episode_entry)
             if season is not None and season != meta.season:
                 continue
             if episode is not None and episode != meta.episode:
                 continue
             yield meta
Ejemplo n.º 3
0
 def _search_with_season_and_episode(
         self, series: str, season: Optional[int],
         episode: Optional[int]) -> Generator[MetadataEpisode, None, None]:
     assert season
     series_data = tvmaze_show_search(series)
     for idx, series_entry in enumerate(series_data):
         if idx >= 3:
             break
         series_entry = series_entry["show"]
         id_tvmaze = series_entry["id"]
         try:
             episode_entry = tvmaze_episode_by_number(
                 id_tvmaze, season, episode)
         except MnamerNotFoundException:
             continue
         meta = self._transform_meta(id_tvmaze, None, series_entry,
                                     episode_entry)
         if season is not None and season != meta.season:
             continue
         if episode is not None and episode != meta.episode:
             continue
         yield meta
Ejemplo n.º 4
0
def test_tvmaze_show_search__no_hits():
    with pytest.raises(MnamerNotFoundException):
        tvmaze_show_search(JUNK_TEXT)