def test_subtitle_language_save(self): self.assertEqual(self.video.complete_date, None) self.assertEqual(self.video.subtitlelanguage_set.count(), 1) self.language.is_complete = True self.language.save() self.video = Video.objects.get(pk=self.video.pk) self.assertNotEqual(self.video.complete_date, None) self.language.is_complete = False self.language.save() self.video = Video.objects.get(pk=self.video.pk) self.assertEqual(self.video.complete_date, None) #add one more SubtitleLanguage l = SubtitleLanguage(video=self.video) l.is_original = False l.is_complete = True l.save() self.video = Video.objects.get(pk=self.video.pk) self.assertNotEqual(self.video.complete_date, None) self.language.is_complete = True self.language.save() self.video = Video.objects.get(pk=self.video.pk) self.assertNotEqual(self.video.complete_date, None) l.is_complete = False l.save() self.video = Video.objects.get(pk=self.video.pk) self.assertNotEqual(self.video.complete_date, None) self.language.is_complete = False self.language.save() self.video = Video.objects.get(pk=self.video.pk) self.assertEqual(self.video.complete_date, None) self.language.is_complete = True self.language.save() self.video = Video.objects.get(pk=self.video.pk) self.assertNotEqual(self.video.complete_date, None) l.is_complete = True l.save() self.video = Video.objects.get(pk=self.video.pk) self.assertNotEqual(self.video.complete_date, None) self.language.delete() self.video = Video.objects.get(pk=self.video.pk) self.assertNotEqual(self.video.complete_date, None) l.delete() self.video = Video.objects.get(pk=self.video.pk) self.assertEqual(self.video.complete_date, None)
def _save_original_language(self, video, video_language): original_language = video.subtitle_language() if original_language: if original_language.language: try: language_exists = video.subtitlelanguage_set.exclude(pk=original_language.pk) \ .get(language=video_language) original_language.is_original = False original_language.save() language_exists.is_original = True language_exists.save() except ObjectDoesNotExist: original_language.language = video_language original_language.save() else: try: language_exists = video.subtitlelanguage_set.exclude(pk=original_language.pk) \ .get(language=video_language) latest_version = original_language.latest_version() if latest_version: last_no = latest_version.version_no else: last_no = 0 for version in language_exists.subtitleversion_set.all(): version.language = original_language last_no += 1 version.version_no = last_no version.save() language_exists.delete() except ObjectDoesNotExist: pass original_language.language = video_language original_language.save() else: #original_language always exists, but... try: language_exists = video.subtitlelanguage_set.get( language=video_language) language_exists.is_original = True language_exists.save() except ObjectDoesNotExist: original_language = SubtitleLanguage() original_language.language = video_language original_language.is_original = True original_language.video = video original_language.save()
def _save_original_language(self, video, video_language): original_language = video.subtitle_language() if original_language: if original_language.language: try: language_exists = video.subtitlelanguage_set.exclude(pk=original_language.pk) \ .get(language=video_language) original_language.is_original = False original_language.save() language_exists.is_original = True language_exists.save() except ObjectDoesNotExist: original_language.language = video_language original_language.save() else: try: language_exists = video.subtitlelanguage_set.exclude(pk=original_language.pk) \ .get(language=video_language) latest_version = original_language.latest_version() if latest_version: last_no = latest_version.version_no else: last_no = 0 for version in language_exists.subtitleversion_set.all(): version.language = original_language last_no += 1 version.version_no = last_no version.save() language_exists.delete() except ObjectDoesNotExist: pass original_language.language = video_language original_language.save() else: #original_language always exists, but... try: language_exists = video.subtitlelanguage_set.get(language=video_language) language_exists.is_original = True language_exists.save() except ObjectDoesNotExist: original_language = SubtitleLanguage() original_language.language = video_language original_language.is_original = True original_language.video = video original_language.save()
def _create_trans(video, latest_version=None, lang_code=None, forked=False): translation = SubtitleLanguage() translation.video = video translation.language = lang_code translation.is_original = False translation.is_forked = forked if not forked: translation.standard_language = video.subtitle_language() translation.save() v = SubtitleVersion() v.language = translation if latest_version: v.version_no = latest_version.version_no + 1 else: v.version_no = 1 v.datetime_started = datetime.now() v.save() if latest_version is not None: for s in latest_version.subtitle_set.all(): s.duplicate_for(v).save() return translation
def setUp(self): self.video = Video.objects.all()[:1].get() self.original_language = self.video.subtitle_language() latest_version = self.original_language.latest_version() translation = SubtitleLanguage() translation.video = self.video translation.language = 'uk' translation.is_original = False translation.is_forked = False translation.save() self.translation = translation v = SubtitleVersion() v.language = translation v.datetime_started = datetime.now() v.save() self.translation_version = v for s in latest_version.subtitle_set.all(): s.duplicate_for(v).save()