Esempio n. 1
0
def test_query_episode(episodes):
    video = episodes['dallas_2012_s01e03']
    expected_subtitles = {'264417', '256843', '256842'}
    with SubsCenterProvider() as provider:
        subtitles = provider.query(series=video.series, season=video.season, episode=video.episode)
    assert len(subtitles) == len(expected_subtitles)
    assert {subtitle.id for subtitle in subtitles} == expected_subtitles
Esempio n. 2
0
def test_query_movie(movies):
    video = movies['enders_game']
    expected_subtitles = {'267118', '266898', '267140'}
    with SubsCenterProvider() as provider:
        subtitles = provider.query(title=video.title)
    assert len(subtitles) == len(expected_subtitles)
    assert {subtitle.id for subtitle in subtitles} == expected_subtitles
Esempio n. 3
0
def test_download_subtitle(movies):
    video = movies['enders_game']
    languages = {Language('heb')}
    with SubsCenterProvider() as provider:
        subtitles = provider.list_subtitles(video, languages)
        provider.download_subtitle(subtitles[0])
    assert subtitles[0].content is not None
    assert subtitles[0].is_valid() is True
Esempio n. 4
0
def test_search_url_titles_episode(episodes):
    video = episodes['dallas_2012_s01e03']
    with SubsCenterProvider() as provider:
        url_titles = provider._search_url_titles(video.series)
    assert 'movie' in url_titles
    assert 'series' in url_titles
    assert len(url_titles['series']) == 1
    assert url_titles['series'][0] == 'dallas'
Esempio n. 5
0
def test_search_url_titles_movies(movies):
    video = movies['man_of_steel']
    with SubsCenterProvider() as provider:
        url_titles = provider._search_url_titles(video.title)
    assert 'movie' in url_titles
    assert 'series' not in url_titles
    assert len(url_titles['movie']) == 1
    assert url_titles['movie'][0] == 'superman-man-of-steel'
Esempio n. 6
0
def test_list_subtitles_episode(episodes):
    video = episodes['got_s03e10']
    languages = {Language('heb')}
    expected_subtitles = {'263128', '263129', '263127', '263139', '263130'}
    with SubsCenterProvider() as provider:
        subtitles = provider.list_subtitles(video, languages)
    assert len(subtitles) == len(expected_subtitles)
    assert {subtitle.id for subtitle in subtitles} == expected_subtitles
    assert {subtitle.language for subtitle in subtitles} == languages
Esempio n. 7
0
def test_list_subtitles_movie(movies):
    video = movies['man_of_steel']
    languages = {Language('heb')}
    expected_subtitles = {'263600', '263610', '263628', '263607', '263470', '263609', '263630', '263481', '263627',
                          '263493', '265320', '263608', '263479'}
    with SubsCenterProvider() as provider:
        subtitles = provider.list_subtitles(video, languages)
    assert len(subtitles) == len(expected_subtitles)
    assert {subtitle.id for subtitle in subtitles} == expected_subtitles
    assert {subtitle.language for subtitle in subtitles} == languages
Esempio n. 8
0
def test_search_url_title_movies(movies):
    video = movies['man_of_steel']
    with SubsCenterProvider() as provider:
        url_title = provider._search_url_title(video.title, 'movie')
    assert url_title == 'superman-man-of-steel'
Esempio n. 9
0
def test_search_url_title_episode(episodes):
    video = episodes['dallas_2012_s01e03']
    with SubsCenterProvider() as provider:
        url_title = provider._search_url_title(video.series, 'series')
    assert url_title == 'dallas'
Esempio n. 10
0
def test_logout():
    provider = SubsCenterProvider('*****@*****.**', 'subliminal')
    provider.initialize()
    provider.terminate()
    assert not provider.logged_in
Esempio n. 11
0
def test_login_bad_password():
    provider = SubsCenterProvider('*****@*****.**', 'lanimilbus')
    with pytest.raises(AuthenticationError):
        provider.initialize()
Esempio n. 12
0
def test_configuration_error_no_password():
    with pytest.raises(ConfigurationError):
        SubsCenterProvider(username='******')
Esempio n. 13
0
def test_search_url_titles_no_suggestion():
    with SubsCenterProvider() as provider:
        url_titles = provider._search_url_titles('DCs Legends of Tomorrow')
    assert len(url_titles) == 0