mirror of
https://github.com/Evolution-X/hardware_interfaces
synced 2026-02-01 05:49:27 +00:00
Merge "Check for the correct userId in callbacks"
This commit is contained in:
committed by
Android (Google) Code Review
commit
36e92f17cd
@@ -64,7 +64,7 @@ struct FaceCallbackArgs {
|
||||
// The error passed to the last onError() callback.
|
||||
FaceError error;
|
||||
|
||||
// The userId passed to the last onRemoved() callback.
|
||||
// The userId passed to the last callback.
|
||||
int32_t userId;
|
||||
};
|
||||
|
||||
@@ -74,24 +74,32 @@ struct FaceCallbackArgs {
|
||||
class FaceCallback : public ::testing::VtsHalHidlTargetCallbackBase<FaceCallbackArgs>,
|
||||
public IBiometricsFaceClientCallback {
|
||||
public:
|
||||
Return<void> onEnrollResult(uint64_t, uint32_t, int32_t, uint32_t) override {
|
||||
NotifyFromCallback(kCallbackNameOnEnrollResult);
|
||||
Return<void> onEnrollResult(uint64_t, uint32_t, int32_t userId, uint32_t) override {
|
||||
FaceCallbackArgs args = {};
|
||||
args.userId = userId;
|
||||
NotifyFromCallback(kCallbackNameOnEnrollResult, args);
|
||||
return Void();
|
||||
}
|
||||
|
||||
Return<void> onAuthenticated(uint64_t, uint32_t, int32_t, const hidl_vec<uint8_t>&) override {
|
||||
NotifyFromCallback(kCallbackNameOnAuthenticated);
|
||||
Return<void> onAuthenticated(uint64_t, uint32_t, int32_t userId,
|
||||
const hidl_vec<uint8_t>&) override {
|
||||
FaceCallbackArgs args = {};
|
||||
args.userId = userId;
|
||||
NotifyFromCallback(kCallbackNameOnAuthenticated, args);
|
||||
return Void();
|
||||
}
|
||||
|
||||
Return<void> onAcquired(uint64_t, int32_t, FaceAcquiredInfo, int32_t) override {
|
||||
NotifyFromCallback(kCallbackNameOnAcquired);
|
||||
Return<void> onAcquired(uint64_t, int32_t userId, FaceAcquiredInfo, int32_t) override {
|
||||
FaceCallbackArgs args = {};
|
||||
args.userId = userId;
|
||||
NotifyFromCallback(kCallbackNameOnAcquired, args);
|
||||
return Void();
|
||||
}
|
||||
|
||||
Return<void> onError(uint64_t, int32_t, FaceError error, int32_t) override {
|
||||
Return<void> onError(uint64_t, int32_t userId, FaceError error, int32_t) override {
|
||||
FaceCallbackArgs args = {};
|
||||
args.error = error;
|
||||
args.userId = userId;
|
||||
NotifyFromCallback(kCallbackNameOnError, args);
|
||||
return Void();
|
||||
}
|
||||
@@ -103,8 +111,10 @@ class FaceCallback : public ::testing::VtsHalHidlTargetCallbackBase<FaceCallback
|
||||
return Void();
|
||||
}
|
||||
|
||||
Return<void> onEnumerate(uint64_t, const hidl_vec<uint32_t>&, int32_t) override {
|
||||
NotifyFromCallback(kCallbackNameOnEnumerate);
|
||||
Return<void> onEnumerate(uint64_t, const hidl_vec<uint32_t>&, int32_t userId) override {
|
||||
FaceCallbackArgs args = {};
|
||||
args.userId = userId;
|
||||
NotifyFromCallback(kCallbackNameOnEnumerate, args);
|
||||
return Void();
|
||||
}
|
||||
|
||||
@@ -185,6 +195,7 @@ TEST_F(FaceHidlTest, EnrollZeroHatTest) {
|
||||
// onError should be called with a meaningful (nonzero) error.
|
||||
auto res = mCallback->WaitForCallback(kCallbackNameOnError);
|
||||
EXPECT_TRUE(res.no_timeout);
|
||||
EXPECT_EQ(kUserId, res.args->userId);
|
||||
EXPECT_EQ(FaceError::UNABLE_TO_PROCESS, res.args->error);
|
||||
}
|
||||
|
||||
@@ -205,6 +216,7 @@ TEST_F(FaceHidlTest, EnrollGarbageHatTest) {
|
||||
// onError should be called with a meaningful (nonzero) error.
|
||||
auto res = mCallback->WaitForCallback(kCallbackNameOnError);
|
||||
EXPECT_TRUE(res.no_timeout);
|
||||
EXPECT_EQ(kUserId, res.args->userId);
|
||||
EXPECT_EQ(FaceError::UNABLE_TO_PROCESS, res.args->error);
|
||||
}
|
||||
|
||||
@@ -271,6 +283,7 @@ TEST_F(FaceHidlTest, EnumerateTest) {
|
||||
Return<Status> ret = mService->enumerate();
|
||||
ASSERT_EQ(Status::OK, static_cast<Status>(ret));
|
||||
auto res = mCallback->WaitForCallback(kCallbackNameOnEnumerate);
|
||||
EXPECT_EQ(kUserId, res.args->userId);
|
||||
EXPECT_TRUE(res.no_timeout);
|
||||
}
|
||||
|
||||
@@ -330,6 +343,7 @@ TEST_F(FaceHidlTest, CancelTest) {
|
||||
auto res = mCallback->WaitForCallback(kCallbackNameOnError);
|
||||
// make sure callback was invoked within kRevokeChallengeTimeout
|
||||
EXPECT_TRUE(res.no_timeout);
|
||||
EXPECT_EQ(kUserId, res.args->userId);
|
||||
EXPECT_EQ(FaceError::CANCELED, res.args->error);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user