예제 #1
0
    def test_init(self, number, should_raise):
        if should_raise:
            with pytest.raises(Exception) as e:
                LostFilmSeason(number)
            message = six.text_type(e.value)

            assert 'int' in message
            assert 'tuple[int, int]' in six.text_type(e.value)
            assert 'SpecialSeason' in six.text_type(e.value)
        else:
            LostFilmSeason(number)
예제 #2
0
    def test_add_episode_success(self):
        episode1 = LostFilmEpisode(1, 1)
        episode2 = LostFilmEpisode(1, 2)

        season = LostFilmSeason(1)

        season.add_episode(episode1)
        season.add_episode(episode2)

        assert len(season) == 2

        assert season[1] == episode1
        assert season[2] == episode2

        assert list(season) == [episode1, episode2]
        assert list(reversed(season)) == [episode2, episode1]
예제 #3
0
    def test_add_season_success(self):
        season1 = LostFilmSeason(1)
        season2 = LostFilmSeason(2)

        show = LostFilmShow('Show', u'Шоу', 'Show', 2017)

        assert show.last_season is None
        assert show.seasons_url == 'https://www.lostfilm.tv/series/Show/seasons'

        show.add_season(season1)
        show.add_season(season2)

        assert len(show) == 2

        assert show[1] == season1
        assert show[2] == season2
        assert show.last_season == season2

        assert list(show) == [season1, season2]
        assert list(reversed(show)) == [season2, season1]
예제 #4
0
    def test_special_season_shouldnot_became_last_season(self):
        season1 = LostFilmSeason(SpecialSeasons.Additional)

        show = LostFilmShow('Show', u'Шоу', 'Show', 2017)

        assert show.last_season is None
        assert show.seasons_url == 'https://www.lostfilm.tv/series/Show/seasons'

        show.add_season(season1)

        assert show.last_season is None

        assert len(show) == 1

        assert show[SpecialSeasons.Additional] == season1

        assert list(show) == [season1]
        assert list(reversed(show)) == [season1]
예제 #5
0
    def test_add_episode_failed(self):
        season1 = LostFilmSeason(2)

        show = LostFilmShow('Show', u'Шоу', 'Show', 2017)

        assert show.seasons_url == 'https://www.lostfilm.tv/series/Show/seasons'

        show.add_season(season1)
        with pytest.raises(Exception) as e:
            show.add_season(season1)
        message = six.text_type(e.value)
        assert six.text_type(season1.number) in message
        assert 'already' in message

        assert len(show) == 1

        assert show[2] == season1
        assert show.last_season == season1

        assert list(show) == [season1]
        assert list(reversed(show)) == [season1]
예제 #6
0
    def test_add_episode_failed(self):
        episode1 = LostFilmEpisode(2, 1)

        season = LostFilmSeason(2)

        season.add_episode(episode1)
        with pytest.raises(Exception) as e:
            season.add_episode(episode1)
        message = six.text_type(e.value)
        assert six.text_type(episode1.number) in message
        assert six.text_type(season.number) in message
        assert 'already' in message

        assert len(season) == 1

        assert season[1] == episode1

        assert list(season) == [episode1]
        assert list(reversed(season)) == [episode1]
예제 #7
0
 def test_is_special_season_success(self, number, result):
     episode = LostFilmSeason(number)
     assert episode.is_special_season() == result