Example #1
0
def test_query_open_subtitles(tmpdir):
    filename1 = tmpdir.join('Drive (2011) BDRip XviD-COCAIN.avi').ensure()
    filename2 = tmpdir.join('Project.X.2012.DVDRip.XviD-AMIABLE.avi').ensure()

    with patch('ss.ServerProxy', autospec=True) as rpc_mock:
        with patch('ss.calculate_hash_for_file', autospec=True) as hash_mock:
            hash_mock.return_value = '13ab'
            rpc_mock.return_value = server = MagicMock(name='MockServer')
            server.LogIn.return_value = dict(token='TOKEN')
            server.SearchSubtitles.return_value = dict(data={'SubFileName' : 'movie.srt'})

            search_results = ss.query_open_subtitles([str(filename1), str(filename2)], 'eng')
            rpc_mock.assert_called_once_with(
                'http://api.opensubtitles.org/xml-rpc',
                use_datetime=True,
                allow_none=True,
                verbose=0,
            )
            server.LogIn.assert_called_once_with('', '', 'en', 'OS Test User Agent')
            expected_calls = [
                 call('TOKEN', [dict(query=u'"Drive" "2011"', sublanguageid='eng'), dict(moviehash='13ab', moviebytesize='0', sublanguageid='eng')]),
                 call('TOKEN', [dict(query=u'"Project X" "2012"', sublanguageid='eng'), dict(moviehash='13ab', moviebytesize='0', sublanguageid='eng')]),
            ]

            server.SearchSubtitles.assert_has_calls(expected_calls)
            server.LogOut.assert_called_once_with('TOKEN')

            assert search_results == {
                str(filename1) : {'SubFileName' : 'movie.srt'},
                str(filename2) : {'SubFileName' : 'movie.srt'},
            }
Example #2
0
File: test_ss.py Project: vobe/ss
def test_query_open_subtitles(tmpdir, mocker):
    filename = tmpdir.join("Drive (2011) BDRip XviD-COCAIN.avi").ensure()

    rpc_mock = mocker.patch("ss.ServerProxy", autospec=True)
    hash_mock = mocker.patch("ss.calculate_hash_for_file", autospec=True)
    hash_mock.return_value = "13ab"
    rpc_mock.return_value = server = MagicMock(name="MockServer")
    server.LogIn.return_value = dict(token="TOKEN")
    server.SearchSubtitles.return_value = dict(data=[{"SubFileName": "movie.srt"}])

    search_results = ss.query_open_subtitles(str(filename), "eng")
    rpc_mock.assert_called_once_with(
        "http://api.opensubtitles.org/xml-rpc", use_datetime=True, allow_none=True, verbose=0
    )
    server.LogIn.assert_called_once_with("", "", "en", "ss v" + ss.__version__)
    expected_calls = [
        call(
            "TOKEN",
            [
                dict(query=u'"Drive" "2011"', sublanguageid="eng"),
                dict(moviehash="13ab", moviebytesize="0", sublanguageid="eng"),
            ],
        )
    ]

    server.SearchSubtitles.assert_has_calls(expected_calls)
    server.LogOut.assert_called_once_with("TOKEN")

    assert search_results == [{"SubFileName": "movie.srt"}]
Example #3
0
def test_query_open_subtitles(tmpdir, mocker):
    filename = tmpdir.join('Drive (2011) BDRip XviD-COCAIN.avi').ensure()

    rpc_mock = mocker.patch('ss.ServerProxy', autospec=True)
    hash_mock = mocker.patch('ss.calculate_hash_for_file', autospec=True)
    hash_mock.return_value = '13ab'
    rpc_mock.return_value = server = MagicMock(name='MockServer')
    server.LogIn.return_value = dict(token='TOKEN')
    server.SearchSubtitles.return_value = dict(data=[{
        'SubFileName': 'movie.srt'
    }])

    search_results = ss.query_open_subtitles(str(filename), 'eng')
    rpc_mock.assert_called_once_with('http://api.opensubtitles.org/xml-rpc',
                                     use_datetime=True,
                                     allow_none=True,
                                     verbose=0)
    server.LogIn.assert_called_once_with('', '', 'en', 'OS Test User Agent')
    expected_calls = [
        call('TOKEN', [
            dict(query=u'"Drive" "2011"', sublanguageid='eng'),
            dict(moviehash='13ab', moviebytesize='0', sublanguageid='eng')
        ]),
    ]

    server.SearchSubtitles.assert_has_calls(expected_calls)
    server.LogOut.assert_called_once_with('TOKEN')

    assert search_results == [{'SubFileName': 'movie.srt'}]
Example #4
0
File: test_ss.py Project: brbsix/ss
def test_query_open_subtitles(tmpdir, mocker):
    filename = tmpdir.join('Drive (2011) BDRip XviD-COCAIN.avi').ensure()

    rpc_mock = mocker.patch('ss.ServerProxy', autospec=True)
    hash_mock = mocker.patch('ss.calculate_hash_for_file', autospec=True)
    hash_mock.return_value = '13ab'
    rpc_mock.return_value = server = MagicMock(name='MockServer')
    server.LogIn.return_value = dict(token='TOKEN')
    server.SearchSubtitles.return_value = dict(
        data=[{'SubFileName': 'movie.srt'}])

    search_results = ss.query_open_subtitles(str(filename), 'eng')
    rpc_mock.assert_called_once_with(
        'http://api.opensubtitles.org/xml-rpc', use_datetime=True,
        allow_none=True, verbose=0)
    server.LogIn.assert_called_once_with('', '', 'en', 'ss v' + ss.__version__)
    expected_calls = [
        call('TOKEN',
             [dict(query=u'"Drive" "2011"', sublanguageid='eng'),
              dict(moviehash='13ab', moviebytesize='0',
                   sublanguageid='eng')]),
    ]

    server.SearchSubtitles.assert_has_calls(expected_calls)
    server.LogOut.assert_called_once_with('TOKEN')

    assert search_results == [{'SubFileName': 'movie.srt'}]