示例#1
0
class TestSubtitle(unittest.TestCase):
    KEYWORD = u"普羅米修斯"
    ID = 309312

    def setUp(self):
        self.item = SubHDSubtitle(self.ID)

    def test_parse_content(self):
        document = self.item.parse_content()
        converted_keyword = opencc.convert(self.KEYWORD, config="t2s.json")
        self.assertIn(converted_keyword, document.title.text)

    def test_get_file_url(self):
        file_url = self.item.get_file_url()
        response = requests.get(file_url)
        self.assertEqual(response.status_code, 200)

    def test_get_file_url_raises_exception(self):
        self.item.id = -1
        self.assertRaises(SubHDDownloadException, self.item.get_file_url)

    def test_download_archive(self):
        with self.item.download_archive() as archive:
            self.assertGreater(len(archive.read()), 0)

    def test_extract_subtitles(self):
        self.assertGreater(len(self.item.extract_subtitles()), 0)

    def test_translate_subtitles(self):
        subtitle_files = self.item.translate_subtitles()
        self.assertGreater(len(subtitle_files), 0)

        subtitle_file = subtitle_files[0]
        self.assertIn(self.KEYWORD, subtitle_file.content)
示例#2
0
 def select_subtitle(self, *, choice):
     entries = list(self.entries())
     return SubHDSubtitle(id=entries[choice - 1].path[3:])
示例#3
0
 def setUp(self):
     self.item = SubHDSubtitle(self.ID)