mirror of
https://gitlab.freedesktop.org/libfprint/libfprint.git
synced 2025-11-15 07:38:12 +00:00
virtual-device: Add ability to close a device with delay or with error
This commit is contained in:
@@ -544,6 +544,27 @@ class VirtualDevice(unittest.TestCase):
|
||||
self.complete_verify()
|
||||
self.assertTrue(self._verify_reported)
|
||||
|
||||
def test_close_error(self):
|
||||
self._close_on_teardown = False
|
||||
close_res = None
|
||||
|
||||
def on_closed(dev, res):
|
||||
nonlocal close_res
|
||||
try:
|
||||
close_res = dev.close_finish(res)
|
||||
except GLib.Error as e:
|
||||
close_res = e
|
||||
|
||||
self.send_command('SLEEP', 100)
|
||||
self.send_error(FPrint.DeviceError.BUSY)
|
||||
self.dev.close(callback=on_closed)
|
||||
self.wait_timeout(2)
|
||||
self.assertIsNone(close_res)
|
||||
|
||||
while not close_res:
|
||||
ctx.iteration(True)
|
||||
|
||||
self.assertEqual(close_res.code, int(FPrint.DeviceError.BUSY))
|
||||
|
||||
class VirtualDeviceStorage(VirtualDevice):
|
||||
|
||||
|
||||
Reference in New Issue
Block a user