summaryrefslogtreecommitdiffstats
path: root/pyagl/tests/test_mediascanner.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyagl/tests/test_mediascanner.py')
-rw-r--r--pyagl/tests/test_mediascanner.py49
1 files changed, 49 insertions, 0 deletions
diff --git a/pyagl/tests/test_mediascanner.py b/pyagl/tests/test_mediascanner.py
new file mode 100644
index 0000000..33ef004
--- /dev/null
+++ b/pyagl/tests/test_mediascanner.py
@@ -0,0 +1,49 @@
+import asyncio
+import os
+import pytest
+import logging
+from pyagl.services.base import AFBResponse, AFBT
+from pyagl.services.mediascanner import MediaScannerService as mss
+
+pytestmark = pytest.mark.asyncio
+events = ['media_added', 'media_removed']
+
+@pytest.fixture(scope='module')
+def event_loop():
+ loop = asyncio.get_event_loop()
+ yield loop
+
+
+@pytest.fixture(scope='module')
+async def service():
+ address = os.environ.get('AGL_TGT_IP', 'localhost')
+ port = os.environ.get('AGL_TGT_PORT', None)
+ ns = await mss(ip=address, port=port)
+ yield ns
+ await ns.websocket.close()
+
+
+@pytest.mark.regular
+@pytest.mark.mediascanner
+async def test_media_result(event_loop, service: mss):
+ msgid = await service.media_result()
+ resp = await service.afbresponse()
+ assert resp.status == 'success'
+
+
+@pytest.mark.regular
+@pytest.mark.mediascanner
+async def test_subscribe(event_loop, service: mss):
+ for e in events:
+ msgid = await service.subscribe(e)
+ resp = await service.afbresponse()
+ assert resp.status == 'success'
+
+
+@pytest.mark.regular
+@pytest.mark.mediascanner
+async def test_unsubscribe(event_loop, service: mss):
+ for e in events:
+ msgid = await service.unsubscribe(e)
+ resp = await service.afbresponse()
+ assert resp.status == 'success'