test_video_uploads_shows_correctly
This commit is contained in:
@@ -18,17 +18,16 @@ def create(model: Type[T], **kwargs) -> T:
|
|||||||
if model is models.Transcoding:
|
if model is models.Transcoding:
|
||||||
video = create(models.Video, title='Title', slug='slug', description='Description') \
|
video = create(models.Video, title='Title', slug='slug', description='Description') \
|
||||||
if 'video' not in kwargs else None
|
if 'video' not in kwargs else None
|
||||||
return models.Transcoding.objects.create(
|
defaults = dict(
|
||||||
**{
|
video=video,
|
||||||
**dict(
|
quality=models.qualities[0].name,
|
||||||
video=video,
|
type=str(models.transcoding_types[0]),
|
||||||
quality=models.qualities[0].name,
|
|
||||||
type=str(models.transcoding_types[0]),
|
|
||||||
url='https://some_url',
|
|
||||||
),
|
|
||||||
**kwargs
|
|
||||||
}
|
|
||||||
)
|
)
|
||||||
|
if 'upload' not in kwargs:
|
||||||
|
# only URL if no upload for they are multually exclusive
|
||||||
|
defaults['url'] = 'https://some_url'
|
||||||
|
|
||||||
|
return models.Transcoding.objects.create(**{**defaults, **kwargs})
|
||||||
|
|
||||||
if model is models.Upload:
|
if model is models.Upload:
|
||||||
return _upload(**kwargs)
|
return _upload(**kwargs)
|
||||||
|
|||||||
@@ -203,3 +203,45 @@ class VideoTestCase(TestCase):
|
|||||||
)
|
)
|
||||||
|
|
||||||
self.assertInHTML('<strong>720p versie</strong>', content)
|
self.assertInHTML('<strong>720p versie</strong>', content)
|
||||||
|
|
||||||
|
def test_video_uploads_shows_correctly(self):
|
||||||
|
|
||||||
|
image = factories.create(models.Upload)
|
||||||
|
movie = factories.create(models.Upload)
|
||||||
|
|
||||||
|
video = factories.create(
|
||||||
|
models.Video,
|
||||||
|
title='Vid 1',
|
||||||
|
slug='vid-1',
|
||||||
|
poster=image,
|
||||||
|
og_image=image
|
||||||
|
)
|
||||||
|
transcoding = factories.create(
|
||||||
|
models.Transcoding,
|
||||||
|
video=video,
|
||||||
|
quality='480p',
|
||||||
|
type='video/webm',
|
||||||
|
upload=movie,
|
||||||
|
)
|
||||||
|
|
||||||
|
resp:HttpResponse = self.client.get(
|
||||||
|
reverse('video', args=['vid-1']) + '?quality=720p')
|
||||||
|
|
||||||
|
self.assertEqual(resp.status_code, 200)
|
||||||
|
|
||||||
|
content:str = resp.content.decode(resp.charset)
|
||||||
|
|
||||||
|
self.assertInHTML(
|
||||||
|
"""<video width="853" height="480" poster="{image}" controls="controls">
|
||||||
|
<source src="{url}" type='video/webm' />
|
||||||
|
You need a browser that understands HTML5 video and supports vp8 codecs.
|
||||||
|
</video>""".format(url=movie.file.url, image=image.file.url),
|
||||||
|
content,
|
||||||
|
)
|
||||||
|
|
||||||
|
self.assertInHTML(
|
||||||
|
'<meta property="og:image" content="{image}" />'.format(image=image.file.url),
|
||||||
|
content,
|
||||||
|
)
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user