aboutsummaryrefslogtreecommitdiffstats
path: root/pyagl/tests/test_bluetooth.py
diff options
context:
space:
mode:
Diffstat (limited to 'pyagl/tests/test_bluetooth.py')
-rw-r--r--pyagl/tests/test_bluetooth.py42
1 files changed, 37 insertions, 5 deletions
diff --git a/pyagl/tests/test_bluetooth.py b/pyagl/tests/test_bluetooth.py
index 14da24b..5f9232f 100644
--- a/pyagl/tests/test_bluetooth.py
+++ b/pyagl/tests/test_bluetooth.py
@@ -28,6 +28,7 @@ async def service():
@pytest.mark.xfail
+@pytest.mark.bluetooth
@pytest.fixture(scope='module')
def btaddr():
bthtestaddr = os.environ.get('AGL_BT_TEST_ADDR', None)
@@ -38,71 +39,90 @@ def btaddr():
return bthtestaddr
+@pytest.mark.regular
+@pytest.mark.bluetooth
@pytest.mark.dependency
async def test_default_adapter(event_loop, service: BTS):
- msgid = await service.default_adapter()
+ msgid = await service.default_adapter('hci0')
resp = await service.afbresponse()
assert resp.status == 'success', resp.info
assert 'adapter' in resp.data.keys()
assert resp.data['adapter'] == 'hci0'
+@pytest.mark.regular
+@pytest.mark.bluetooth
async def test_subscribe_device_changes(event_loop, service: BTS):
msgid = await service.subscribe('device_changes')
resp = await service.afbresponse()
assert resp.status == 'success', resp.info
+@pytest.mark.regular
+@pytest.mark.bluetooth
async def test_unsubscribe_device_changes(event_loop, service: BTS):
msgid = await service.unsubscribe('device_changes')
resp = await service.afbresponse()
assert resp.status == 'success', resp.info
+
-
+@pytest.mark.regular
+@pytest.mark.bluetooth
async def test_subscribe_adapter_changes(event_loop, service: BTS):
msgid = await service.subscribe('adapter_changes')
resp = await service.afbresponse()
assert resp.status == 'success', resp.info
+@pytest.mark.regular
+@pytest.mark.bluetooth
async def test_unsubscribe_adapter_changes(event_loop, service: BTS):
msgid = await service.unsubscribe('adapter_changes')
resp = await service.afbresponse()
assert resp.status == 'success', resp.info
+@pytest.mark.regular
+@pytest.mark.bluetooth
async def test_subscribe_media(event_loop, service: BTS):
msgid = await service.subscribe('media')
resp = await service.afbresponse()
assert resp.status == 'success', resp.info
+@pytest.mark.regular
+@pytest.mark.bluetooth
async def test_unsubscribe_media(event_loop, service: BTS):
msgid = await service.unsubscribe('media')
resp = await service.afbresponse()
assert resp.status == 'success', resp.info
+@pytest.mark.regular
+@pytest.mark.bluetooth
async def test_subscribe_agent(event_loop, service: BTS):
msgid = await service.subscribe('agent')
resp = await service.afbresponse()
assert resp.status == 'success', resp.info
+@pytest.mark.regular
+@pytest.mark.bluetooth
async def test_unsubscribe_agent(event_loop, service: BTS):
msgid = await service.unsubscribe('agent')
resp = await service.afbresponse()
assert resp.status == 'success', resp.info
-
+@pytest.mark.regular
+@pytest.mark.bluetooth
@pytest.mark.dependency(depends=['test_default_adapter'])
async def test_managed_objects(event_loop, service: BTS):
msgid = await service.managed_objects()
resp = await service.afbresponse()
assert resp.status == 'success', resp.info
-
-@pytest.mark.dependency(depends=['test_default_adapter'])
+@pytest.mark.hwrequired
+@pytest.mark.bluetooth
async def test_has_single_adapter(event_loop, service: BTS):
msgid = await service.managed_objects()
resp = await service.afbresponse()
@@ -110,6 +130,8 @@ async def test_has_single_adapter(event_loop, service: BTS):
f'Detected {len(resp.data["adapters"])} adapters. Multiple adapters may also affect testing'
+@pytest.mark.regular
+@pytest.mark.bluetooth
@pytest.mark.dependency(depends=['test_default_adapter'])
async def test_adapter_state(event_loop, service: BTS):
msgid = await service.adapter_state('hci0')
@@ -117,6 +139,8 @@ async def test_adapter_state(event_loop, service: BTS):
assert resp.status == 'success', 'adapter state verb failed'
+@pytest.mark.hwrequired
+@pytest.mark.bluetooth
async def test_pairing_verb(event_loop, service: BTS, btaddr):
msgid = await service.pair(btaddr)
resp = await service.afbresponse()
@@ -124,6 +148,8 @@ async def test_pairing_verb(event_loop, service: BTS, btaddr):
assert resp.status == 'success', f'pair verb failed - {resp.info}'
+@pytest.mark.hwrequired
+@pytest.mark.bluetooth
async def test_connect_verb(event_loop, service: BTS, btaddr):
msgid = await service.connect(btaddr)
resp = await service.afbresponse()
@@ -131,6 +157,8 @@ async def test_connect_verb(event_loop, service: BTS, btaddr):
assert resp.status == 'success', f'connect verb failed - {resp.info}'
+@pytest.mark.hwrequired
+@pytest.mark.bluetooth
async def test_disconnect_verb(event_loop, service: BTS, btaddr):
msgid = await service.disconnect(btaddr)
resp = await service.afbresponse()
@@ -138,6 +166,8 @@ async def test_disconnect_verb(event_loop, service: BTS, btaddr):
assert resp.status == 'success', f'disconnect verb failed - {resp.info}'
+@pytest.mark.hwrequired
+@pytest.mark.bluetooth
async def test_remove_pairing_verb(event_loop, service: BTS, btaddr):
msgid = await service.remove_device(btaddr)
resp = await service.afbresponse()
@@ -145,6 +175,8 @@ async def test_remove_pairing_verb(event_loop, service: BTS, btaddr):
assert resp.status == 'success'
+@pytest.mark.hwrequired
+@pytest.mark.bluetooth
@pytest.mark.xfail(reason='This is expected to fail because there has to be an ongoing pairing attempt')
async def test_confirm_pairing_verb(event_loop, service: BTS, btaddr):
msgid = await service.confirm_pairing(pincode='123456')