Ajout du GUI
This commit is contained in:
112
kivy/tests/test_uix_videoplayer.py
Normal file
112
kivy/tests/test_uix_videoplayer.py
Normal file
@@ -0,0 +1,112 @@
|
||||
import pytest
|
||||
|
||||
from kivy.tests import async_run, UnitKivyApp, GraphicUnitTest
|
||||
from unittest.mock import patch
|
||||
|
||||
|
||||
def videoplayer_app():
|
||||
from kivy.app import App
|
||||
from kivy.uix.videoplayer import VideoPlayer
|
||||
|
||||
class TestApp(UnitKivyApp, App):
|
||||
def build(self):
|
||||
root = VideoPlayer()
|
||||
return root
|
||||
|
||||
return TestApp()
|
||||
|
||||
|
||||
@async_run(app_cls_func=videoplayer_app)
|
||||
async def test_default_thumbnail(
|
||||
kivy_app,
|
||||
):
|
||||
with patch(
|
||||
"kivy.uix.videoplayer.VideoPlayer._load_thumbnail"
|
||||
) as mock__load_thumbnail, patch(
|
||||
"kivy.uix.videoplayer.VideoPlayer._load_annotations"
|
||||
) as mock__load_annotations, patch(
|
||||
"kivy.uix.videoplayer.exists"
|
||||
) as mock_exists:
|
||||
mock_exists.return_value = True
|
||||
kivy_app.root.source = "data/video.mp4"
|
||||
await kivy_app.wait_clock_frames(2)
|
||||
mock__load_thumbnail.assert_called_once_with("data/video.png")
|
||||
|
||||
|
||||
@async_run(app_cls_func=videoplayer_app)
|
||||
async def test_default_annotation(
|
||||
kivy_app,
|
||||
):
|
||||
with patch(
|
||||
"kivy.uix.videoplayer.VideoPlayer._load_annotations"
|
||||
) as mock__load_annotations, patch(
|
||||
"kivy.uix.videoplayer.exists"
|
||||
) as mock_exists:
|
||||
mock_exists.return_value = True
|
||||
kivy_app.root.source = "data/video.mp4"
|
||||
await kivy_app.wait_clock_frames(2)
|
||||
mock__load_annotations.assert_called_once_with("data/video.jsa")
|
||||
|
||||
|
||||
@async_run(app_cls_func=videoplayer_app)
|
||||
async def test_custom_thumbnail(
|
||||
kivy_app,
|
||||
):
|
||||
with patch(
|
||||
"kivy.uix.videoplayer.VideoPlayer._load_thumbnail"
|
||||
) as mock__load_thumbnail, patch(
|
||||
"kivy.uix.videoplayer.VideoPlayer._load_annotations"
|
||||
) as mock__load_annotations, patch(
|
||||
"kivy.uix.videoplayer.exists"
|
||||
) as mock_exists:
|
||||
mock_exists.return_value = True
|
||||
kivy_app.root.source = "data/video.mp4"
|
||||
kivy_app.root.thumbnail = "data/custom.jpg"
|
||||
await kivy_app.wait_clock_frames(2)
|
||||
mock__load_thumbnail.assert_called_once_with("data/custom.jpg")
|
||||
|
||||
|
||||
@async_run(app_cls_func=videoplayer_app)
|
||||
async def test_custom_annotation(
|
||||
kivy_app,
|
||||
):
|
||||
with patch(
|
||||
"kivy.uix.videoplayer.VideoPlayer._load_annotations"
|
||||
) as mock__load_annotations, patch(
|
||||
"kivy.uix.videoplayer.exists"
|
||||
) as mock_exists:
|
||||
mock_exists.return_value = True
|
||||
kivy_app.root.source = "data/video.mp4"
|
||||
kivy_app.root.annotations = "data/custom.jsa"
|
||||
await kivy_app.wait_clock_frames(2)
|
||||
mock__load_annotations.assert_called_once_with("data/custom.jsa")
|
||||
|
||||
|
||||
@async_run(app_cls_func=videoplayer_app)
|
||||
async def test_custom_thumbnail_reset(
|
||||
kivy_app,
|
||||
):
|
||||
kivy_app.root.thumbnail = "data/custom.jpg"
|
||||
assert len(kivy_app.root.container.children) != 0
|
||||
|
||||
kivy_app.root.thumbnail = ""
|
||||
assert len(kivy_app.root.container.children) == 0
|
||||
|
||||
|
||||
@async_run(app_cls_func=videoplayer_app)
|
||||
async def test_custom_annotations_reset_no_fail(
|
||||
kivy_app,
|
||||
):
|
||||
with patch(
|
||||
"kivy.uix.videoplayer.VideoPlayer._load_annotations"
|
||||
) as mock__load_annotations:
|
||||
kivy_app.root.annotations = "data/annotations.jsa"
|
||||
|
||||
kivy_app.root.annotations = ""
|
||||
|
||||
if __name__ == "__main__":
|
||||
pytest.main(
|
||||
args=[
|
||||
__file__,
|
||||
]
|
||||
)
|
||||
Reference in New Issue
Block a user