aboutsummaryrefslogtreecommitdiffstats
path: root/test_gps.py
diff options
context:
space:
mode:
authorEdi Feschiyan <edi.feschiyan@konsulko.com>2020-05-22 15:09:59 +0300
committerEdi Feschiyan <edi.feschiyan@konsulko.com>2020-06-09 09:30:10 +0300
commite190fff1a49499fc9e07931c641d8d110c3a595b (patch)
tree22a03e72af0ce2bd6ad75102b1b324f20525586e /test_gps.py
parentf050bced69122149fb4f39e0021a35c989a40f90 (diff)
Working base class, hopefully final reworks for the services
Diffstat (limited to 'test_gps.py')
-rw-r--r--test_gps.py38
1 files changed, 15 insertions, 23 deletions
diff --git a/test_gps.py b/test_gps.py
index fe27307..43834fe 100644
--- a/test_gps.py
+++ b/test_gps.py
@@ -2,42 +2,34 @@ import asyncio
import os
import pytest
from gps import GPSService
-from concurrent import futures
import logging
-from functools import partial
logger = logging.getLogger('pytest-gps')
logger.setLevel(logging.DEBUG)
-@pytest.fixture
+@pytest.fixture(scope="module")
+def event_loop():
+ loop = asyncio.get_event_loop()
+ yield loop
+ loop.close()
+
+@pytest.fixture(scope='module')
async def service():
- event_loop = asyncio.get_running_loop()
address = os.environ.get('AGL_TGT_IP', 'localhost')
gpss = await GPSService(ip=address)
- # gpss = await GPSService(ip=address)
yield gpss
await gpss.websocket.close()
-# @pytest.fixture
-# async def listener(service):
-# loop = asyncio.get_event_loop()
-# xc = futures.ThreadPoolExecutor(1)
-# l = await loop.run_in_executor(xc, service.listener)
-# while True:
-# try:
-# yield l.__anext__()
-# except RuntimeError:
-# xc.shutdown()
-# except asyncio.CancelledError:
-# logger.warning("Websocket listener coroutine stopped")
-# except Exception as e:
-# logger.error(e)
+@pytest.fixture(scope='module')
+async def listener(event_loop, service):
+ listener = service.listener()
@pytest.mark.asyncio
-async def test_location(event_loop, service):
+async def test_location(event_loop, service: GPSService):
await service.location()
- r = await service.response()
- print(r)
- assert True
+ resp = await service.response()
+ print(resp)
+ assert isinstance(resp, list)
+ assert resp[2]['request']['status'] == 'success', f"location() returned failure; {resp[2]['request']['info']}"