example: check gRPC response result for better errors on failures
Change-Id: Id97a43071e7b04e041f7ff18e4fc0c9b2d2c0d47
diff --git a/examples/example.py b/examples/example.py
index 483586f..031fa16 100644
--- a/examples/example.py
+++ b/examples/example.py
@@ -56,10 +56,12 @@
self.ref.log.info(f'Address: {ref_address}')
def test_get_remote_name(self):
- dut_name = self.ref.host.GetRemoteName(address=self.dut.address).name
- self.ref.log.info(f'DUT remote name: {dut_name}')
- ref_name = self.dut.host.GetRemoteName(address=self.ref.address).name
- self.dut.log.info(f'REF remote name: {ref_name}')
+ dut_name = self.ref.host.GetRemoteName(address=self.dut.address)
+ assert_equal(dut_name.WhichOneof('result'), 'name')
+ self.ref.log.info(f'DUT remote name: {dut_name.name}')
+ ref_name = self.dut.host.GetRemoteName(address=self.ref.address)
+ assert_equal(ref_name.WhichOneof('result'), 'name')
+ self.dut.log.info(f'REF remote name: {ref_name.name}')
def test_classic_connect(self):
dut_address = self.dut.address
@@ -206,10 +208,17 @@
on_dut_pairing.cancel()
pairing = asyncio.create_task(handle_pairing_events())
- ref_dut = (await self.ref.host.Connect(address=self.dut.address)).connection
- dut_ref = (await self.dut.host.WaitConnection(address=self.ref.address)).connection
+ (dut_ref, ref_dut) = await asyncio.gather(
+ self.dut.host.WaitConnection(address=self.ref.address),
+ self.ref.host.Connect(address=self.dut.address),
+ )
- await asyncio.gather(
+ assert_equal(ref_dut.WhichOneof('result'), 'connection')
+ assert_equal(dut_ref.WhichOneof('result'), 'connection')
+ ref_dut = ref_dut.connection
+ dut_ref = dut_ref.connection
+
+ (secure, wait_security) = await asyncio.gather(
self.ref.security.Secure(connection=ref_dut, classic=SecurityLevel.LEVEL2),
self.dut.security.WaitSecurity(connection=dut_ref, classic=SecurityLevel.LEVEL2)
)
@@ -218,6 +227,9 @@
with suppress(asyncio.CancelledError, futures.CancelledError):
await pairing
+ assert_equal(secure.WhichOneof('result'), 'success')
+ assert_equal(wait_security.WhichOneof('result'), 'success')
+
await asyncio.gather(
self.dut.host.Disconnect(connection=dut_ref),
self.ref.host.WaitDisconnection(connection=ref_dut)
@@ -306,10 +318,17 @@
on_dut_pairing.cancel()
pairing = asyncio.create_task(handle_pairing_events())
- ref_dut = (await self.ref.host.ConnectLE(own_address_type=ref_address_type, **dut_address)).connection
- dut_ref = (await self.dut.host.WaitLEConnection(**ref_address)).connection
+ (dut_ref, ref_dut) = await asyncio.gather(
+ self.dut.host.WaitLEConnection(**ref_address),
+ self.ref.host.ConnectLE(own_address_type=ref_address_type, **dut_address),
+ )
- await asyncio.gather(
+ assert_equal(ref_dut.WhichOneof('result'), 'connection')
+ assert_equal(dut_ref.WhichOneof('result'), 'connection')
+ ref_dut = ref_dut.connection
+ dut_ref = dut_ref.connection
+
+ (secure, wait_security) = await asyncio.gather(
self.ref.security.Secure(connection=ref_dut, le=LESecurityLevel.LE_LEVEL4),
self.dut.security.WaitSecurity(connection=dut_ref, le=LESecurityLevel.LE_LEVEL4)
)
@@ -318,6 +337,9 @@
with suppress(asyncio.CancelledError, futures.CancelledError):
await pairing
+ assert_equal(secure.WhichOneof('result'), 'success')
+ assert_equal(wait_security.WhichOneof('result'), 'success')
+
await asyncio.gather(
self.dut.host.Disconnect(connection=dut_ref),
self.ref.host.WaitDisconnection(connection=ref_dut)