def test_is_created_preview_image(self): storage = Lesson().video.storage lesson = Lesson.objects.first() image_preview = lesson.video.preview_image_name self.assertTrue(storage.exists(image_preview), "Отсутсвует изображение-превью для видеоплеера")
def test_is_created_chunks(self): storage = Lesson().video.storage expected_streams_count = 5 expected_count_of_chunks_for_stream = 2 lesson = Lesson.objects.first() dash_seg_name = DashFilesNames.dash_segments_mask(lesson.video.name) dash_seg_name_mask = dash_seg_name. \ replace(r"\$RepresentationID\$", "{0}"). \ replace(r"\$Number%05d\$", "{1}") for stream_id in range(expected_streams_count): chunks_count = 0 for chunk_id in range(1, expected_count_of_chunks_for_stream + 1): chunk_name = dash_seg_name_mask.format(stream_id, str(chunk_id).zfill(5)) if storage.exists(chunk_name): chunks_count += 1 self.assertEqual( chunks_count, expected_count_of_chunks_for_stream, f"Неверное количество чанков для DASH потока №{stream_id}, " f"ожидалось {expected_count_of_chunks_for_stream}, существует {chunks_count}" )
def test_is_created_dash_init_files(self): storage = Lesson().video.storage expected_count_of_stream_init = 5 lesson = Lesson.objects.first() stream_init_name = DashFilesNames.dash_init_files_mask( lesson.video.name) stream_init_name_mask = stream_init_name.replace( r"\$RepresentationID\$", "{0}") stream_init_files_count = 0 for stream_id in range(expected_count_of_stream_init): init_name = stream_init_name_mask.format(stream_id) if storage.exists(init_name): stream_init_files_count += 1 self.assertEqual( stream_init_files_count, expected_count_of_stream_init, f"Неверное количество файлов описания для DASH потоков" f"ожидалось {expected_count_of_stream_init}, существует {stream_init_files_count}" )
def test_is_created_mpd_manifest(self): storage = Lesson().video.storage lesson = Lesson.objects.first() self.assertTrue(storage.exists(lesson.video.mpd_file_name), "Не сгенерирован mpd файл манифеста для DASH")