diff options
author | Ji Soo Shin <jisshin@google.com> | 2019-04-16 14:32:40 -0700 |
---|---|---|
committer | Ji Soo Shin <jisshin@google.com> | 2019-04-16 21:05:01 -0700 |
commit | 57fc8cfa56f093a398b4cd238bebe8cc01a6d804 (patch) | |
tree | 99b0f9ff22c3f8e9fffaca121e081ba7b1e07560 | |
parent | 3db7cc61ed08e49fce2911d7f18c4f3971ed8f6e (diff) | |
download | system-test-harness-57fc8cfa56f093a398b4cd238bebe8cc01a6d804.tar.gz |
faceauth_tests: add version mismatch test
Check if citadel faceauth detects comparison of embeddings that have
different versions.
Bug: 130304269
Test: bazel
Change-Id: Icd18b1feed1e4fe118cefa56206ea0c9d44d3de0
Signed-off-by: Ji Soo Shin <jisshin@google.com>
-rw-r--r-- | src/faceauth_tests.cc | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/faceauth_tests.cc b/src/faceauth_tests.cc index 9ced6e5..9ca6a30 100644 --- a/src/faceauth_tests.cc +++ b/src/faceauth_tests.cc @@ -92,10 +92,10 @@ static fa_task_t MakeTask(uint64_t session_id, uint32_t profile_id, return task; } -static fa_embedding_t* MakeEmbedding(uint32_t base) { +static fa_embedding_t* MakeEmbedding(uint32_t base, uint32_t version = 1) { static fa_embedding_t embed; memset(&embed, base, sizeof(fa_embedding_t)); - embed.version = 1; + embed.version = version; embed.valid = 0; embed.crc = CalcCrc8(reinterpret_cast<const uint8_t*>(&embed), offsetof(struct fa_embedding_t, crc)); @@ -388,5 +388,18 @@ TEST_F(FaceAuthTest, SimpleFeatureTest) { } } } + +TEST_F(FaceAuthTest, EmbeddingVersionTest) { + uint64_t session_id = 0xFACE0000BBBB0000ull; + session_id++; + Run(MakeResult(session_id, FACEAUTH_SUCCESS), + MakeTask(session_id, 0x1, FACEAUTH_CMD_ENROLL), MakeEmbedding(0x11)); + session_id++; + Run(MakeResult(session_id, FACEAUTH_SUCCESS, FACEAUTH_MATCH), + MakeTask(session_id, 0x1, FACEAUTH_CMD_COMP), MakeEmbedding(0x11)); + session_id++; + Run(MakeResult(session_id, FACEAUTH_ERR_RECALIBRATE, FACEAUTH_NOMATCH), + MakeTask(session_id, 0x1, FACEAUTH_CMD_COMP), MakeEmbedding(0x11, 0x2)); +} } |