diff --git a/src/device.c b/src/device.c index 68a0143..a4a6632 100644 --- a/src/device.c +++ b/src/device.c @@ -345,6 +345,8 @@ verify_result_to_name (gboolean match, GError *error) */ if (g_error_matches (error, FP_DEVICE_ERROR, FP_DEVICE_ERROR_PROTO)) return "verify-disconnect"; + else if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_CANCELLED)) + return "verify-no-match"; return "verify-unknown-error"; } diff --git a/tests/fprintd.py b/tests/fprintd.py index 1883f0d..f237eb1 100755 --- a/tests/fprintd.py +++ b/tests/fprintd.py @@ -527,6 +527,19 @@ class FPrintdVirtualDeviceTest(FPrintdTest): self.device.EnrollStop() self.wait_for_result(expected='enroll-failed') + def test_verify_stop_cancels(self): + self.device.Claim('(s)', 'testuser') + self.enroll_image('whorl') + self.device.VerifyStart('(s)', 'any') + self.device.VerifyStop() + self.wait_for_result(expected='verify-no-match') + + def test_verify_finger_stop_cancels(self): + self.device.Claim('(s)', 'testuser') + self.enroll_image('whorl', finger='left-thumb') + self.device.VerifyStart('(s)', 'left-thumb') + self.device.VerifyStop() + if __name__ == '__main__': if len(sys.argv) == 2 and sys.argv[1] == "list-tests":