def test_tvmaze_show__embed_episodes(): expected_show_keys = [ "_embedded", "_links", "externals", "genres", "id", "image", "language", "name", "network", "officialSite", "premiered", "rating", "runtime", "schedule", "status", "summary", "type", "updated", "url", "webChannel", "weight", ] result = tvmaze_show(id_tvmaze=META["id_tvmaze"], embed_episodes=True) assert result for expected_show_key in expected_show_keys: assert expected_show_key in result assert result["id"] == META["id_tvmaze"] assert result["name"] == META["series"]
def test_tvmaze_show(): result = tvmaze_show(id_tvmaze=META["id_tvmaze"]) assert result for expected_show_key in EXPECTED_SHOW_KEYS: assert expected_show_key in result assert result["id"] == META["id_tvmaze"] assert result["name"] == META["series"]
def _lookup_with_id( self, id_tvmaze: Optional[str], id_tvdb: Optional[str], season: Optional[int], episode: Optional[int], ) -> Iterator[MetadataEpisode]: assert id_tvmaze or id_tvdb if id_tvmaze: query_id_tvmaze = id_tvmaze series_data = tvmaze_show(id_tvmaze) query_id_tvdb = series_data["externals"]["thetvdb"] else: series_data = tvmaze_show_lookup(id_tvdb=id_tvdb) query_id_tvdb = id_tvdb query_id_tvmaze = series_data["id"] episode_data = tvmaze_show_episodes_list(query_id_tvmaze) for episode_entry in episode_data: meta = self._transform_meta(query_id_tvmaze, query_id_tvdb, series_data, episode_entry) if season is not None and season != meta.season: continue if episode is not None and episode != meta.episode: continue yield meta
def _lookup_with_tmaze_id_and_season_and_episode( self, id_tvmaze: str, season: Optional[int], episode: Optional[int]) -> Generator[MetadataEpisode, None, None]: series_data = tvmaze_show(id_tvmaze) episode_data = tvmaze_episode_by_number(id_tvmaze, season, episode) id_tvdb = series_data["externals"]["thetvdb"] yield self._transform_meta(id_tvmaze, id_tvdb, series_data, episode_data)
def _lookup_with_id_and_date( self, id_tvmaze: Optional[str], id_tvdb: Optional[str], air_date: date) -> Generator[MetadataEpisode, None, None]: assert id_tvmaze or id_tvdb if id_tvmaze: series_data = tvmaze_show(id_tvmaze) id_tvdb = series_data["externals"]["thetvdb"] else: series_data = tvmaze_show_lookup(id_tvdb=id_tvdb) id_tvmaze = series_data["id"] episode_data = tvmaze_episodes_by_date(id_tvmaze, air_date) for episode_entry in episode_data: yield self._transform_meta(id_tvmaze, id_tvdb, series_data, episode_entry)