mirror of
https://github.com/meeb/tubesync.git
synced 2025-06-23 05:26:37 +00:00
Use V
for tests.py
This commit is contained in:
parent
a81d946980
commit
150bb9a5f8
@ -19,8 +19,8 @@ from .models import Source, Media
|
|||||||
from .tasks import cleanup_old_media
|
from .tasks import cleanup_old_media
|
||||||
from .filtering import filter_media
|
from .filtering import filter_media
|
||||||
from .utils import filter_response
|
from .utils import filter_response
|
||||||
from .choices import (Fallback, IndexSchedule, SourceResolution,
|
from .choices import (V, Fallback, IndexSchedule, SourceResolution,
|
||||||
youtube_long_source_types)
|
YouTube_SourceType, youtube_long_source_types)
|
||||||
|
|
||||||
|
|
||||||
class FrontEndTestCase(TestCase):
|
class FrontEndTestCase(TestCase):
|
||||||
@ -118,7 +118,7 @@ class FrontEndTestCase(TestCase):
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
c = Client()
|
c = Client()
|
||||||
for source_type in test_sources.keys():
|
for source_type in youtube_long_source_types.keys():
|
||||||
response = c.get(f'/source-validate/{source_type}')
|
response = c.get(f'/source-validate/{source_type}')
|
||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
response = c.get('/source-validate/invalid')
|
response = c.get('/source-validate/invalid')
|
||||||
@ -228,7 +228,7 @@ class FrontEndTestCase(TestCase):
|
|||||||
expected_categories)
|
expected_categories)
|
||||||
# Update the source key
|
# Update the source key
|
||||||
data = {
|
data = {
|
||||||
'source_type': Source.SOURCE_TYPE_YOUTUBE_CHANNEL,
|
'source_type': V(YouTube_SourceType.CHANNEL),
|
||||||
'key': 'updatedkey', # changed
|
'key': 'updatedkey', # changed
|
||||||
'name': 'testname',
|
'name': 'testname',
|
||||||
'directory': 'testdirectory',
|
'directory': 'testdirectory',
|
||||||
@ -236,15 +236,15 @@ class FrontEndTestCase(TestCase):
|
|||||||
'download_cap': 0,
|
'download_cap': 0,
|
||||||
'filter_text': '.*',
|
'filter_text': '.*',
|
||||||
'filter_seconds_min': True,
|
'filter_seconds_min': True,
|
||||||
'index_schedule': IndexSchedule.EVERY_HOUR,
|
'index_schedule': V(IndexSchedule.EVERY_HOUR),
|
||||||
'delete_old_media': False,
|
'delete_old_media': False,
|
||||||
'days_to_keep': 14,
|
'days_to_keep': 14,
|
||||||
'source_resolution': SourceResolution.VIDEO_1080P.value,
|
'source_resolution': V(SourceResolution.VIDEO_1080P),
|
||||||
'source_vcodec': Source.SOURCE_VCODEC_VP9,
|
'source_vcodec': Source.SOURCE_VCODEC_VP9,
|
||||||
'source_acodec': Source.SOURCE_ACODEC_OPUS,
|
'source_acodec': Source.SOURCE_ACODEC_OPUS,
|
||||||
'prefer_60fps': False,
|
'prefer_60fps': False,
|
||||||
'prefer_hdr': False,
|
'prefer_hdr': False,
|
||||||
'fallback': Fallback.FAIL.value,
|
'fallback': V(Fallback.FAIL),
|
||||||
'sponsorblock_categories': data_categories,
|
'sponsorblock_categories': data_categories,
|
||||||
'sub_langs': 'en',
|
'sub_langs': 'en',
|
||||||
}
|
}
|
||||||
@ -265,7 +265,7 @@ class FrontEndTestCase(TestCase):
|
|||||||
expected_categories)
|
expected_categories)
|
||||||
# Update the source index schedule which should recreate the scheduled task
|
# Update the source index schedule which should recreate the scheduled task
|
||||||
data = {
|
data = {
|
||||||
'source_type': Source.SOURCE_TYPE_YOUTUBE_CHANNEL,
|
'source_type': V(YouTube_SourceType.CHANNEL),
|
||||||
'key': 'updatedkey',
|
'key': 'updatedkey',
|
||||||
'name': 'testname',
|
'name': 'testname',
|
||||||
'directory': 'testdirectory',
|
'directory': 'testdirectory',
|
||||||
@ -273,15 +273,15 @@ class FrontEndTestCase(TestCase):
|
|||||||
'download_cap': 0,
|
'download_cap': 0,
|
||||||
'filter_text': '.*',
|
'filter_text': '.*',
|
||||||
'filter_seconds_min': True,
|
'filter_seconds_min': True,
|
||||||
'index_schedule': IndexSchedule.EVERY_2_HOURS, # changed
|
'index_schedule': V(IndexSchedule.EVERY_2_HOURS), # changed
|
||||||
'delete_old_media': False,
|
'delete_old_media': False,
|
||||||
'days_to_keep': 14,
|
'days_to_keep': 14,
|
||||||
'source_resolution': SourceResolution.VIDEO_1080P.value,
|
'source_resolution': V(SourceResolution.VIDEO_1080P),
|
||||||
'source_vcodec': Source.SOURCE_VCODEC_VP9,
|
'source_vcodec': Source.SOURCE_VCODEC_VP9,
|
||||||
'source_acodec': Source.SOURCE_ACODEC_OPUS,
|
'source_acodec': Source.SOURCE_ACODEC_OPUS,
|
||||||
'prefer_60fps': False,
|
'prefer_60fps': False,
|
||||||
'prefer_hdr': False,
|
'prefer_hdr': False,
|
||||||
'fallback': Fallback.FAIL.value,
|
'fallback': V(Fallback.FAIL),
|
||||||
'sponsorblock_categories': data_categories,
|
'sponsorblock_categories': data_categories,
|
||||||
'sub_langs': 'en',
|
'sub_langs': 'en',
|
||||||
}
|
}
|
||||||
@ -335,19 +335,19 @@ class FrontEndTestCase(TestCase):
|
|||||||
self.assertEqual(response.status_code, 200)
|
self.assertEqual(response.status_code, 200)
|
||||||
# Add a test source
|
# Add a test source
|
||||||
test_source = Source.objects.create(
|
test_source = Source.objects.create(
|
||||||
source_type=Source.SOURCE_TYPE_YOUTUBE_CHANNEL,
|
source_type=V(YouTube_SourceType.CHANNEL),
|
||||||
key='testkey',
|
key='testkey',
|
||||||
name='testname',
|
name='testname',
|
||||||
directory='testdirectory',
|
directory='testdirectory',
|
||||||
index_schedule=IndexSchedule.EVERY_HOUR,
|
index_schedule=V(IndexSchedule.EVERY_HOUR),
|
||||||
delete_old_media=False,
|
delete_old_media=False,
|
||||||
days_to_keep=14,
|
days_to_keep=14,
|
||||||
source_resolution=SourceResolution.VIDEO_1080P.value,
|
source_resolution=V(SourceResolution.VIDEO_1080P),
|
||||||
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
||||||
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
||||||
prefer_60fps=False,
|
prefer_60fps=False,
|
||||||
prefer_hdr=False,
|
prefer_hdr=False,
|
||||||
fallback=Fallback.FAIL.value
|
fallback=V(Fallback.FAIL)
|
||||||
)
|
)
|
||||||
# Add some media
|
# Add some media
|
||||||
test_minimal_metadata = '''
|
test_minimal_metadata = '''
|
||||||
@ -516,7 +516,7 @@ class FilepathTestCase(TestCase):
|
|||||||
logging.disable(logging.CRITICAL)
|
logging.disable(logging.CRITICAL)
|
||||||
# Add a test source
|
# Add a test source
|
||||||
self.source = Source.objects.create(
|
self.source = Source.objects.create(
|
||||||
source_type=Source.SOURCE_TYPE_YOUTUBE_CHANNEL,
|
source_type=V(YouTube_SourceType.CHANNEL),
|
||||||
key='testkey',
|
key='testkey',
|
||||||
name='testname',
|
name='testname',
|
||||||
directory='testdirectory',
|
directory='testdirectory',
|
||||||
@ -524,12 +524,12 @@ class FilepathTestCase(TestCase):
|
|||||||
index_schedule=3600,
|
index_schedule=3600,
|
||||||
delete_old_media=False,
|
delete_old_media=False,
|
||||||
days_to_keep=14,
|
days_to_keep=14,
|
||||||
source_resolution=SourceResolution.VIDEO_1080P.value,
|
source_resolution=V(SourceResolution.VIDEO_1080P),
|
||||||
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
||||||
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
||||||
prefer_60fps=False,
|
prefer_60fps=False,
|
||||||
prefer_hdr=False,
|
prefer_hdr=False,
|
||||||
fallback=Fallback.FAIL.value
|
fallback=V(Fallback.FAIL)
|
||||||
)
|
)
|
||||||
# Add some test media
|
# Add some test media
|
||||||
self.media = Media.objects.create(
|
self.media = Media.objects.create(
|
||||||
@ -655,11 +655,11 @@ class FilepathTestCase(TestCase):
|
|||||||
self.assertTrue(isinstance(settings.SOURCE_DOWNLOAD_DIRECTORY_PREFIX, bool))
|
self.assertTrue(isinstance(settings.SOURCE_DOWNLOAD_DIRECTORY_PREFIX, bool))
|
||||||
# Test the default behavior for "True", forced "audio" or "video" parent directories for sources
|
# Test the default behavior for "True", forced "audio" or "video" parent directories for sources
|
||||||
settings.SOURCE_DOWNLOAD_DIRECTORY_PREFIX = True
|
settings.SOURCE_DOWNLOAD_DIRECTORY_PREFIX = True
|
||||||
self.source.source_resolution = SourceResolution.AUDIO.value
|
self.source.source_resolution = V(SourceResolution.AUDIO)
|
||||||
test_audio_prefix_path = Path(self.source.directory_path)
|
test_audio_prefix_path = Path(self.source.directory_path)
|
||||||
self.assertEqual(test_audio_prefix_path.parts[-2], 'audio')
|
self.assertEqual(test_audio_prefix_path.parts[-2], 'audio')
|
||||||
self.assertEqual(test_audio_prefix_path.parts[-1], 'testdirectory')
|
self.assertEqual(test_audio_prefix_path.parts[-1], 'testdirectory')
|
||||||
self.source.source_resolution = SourceResolution.VIDEO_1080P.value
|
self.source.source_resolution = V(SourceResolution.VIDEO_1080P)
|
||||||
test_video_prefix_path = Path(self.source.directory_path)
|
test_video_prefix_path = Path(self.source.directory_path)
|
||||||
self.assertEqual(test_video_prefix_path.parts[-2], 'video')
|
self.assertEqual(test_video_prefix_path.parts[-2], 'video')
|
||||||
self.assertEqual(test_video_prefix_path.parts[-1], 'testdirectory')
|
self.assertEqual(test_video_prefix_path.parts[-1], 'testdirectory')
|
||||||
@ -676,7 +676,7 @@ class MediaTestCase(TestCase):
|
|||||||
logging.disable(logging.CRITICAL)
|
logging.disable(logging.CRITICAL)
|
||||||
# Add a test source
|
# Add a test source
|
||||||
self.source = Source.objects.create(
|
self.source = Source.objects.create(
|
||||||
source_type=Source.SOURCE_TYPE_YOUTUBE_CHANNEL,
|
source_type=V(YouTube_SourceType.CHANNEL),
|
||||||
key='testkey',
|
key='testkey',
|
||||||
name='testname',
|
name='testname',
|
||||||
directory='testdirectory',
|
directory='testdirectory',
|
||||||
@ -684,12 +684,12 @@ class MediaTestCase(TestCase):
|
|||||||
index_schedule=3600,
|
index_schedule=3600,
|
||||||
delete_old_media=False,
|
delete_old_media=False,
|
||||||
days_to_keep=14,
|
days_to_keep=14,
|
||||||
source_resolution=SourceResolution.VIDEO_1080P.value,
|
source_resolution=V(SourceResolution.VIDEO_1080P),
|
||||||
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
||||||
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
||||||
prefer_60fps=False,
|
prefer_60fps=False,
|
||||||
prefer_hdr=False,
|
prefer_hdr=False,
|
||||||
fallback=Fallback.FAIL.value
|
fallback=V(Fallback.FAIL)
|
||||||
)
|
)
|
||||||
# Add some test media
|
# Add some test media
|
||||||
self.media = Media.objects.create(
|
self.media = Media.objects.create(
|
||||||
@ -749,7 +749,7 @@ class MediaFilterTestCase(TestCase):
|
|||||||
# logging.disable(logging.CRITICAL)
|
# logging.disable(logging.CRITICAL)
|
||||||
# Add a test source
|
# Add a test source
|
||||||
self.source = Source.objects.create(
|
self.source = Source.objects.create(
|
||||||
source_type=Source.SOURCE_TYPE_YOUTUBE_CHANNEL,
|
source_type=V(YouTube_SourceType.CHANNEL),
|
||||||
key="testkey",
|
key="testkey",
|
||||||
name="testname",
|
name="testname",
|
||||||
directory="testdirectory",
|
directory="testdirectory",
|
||||||
@ -757,12 +757,12 @@ class MediaFilterTestCase(TestCase):
|
|||||||
index_schedule=3600,
|
index_schedule=3600,
|
||||||
delete_old_media=False,
|
delete_old_media=False,
|
||||||
days_to_keep=14,
|
days_to_keep=14,
|
||||||
source_resolution=SourceResolution.VIDEO_1080P.value,
|
source_resolution=V(SourceResolution.VIDEO_1080P),
|
||||||
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
||||||
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
||||||
prefer_60fps=False,
|
prefer_60fps=False,
|
||||||
prefer_hdr=False,
|
prefer_hdr=False,
|
||||||
fallback=Fallback.FAIL.value,
|
fallback=V(Fallback.FAIL),
|
||||||
)
|
)
|
||||||
# Add some test media
|
# Add some test media
|
||||||
self.media = Media.objects.create(
|
self.media = Media.objects.create(
|
||||||
@ -919,19 +919,19 @@ class FormatMatchingTestCase(TestCase):
|
|||||||
logging.disable(logging.CRITICAL)
|
logging.disable(logging.CRITICAL)
|
||||||
# Add a test source
|
# Add a test source
|
||||||
self.source = Source.objects.create(
|
self.source = Source.objects.create(
|
||||||
source_type=Source.SOURCE_TYPE_YOUTUBE_CHANNEL,
|
source_type=V(YouTube_SourceType.CHANNEL),
|
||||||
key='testkey',
|
key='testkey',
|
||||||
name='testname',
|
name='testname',
|
||||||
directory='testdirectory',
|
directory='testdirectory',
|
||||||
index_schedule=3600,
|
index_schedule=3600,
|
||||||
delete_old_media=False,
|
delete_old_media=False,
|
||||||
days_to_keep=14,
|
days_to_keep=14,
|
||||||
source_resolution=SourceResolution.VIDEO_1080P.value,
|
source_resolution=V(SourceResolution.VIDEO_1080P),
|
||||||
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
||||||
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
||||||
prefer_60fps=False,
|
prefer_60fps=False,
|
||||||
prefer_hdr=False,
|
prefer_hdr=False,
|
||||||
fallback=Fallback.FAIL.value
|
fallback=V(Fallback.FAIL)
|
||||||
)
|
)
|
||||||
# Add some media
|
# Add some media
|
||||||
self.media = Media.objects.create(
|
self.media = Media.objects.create(
|
||||||
@ -941,7 +941,7 @@ class FormatMatchingTestCase(TestCase):
|
|||||||
)
|
)
|
||||||
|
|
||||||
def test_combined_exact_format_matching(self):
|
def test_combined_exact_format_matching(self):
|
||||||
self.source.fallback = Fallback.FAIL.value
|
self.source.fallback = V(Fallback.FAIL)
|
||||||
self.media.metadata = all_test_metadata['boring']
|
self.media.metadata = all_test_metadata['boring']
|
||||||
self.media.save()
|
self.media.save()
|
||||||
expected_matches = {
|
expected_matches = {
|
||||||
@ -1071,7 +1071,7 @@ class FormatMatchingTestCase(TestCase):
|
|||||||
self.assertEqual(match_type, expected_match_type)
|
self.assertEqual(match_type, expected_match_type)
|
||||||
|
|
||||||
def test_audio_exact_format_matching(self):
|
def test_audio_exact_format_matching(self):
|
||||||
self.source.fallback = Fallback.FAIL.value
|
self.source.fallback = V(Fallback.FAIL)
|
||||||
self.media.metadata = all_test_metadata['boring']
|
self.media.metadata = all_test_metadata['boring']
|
||||||
self.media.save()
|
self.media.save()
|
||||||
expected_matches = {
|
expected_matches = {
|
||||||
@ -1217,7 +1217,7 @@ class FormatMatchingTestCase(TestCase):
|
|||||||
self.assertEqual(match_type, expeceted_match_type)
|
self.assertEqual(match_type, expeceted_match_type)
|
||||||
|
|
||||||
def test_video_exact_format_matching(self):
|
def test_video_exact_format_matching(self):
|
||||||
self.source.fallback = Fallback.FAIL.value
|
self.source.fallback = V(Fallback.FAIL)
|
||||||
# Test no 60fps, no HDR metadata
|
# Test no 60fps, no HDR metadata
|
||||||
self.media.metadata = all_test_metadata['boring']
|
self.media.metadata = all_test_metadata['boring']
|
||||||
self.media.save()
|
self.media.save()
|
||||||
@ -1427,7 +1427,7 @@ class FormatMatchingTestCase(TestCase):
|
|||||||
self.assertEqual(match_type, expeceted_match_type)
|
self.assertEqual(match_type, expeceted_match_type)
|
||||||
|
|
||||||
def test_video_next_best_format_matching(self):
|
def test_video_next_best_format_matching(self):
|
||||||
self.source.fallback = Fallback.NEXT_BEST.value
|
self.source.fallback = V(Fallback.NEXT_BEST)
|
||||||
# Test no 60fps, no HDR metadata
|
# Test no 60fps, no HDR metadata
|
||||||
self.media.metadata = all_test_metadata['boring']
|
self.media.metadata = all_test_metadata['boring']
|
||||||
self.media.save()
|
self.media.save()
|
||||||
@ -1737,19 +1737,19 @@ class ResponseFilteringTestCase(TestCase):
|
|||||||
logging.disable(logging.CRITICAL)
|
logging.disable(logging.CRITICAL)
|
||||||
# Add a test source
|
# Add a test source
|
||||||
self.source = Source.objects.create(
|
self.source = Source.objects.create(
|
||||||
source_type=Source.SOURCE_TYPE_YOUTUBE_CHANNEL,
|
source_type=V(YouTube_SourceType.CHANNEL),
|
||||||
key='testkey',
|
key='testkey',
|
||||||
name='testname',
|
name='testname',
|
||||||
directory='testdirectory',
|
directory='testdirectory',
|
||||||
index_schedule=3600,
|
index_schedule=3600,
|
||||||
delete_old_media=False,
|
delete_old_media=False,
|
||||||
days_to_keep=14,
|
days_to_keep=14,
|
||||||
source_resolution=SourceResolution.VIDEO_1080P.value,
|
source_resolution=V(SourceResolution.VIDEO_1080P),
|
||||||
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
source_vcodec=Source.SOURCE_VCODEC_VP9,
|
||||||
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
source_acodec=Source.SOURCE_ACODEC_OPUS,
|
||||||
prefer_60fps=False,
|
prefer_60fps=False,
|
||||||
prefer_hdr=False,
|
prefer_hdr=False,
|
||||||
fallback=Fallback.FAIL.value
|
fallback=V(Fallback.FAIL)
|
||||||
)
|
)
|
||||||
# Add some media
|
# Add some media
|
||||||
self.media = Media.objects.create(
|
self.media = Media.objects.create(
|
||||||
|
Loading…
Reference in New Issue
Block a user