Exemple #1
0
 def test_connect_to_OpenSubtitles(self):
     """ Tests if it is possible to connect to OpenSubtitles. """
     server = OpenSubtitlesServer()
     server.connect()
     self.assertTrue(server.connected)
     server.disconnect()
     self.assertFalse(server.connected)
Exemple #2
0
    def test_generate_hash_code(self):
        """ Tests that generate_hash_code generates a correct hash code. """
        server = OpenSubtitlesServer()

        video_filepath = os.path.join(get_exe_dir(), 'Tests', 'Fixtures',
                                      'hashcode.txt')
        expected_hash = "13fb1d63375cf197"
        result_hash = server.hashcode(video_filepath)

        self.assertEqual(result_hash, expected_hash)

        # Test exception file too small
        video_filepath = os.path.join(get_exe_dir(), 'Tests', 'Fixtures',
                                      'hashcode_small.txt')
        with self.assertRaises(VideoSizeError) as error:
            server.hashcode(video_filepath)

        self.assertEqual(error.exception.video_filepath, video_filepath)

        # Test exception file does not exist
        video_filepath = os.path.join(get_exe_dir(), 'Tests', 'Fixtures',
                                      'DUMMY')
        with self.assertRaises(VideoHashCodeError) as error:
            server.hashcode(video_filepath)

        self.assertEqual(error.exception.video_filepath, video_filepath)
        self.assertIsNotNone(error.exception.error)
Exemple #3
0
 def test_connect_to_OpenSubtitles(self):
     """ Tests if it is possible to connect to OpenSubtitles. """
     server = OpenSubtitlesServer()
     server.connect()
     self.assertTrue(server.connected)
     server.disconnect()
     self.assertFalse(server.connected)
Exemple #4
0
    def test_generate_hash_code(self):
        """ Tests that generate_hash_code generates a correct hash code. """
        server = OpenSubtitlesServer()

        video_filepath = os.path.join(
            get_exe_dir(), 'Tests', 'Fixtures', 'hashcode.txt')
        expected_hash = "13fb1d63375cf197"
        result_hash = server.hashcode(video_filepath)

        self.assertEqual(result_hash, expected_hash)

        # Test exception file too small
        video_filepath = os.path.join(
            get_exe_dir(), 'Tests', 'Fixtures', 'hashcode_small.txt')
        with self.assertRaises(VideoSizeError) as error:
            server.hashcode(video_filepath)

        self.assertEqual(error.exception.video_filepath, video_filepath)

        # Test exception file does not exist
        video_filepath = os.path.join(
            get_exe_dir(), 'Tests', 'Fixtures', 'DUMMY')
        with self.assertRaises(VideoHashCodeError) as error:
            server.hashcode(video_filepath)

        self.assertEqual(error.exception.video_filepath, video_filepath)
        self.assertIsNotNone(error.exception.error)
Exemple #5
0
    def test_download_but_no_result_from_OpenSubtitles(self):
        """ Tests what happens when there is
        no subtitle from OpenSubtitles. """
        video = Video(self.video2_filename)

        video.languages_to_download = self.babel_languages

        server = OpenSubtitlesServer()
        server.connect()
        response = server.download_subtitles([video], self.babel_languages)
        self.assertFalse(response)
        server.disconnect()
Exemple #6
0
    def test_download_but_no_result_from_OpenSubtitles(self):
        """ Tests what happens when there is
        no subtitle from OpenSubtitles. """
        video = Video(self.video2_filename)

        video.languages_to_download = self.babel_languages

        server = OpenSubtitlesServer()
        server.connect()
        response = server.download_subtitles([video], self.babel_languages)
        self.assertFalse(response)
        server.disconnect()
Exemple #7
0
    def test_download_from_OpenSubtitles(self):
        """ Tests if it is possible to download
        a subtitle from OpenSubtitles. """
        episode = Video(self.video_filename)
        episode.size = str(243500836)
        episode.languages_to_download = self.babel_languages

        server = OpenSubtitlesServer()
        server.connect()
        response = server.download_subtitles([episode],
                                             self.babel_languages,
                                             mock_hash=self.mock_hashcode)
        self.assertTrue(response)
        self.assertTrue(os.path.exists(self.expected_french_subtitle_filename))
        self.assertTrue(os.path.exists(
            self.expected_english_subtitle_filename))
        server.disconnect()
Exemple #8
0
    def test_download_from_OpenSubtitles(self):
        """ Tests if it is possible to download
        a subtitle from OpenSubtitles. """
        episode = Video(self.video_filename)
        episode.size = str(243500836)
        episode.languages_to_download = self.babel_languages

        server = OpenSubtitlesServer()
        server.connect()
        response = server.download_subtitles(
            [episode], self.babel_languages,
            mock_hash=self.mock_hashcode)
        self.assertTrue(response)
        self.assertTrue(os.path.exists(
            self.expected_french_subtitle_filename))
        self.assertTrue(os.path.exists(
            self.expected_english_subtitle_filename))
        server.disconnect()