1 /*
2 * Copyright (C) 2023 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 * http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16 #include "account_related_group_auth_dir_test.h"
17 #include <cinttypes>
18 #include <unistd.h>
19 #include <gtest/gtest.h>
20 #include "base/security/device_auth/services/legacy/group_auth/src/group_auth_manager/account_related_group_auth/account_related_group_auth.c"
21 using namespace std;
22 using namespace testing::ext;
23
24 namespace {
25 // Beginning for account_related_group_auth.c test.
26 #define TEST_OS_ACCOUNT_ID 0
27 #define TEST_USER_ID "UserId"
28 #define TEST_AUTH_FORM (-1)
29 #define TEST_EXT_DATA "testExtData"
30 #define TEST_DEVICE_ID "testDeviceId"
31 #define TEST_GROUP_ID "testGroupId"
32 #define TEST_REQUEST_ID 123
33
34 class AccountRelatedGroupAuthTest : public testing::Test {
35 public:
36 static void SetUpTestCase();
37 static void TearDownTestCase();
38 void SetUp();
39 void TearDown();
40 };
41
SetUpTestCase()42 void AccountRelatedGroupAuthTest::SetUpTestCase() {}
43
TearDownTestCase()44 void AccountRelatedGroupAuthTest::TearDownTestCase() {}
45
SetUp()46 void AccountRelatedGroupAuthTest::SetUp()
47 {
48 int ret = InitDeviceAuthService();
49 EXPECT_EQ(ret, HC_SUCCESS);
50 }
51
TearDown()52 void AccountRelatedGroupAuthTest::TearDown()
53 {
54 DestroyDeviceAuthService();
55 }
56
57 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest001, TestSize.Level0)
58 {
59 AccountRelatedGroupAuth *groupAuth = (AccountRelatedGroupAuth *)GetAccountRelatedGroupAuth();
60 ASSERT_NE(groupAuth, nullptr);
61 CJson *param = CreateJson();
62 ASSERT_NE(param, nullptr);
63 QueryGroupParams queryParams;
64 GroupEntryVec vec = CreateGroupEntryVec();
65 (void)groupAuth->getAccountCandidateGroup(0, param, &queryParams, &vec); // For unit test.
66
67 int32_t ret = AddStringToJson(param, FIELD_USER_ID, "unit_test"); // For unit test.
68 EXPECT_EQ(ret, HC_SUCCESS);
69 (void)groupAuth->getAccountCandidateGroup(0, param, &queryParams, &vec); // For unit test.
70 EXPECT_EQ(ret, HC_SUCCESS);
71 FreeJson(param);
72
73 ClearGroupEntryVec(&vec);
74 // Identical group branch can not be dealed.
75 }
76
OnTransmitTrue(int64_t requestId,const uint8_t * data,uint32_t dataLen)77 static bool OnTransmitTrue(int64_t requestId, const uint8_t *data, uint32_t dataLen)
78 {
79 (void)requestId;
80 (void)data;
81 (void)dataLen;
82 return true;
83 }
84
OnTransmitFalse(int64_t requestId,const uint8_t * data,uint32_t dataLen)85 static bool OnTransmitFalse(int64_t requestId, const uint8_t *data, uint32_t dataLen)
86 {
87 (void)requestId;
88 (void)data;
89 (void)dataLen;
90 return false;
91 }
92
OnSessionKeyReturned(int64_t requestId,const uint8_t * sessionKey,uint32_t sessionKeyLen)93 static void OnSessionKeyReturned(int64_t requestId, const uint8_t *sessionKey, uint32_t sessionKeyLen)
94 {
95 (void)requestId;
96 (void)sessionKey;
97 (void)sessionKeyLen;
98 }
99
OnFinish(int64_t requestId,int operationCode,const char * returnData)100 static void OnFinish(int64_t requestId, int operationCode, const char *returnData)
101 {
102 (void)requestId;
103 (void)operationCode;
104 (void)returnData;
105 }
106
OnError(int64_t requestId,int operationCode,int errorCode,const char * errorReturn)107 static void OnError(int64_t requestId, int operationCode, int errorCode, const char *errorReturn)
108 {
109 (void)requestId;
110 (void)operationCode;
111 (void)errorCode;
112 (void)errorReturn;
113 }
114
OnRequest(int64_t requestId,int operationCode,const char * reqParams)115 static char *OnRequest(int64_t requestId, int operationCode, const char *reqParams)
116 {
117 (void)requestId;
118 (void)operationCode;
119 (void)reqParams;
120 return nullptr;
121 }
122
123 static DeviceAuthCallback g_deviceAuthCallBack = {
124 .onTransmit = OnTransmitTrue,
125 .onSessionKeyReturned = OnSessionKeyReturned,
126 .onFinish = OnFinish,
127 .onError = OnError,
128 .onRequest = OnRequest
129 };
130
131 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest002, TestSize.Level0)
132 {
133 CJson *authParam = CreateJson();
134 ASSERT_NE(authParam, nullptr);
135 CJson *out = CreateJson();
136 if (out == nullptr) {
137 FreeJson(authParam);
138 }
139 ASSERT_NE(out, nullptr);
140 int32_t ret = HC_ERROR;
141 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, nullptr); // For unit test.
142
143 CJson *sendToPeer = CreateJson();
144 if (out == nullptr) {
145 FreeJson(authParam);
146 FreeJson(out);
147 }
148 ASSERT_NE(out, nullptr);
149 (void)AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
150 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, nullptr); // For unit test.
151
152 (void)AddStringToJson(sendToPeer, "test_key", "test_value"); // For unit test.
153 (void)AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
154 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, nullptr); // For unit test.
155
156 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
157 ret = AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
158 FreeJson(sendToPeer);
159 FreeJson(out);
160 FreeJson(authParam);
161 EXPECT_EQ(ret, HC_SUCCESS);
162 }
163
164 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest0021, TestSize.Level0)
165 {
166 int32_t ret = HC_ERROR;
167 CJson *authParam = CreateJson();
168 ASSERT_NE(authParam, nullptr);
169 CJson *out = CreateJson();
170 if (out == nullptr) {
171 FreeJson(authParam);
172 }
173 ASSERT_NE(out, nullptr);
174 CJson *sendToPeer = CreateJson();
175 if (sendToPeer == nullptr) {
176 FreeJson(authParam);
177 FreeJson(out);
178 }
179 ASSERT_NE(sendToPeer, nullptr);
180 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, nullptr); // For unit test.
181
182 (void)AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
183 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, nullptr); // For unit test.
184
185 (void)AddStringToJson(sendToPeer, "test_key", "test_value"); // For unit test.
186 (void)AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
187 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, nullptr); // For unit test.
188
189 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
190
191 g_deviceAuthCallBack.onTransmit = OnTransmitFalse;
192 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
193 ret = AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
194 EXPECT_EQ(ret, HC_SUCCESS);
195 FreeJson(sendToPeer);
196 FreeJson(out);
197 FreeJson(authParam);
198 }
199
200 // OnAccountFinish -> ReturnSessionKey success branch.
201 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest0022, TestSize.Level0)
202 {
203 int32_t ret = HC_ERROR;
204 CJson *authParam = CreateJson();
205 ASSERT_NE(authParam, nullptr);
206 CJson *out = CreateJson();
207 if (out == nullptr) {
208 FreeJson(authParam);
209 }
210 ASSERT_NE(out, nullptr);
211 CJson *sendToPeer = CreateJson();
212 if (sendToPeer == nullptr) {
213 FreeJson(authParam);
214 FreeJson(out);
215 }
216 ASSERT_NE(sendToPeer, nullptr);
217
218 (void)AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
219 (void)AddStringToJson(sendToPeer, "test_key", "test_value"); // For unit test.
220 (void)AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
221
222 (void)AddIntToJson(authParam, FIELD_KEY_LENGTH, 2); // For unit test.
223 uint8_t sessionKeyTest[2] = { 0x31, 0x32 }; // For unit test.
224 (void)AddByteToJson(out, FIELD_SESSION_KEY, sessionKeyTest, sizeof(sessionKeyTest));
225 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
226 ret = AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
227 EXPECT_EQ(ret, HC_SUCCESS);
228 FreeJson(sendToPeer);
229 FreeJson(out);
230 FreeJson(authParam);
231 }
232
233 // OnAccountFinish -> AddTrustedDeviceForAccount success failed.
234 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest0023, TestSize.Level0)
235 {
236 int32_t ret = HC_ERROR;
237 CJson *authParam = CreateJson();
238 CJson *out = CreateJson();
239 CJson *sendToPeer = CreateJson();
240
241 (void)AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
242 (void)AddStringToJson(sendToPeer, "test_key", "test_value"); // For unit test.
243 (void)AddObjToJson(out, FIELD_SEND_TO_PEER, sendToPeer);
244
245 (void)AddIntToJson(authParam, FIELD_KEY_LENGTH, 2); // For unit test.
246 uint8_t sessionKeyTest[2] = { 0x31, 0x32 }; // For unit test.
247 (void)AddByteToJson(out, FIELD_SESSION_KEY, sessionKeyTest, sizeof(sessionKeyTest));
248
249 (void)AddIntToJson(authParam, FIELD_OS_ACCOUNT_ID, 0);
250 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
251
252 (void)AddStringToJson(authParam, FIELD_PEER_CONN_DEVICE_ID, "CONN_DEVICE_ID"); // For unit test.
253 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
254
255 (void)AddStringToJson(authParam, FIELD_GROUP_ID, "GROUP_ID"); // For unit test.
256 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
257
258 CJson *sendToSelf = CreateJson();
259
260 (void)AddObjToJson(out, FIELD_SEND_TO_SELF, sendToSelf);
261 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
262
263 (void)AddIntToJson(sendToSelf, FIELD_CREDENTIAL_TYPE, 2);
264 (void)AddObjToJson(out, FIELD_SEND_TO_SELF, sendToSelf);
265 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
266
267 (void)AddStringToJson(sendToSelf, FIELD_DEV_ID, "DEV_ID"); // For unit test.
268 (void)AddObjToJson(out, FIELD_SEND_TO_SELF, sendToSelf);
269 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
270
271 (void)AddStringToJson(sendToSelf, FIELD_USER_ID, "USER_ID"); // For unit test.
272 (void)AddObjToJson(out, FIELD_SEND_TO_SELF, sendToSelf);
273 (void)GetAccountRelatedGroupAuth()->onFinish(0, authParam, out, &g_deviceAuthCallBack); // For unit test.
274 ret = AddObjToJson(out, FIELD_SEND_TO_SELF, sendToSelf);
275 EXPECT_EQ(ret, HC_SUCCESS);
276 FreeJson(sendToSelf);
277 FreeJson(out);
278 FreeJson(sendToPeer);
279 FreeJson(authParam);
280 }
281
282 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest004, TestSize.Level0)
283 {
284 TrustedGroupEntry *entry = CreateGroupEntry();
285 ASSERT_NE(entry, nullptr);
286 TrustedDeviceEntry *localAuthInfo = CreateDeviceEntry();
287 if (localAuthInfo == nullptr) {
288 DestroyGroupEntry(entry);
289 }
290 ASSERT_NE(localAuthInfo, nullptr);
291 CJson *paramsData = CreateJson();
292 if (paramsData == nullptr) {
293 DestroyGroupEntry(entry);
294 DestroyDeviceEntry(localAuthInfo);
295 }
296 ASSERT_NE(paramsData, nullptr);
297
298 int32_t res = GetAccountRelatedGroupAuth()->fillDeviceAuthInfo(0, entry,
299 localAuthInfo, paramsData); // For unit test.
300
301 FreeJson(paramsData);
302 EXPECT_NE(res, HC_SUCCESS);
303 DestroyGroupEntry(entry);
304 DestroyDeviceEntry(localAuthInfo);
305 }
306
307 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest0041, TestSize.Level0)
308 {
309 TrustedGroupEntry *entry = CreateGroupEntry();
310 ASSERT_NE(entry, nullptr);
311 TrustedDeviceEntry *localAuthInfo = CreateDeviceEntry();
312 if (localAuthInfo == nullptr) {
313 DestroyGroupEntry(entry);
314 }
315 ASSERT_NE(localAuthInfo, nullptr);
316 CJson *paramsData = CreateJson();
317 if (paramsData == nullptr) {
318 DestroyGroupEntry(entry);
319 DestroyDeviceEntry(localAuthInfo);
320 }
321 ASSERT_NE(paramsData, nullptr);
322
323 int32_t res = AddStringToJson(paramsData, FIELD_PEER_CONN_DEVICE_ID, "CONN_DEVICE_ID"); // For unit test.
324 EXPECT_EQ(res, HC_SUCCESS);
325
326 (void)GetAccountRelatedGroupAuth()->fillDeviceAuthInfo(0, entry,
327 localAuthInfo, paramsData); // For unit test.
328
329 FreeJson(paramsData);
330 DestroyGroupEntry(entry);
331 DestroyDeviceEntry(localAuthInfo);
332 }
333
334 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest0042, TestSize.Level0)
335 {
336 TrustedGroupEntry *entry = CreateGroupEntry();
337 ASSERT_NE(entry, nullptr);
338 TrustedDeviceEntry *localAuthInfo = CreateDeviceEntry();
339 if (localAuthInfo == nullptr) {
340 DestroyGroupEntry(entry);
341 }
342 ASSERT_NE(localAuthInfo, nullptr);
343
344 CJson *paramsData = CreateJson();
345 if (paramsData == nullptr) {
346 DestroyGroupEntry(entry);
347 DestroyDeviceEntry(localAuthInfo);
348 }
349 ASSERT_NE(paramsData, nullptr);
350 (void)AddStringToJson(paramsData, FIELD_PEER_CONN_DEVICE_ID, "CONN_DEVICE_ID"); // For unit test.
351
352 entry->userId = CreateString();
353 (void)StringSetPointer(&entry->userId, "selfUserId"); // For unit test.
354 int32_t ret = GetAccountRelatedGroupAuth()->fillDeviceAuthInfo(0, entry,
355 localAuthInfo, paramsData); // For unit test.
356 EXPECT_EQ(ret, HC_SUCCESS);
357
358 FreeJson(paramsData);
359 DestroyGroupEntry(entry);
360 DestroyDeviceEntry(localAuthInfo);
361 }
362
363 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest0043, TestSize.Level0)
364 {
365 TrustedGroupEntry *entry = CreateGroupEntry();
366 ASSERT_NE(entry, nullptr);
367 TrustedDeviceEntry *localAuthInfo = CreateDeviceEntry();
368 if (localAuthInfo == nullptr) {
369 DestroyGroupEntry(entry);
370 }
371 ASSERT_NE(localAuthInfo, nullptr);
372 CJson *paramsData = CreateJson();
373 if (paramsData == nullptr) {
374 DestroyGroupEntry(entry);
375 DestroyDeviceEntry(localAuthInfo);
376 }
377 ASSERT_NE(paramsData, nullptr);
378 (void)AddStringToJson(paramsData, FIELD_PEER_CONN_DEVICE_ID, "CONN_DEVICE_ID"); // For unit test.
379 entry->userId = CreateString();
380 (void)StringSetPointer(&entry->userId, "selfUserId"); // For unit test.
381
382 entry->id = CreateString();
383 (void)StringSetPointer(&entry->id, "groupId"); // For unit test.
384 int32_t ret = GetAccountRelatedGroupAuth()->fillDeviceAuthInfo(0, entry,
385 localAuthInfo, paramsData); // For unit test.
386 EXPECT_EQ(ret, HC_SUCCESS);
387
388 FreeJson(paramsData);
389 DestroyGroupEntry(entry);
390 DestroyDeviceEntry(localAuthInfo);
391 }
392
393 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest00431, TestSize.Level0)
394 {
395 TrustedGroupEntry *entry = CreateGroupEntry();
396 ASSERT_NE(entry, nullptr);
397 TrustedDeviceEntry *localAuthInfo = CreateDeviceEntry();
398 if (localAuthInfo == nullptr) {
399 DestroyGroupEntry(entry);
400 }
401 ASSERT_NE(localAuthInfo, nullptr);
402
403 CJson *paramsData = CreateJson();
404 if (paramsData == nullptr) {
405 DestroyGroupEntry(entry);
406 DestroyDeviceEntry(localAuthInfo);
407 }
408 ASSERT_NE(paramsData, nullptr);
409
410 (void)AddStringToJson(paramsData, FIELD_PEER_CONN_DEVICE_ID, "CONN_DEVICE_ID"); // For unit test.
411 entry->userId = CreateString();
412 (void)StringSetPointer(&entry->userId, "selfUserId"); // For unit test.
413
414 entry->id = CreateString();
415 (void)StringSetPointer(&entry->id, "groupId"); // For unit test.
416
417 localAuthInfo->udid = CreateString();
418 (void)StringSetPointer(&localAuthInfo->udid, "selfDeviceId"); // For unit test.
419 int32_t ret = GetAccountRelatedGroupAuth()->fillDeviceAuthInfo(0, entry,
420 localAuthInfo, paramsData); // For unit test.
421 EXPECT_EQ(ret, HC_SUCCESS);
422
423 FreeJson(paramsData);
424 DestroyGroupEntry(entry);
425 DestroyDeviceEntry(localAuthInfo);
426 }
427
428 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest0044, TestSize.Level0)
429 {
430 TrustedGroupEntry *entry = CreateGroupEntry();
431 ASSERT_NE(entry, nullptr);
432 TrustedDeviceEntry *localAuthInfo = CreateDeviceEntry();
433 if (localAuthInfo == nullptr) {
434 DestroyGroupEntry(entry);
435 }
436 ASSERT_NE(localAuthInfo, nullptr);
437 CJson *paramsData = CreateJson();
438 if (paramsData == nullptr) {
439 DestroyGroupEntry(entry);
440 DestroyDeviceEntry(localAuthInfo);
441 }
442 ASSERT_NE(paramsData, nullptr);
443 entry->userId = CreateString();
444 (void)StringSetPointer(&entry->userId, "selfUserId");
445 entry->id = CreateString();
446 (void)StringSetPointer(&entry->id, "groupId");
447
448 localAuthInfo->udid = CreateString();
449 (void)StringSetPointer(&localAuthInfo->udid, "selfDeviceId");
450 localAuthInfo->udid = CreateString();
451 (void)StringSetPointer(&localAuthInfo->udid, "selfDevId");
452
453 (void)AddStringToJson(paramsData, FIELD_PEER_CONN_DEVICE_ID, "CONN_DEVICE_ID");
454 int32_t ret = GetAccountRelatedGroupAuth()->fillDeviceAuthInfo(0, entry,
455 localAuthInfo, paramsData); // For unit test.
456 EXPECT_EQ(ret, HC_SUCCESS);
457
458 FreeJson(paramsData);
459 DestroyGroupEntry(entry);
460 DestroyDeviceEntry(localAuthInfo);
461 }
462
463 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest007, TestSize.Level0)
464 {
465 CJson *confirmationJson = CreateJson();
466 ASSERT_NE(confirmationJson, nullptr);
467 CJson *dataFromClient = CreateJson();
468 if (dataFromClient == nullptr) {
469 FreeJson(confirmationJson);
470 }
471 ASSERT_NE(dataFromClient, nullptr);
472 int32_t ret = GetAccountRelatedGroupAuth()->combineServerConfirmParams(confirmationJson, dataFromClient);
473 EXPECT_NE(ret, HC_SUCCESS);
474 FreeJson(confirmationJson);
475 FreeJson(dataFromClient);
476 }
477
478 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest0071, TestSize.Level0)
479 {
480 CJson *confirmationJson = CreateJson();
481 ASSERT_NE(confirmationJson, nullptr);
482 CJson *dataFromClient = CreateJson();
483 if (dataFromClient == nullptr) {
484 FreeJson(confirmationJson);
485 }
486 ASSERT_NE(dataFromClient, nullptr);
487
488 (void)AddStringToJson(confirmationJson, FIELD_PEER_CONN_DEVICE_ID, "CONN_DEVICE_ID"); // For unit test.
489 int32_t ret = GetAccountRelatedGroupAuth()->combineServerConfirmParams(confirmationJson, dataFromClient);
490 EXPECT_EQ(ret, HC_SUCCESS);
491 FreeJson(confirmationJson);
492 FreeJson(dataFromClient);
493 }
494
495 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest008, TestSize.Level0)
496 {
497 CJson *in = CreateJson();
498 int32_t ret = GetUserIdForAccount(in, in);
499 EXPECT_NE(ret, HC_SUCCESS);
500 FreeJson(in);
501 }
502
503 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest009, TestSize.Level0)
504 {
505 char *userIdDb = nullptr;
506 char *peerUserIdInDb = nullptr;
507 bool ret = IsUserIdEqual(userIdDb, peerUserIdInDb);
508 EXPECT_NE(ret, true);
509 }
510
511 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest010, TestSize.Level0)
512 {
513 TrustedGroupEntry *entry = CreateGroupEntry();
514 bool ret = IsPeerInAccountRelatedGroup(entry, nullptr, ALL_GROUP);
515 EXPECT_NE(ret, true);
516
517 QueryGroupParams params = {
518 .groupId = nullptr,
519 .groupName = nullptr,
520 .ownerName = nullptr,
521 .userId = nullptr,
522 .groupType = ALL_GROUP,
523 .groupVisibility = ALL_GROUP_VISIBILITY
524 };
525 GaGetAccountGroup(TEST_OS_ACCOUNT_ID, IDENTICAL_ACCOUNT_GROUP, nullptr, ¶ms, nullptr);
526 DestroyGroupEntry(entry);
527 }
528
529 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest011, TestSize.Level0)
530 {
531 int32_t ret = QueryAuthGroupForServer(TEST_OS_ACCOUNT_ID, nullptr, nullptr);
532 EXPECT_NE(ret, HC_SUCCESS);
533 CJson *in = CreateJson();
534 (void)AddStringToJson(in, FIELD_USER_ID, TEST_USER_ID);
535 ret = QueryAuthGroupForServer(TEST_OS_ACCOUNT_ID, nullptr, in);
536 EXPECT_NE(ret, HC_SUCCESS);
537 (void)AddIntToJson(in, FIELD_AUTH_FORM, TEST_AUTH_FORM);
538 ret = QueryAuthGroupForServer(TEST_OS_ACCOUNT_ID, nullptr, in);
539 EXPECT_NE(ret, HC_SUCCESS);
540 FreeJson(in);
541 }
542
543 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest012, TestSize.Level0)
544 {
545 CJson *in = CreateJson();
546 char *peerUserId = nullptr;
547 int32_t ret = GetPeerUserIdFromReceivedData(in, &peerUserId);
548 EXPECT_NE(ret, HC_SUCCESS);
549 (void)AddStringToJson(in, FIELD_PLUGIN_EXT_DATA, TEST_EXT_DATA);
550 ret = GetPeerUserIdFromReceivedData(in, &peerUserId);
551 EXPECT_NE(ret, HC_SUCCESS);
552 (void)AddStringToJson(in, FIELD_USER_ID, TEST_USER_ID);
553 ret = GetPeerUserIdFromReceivedData(in, &peerUserId);
554 EXPECT_NE(ret, HC_SUCCESS);
555 FreeJson(in);
556 }
557
558 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest013, TestSize.Level0)
559 {
560 CJson *in = CreateJson();
561 int32_t ret = QueryGroupForAccountPlugin(TEST_OS_ACCOUNT_ID, nullptr, in);
562 EXPECT_NE(ret, HC_SUCCESS);
563 (void)AddIntToJson(in, FIELD_AUTH_FORM, TEST_AUTH_FORM);
564 ret = QueryGroupForAccountPlugin(TEST_OS_ACCOUNT_ID, nullptr, in);
565 EXPECT_NE(ret, HC_SUCCESS);
566 FreeJson(in);
567 }
568
569 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest014, TestSize.Level0)
570 {
571 CJson *in = CreateJson();
572 TrustedGroupEntry *entry = CreateGroupEntry();
573 int32_t ret = AddSelfDevInfoForServer(TEST_OS_ACCOUNT_ID, entry, in);
574 EXPECT_NE(ret, HC_SUCCESS);
575 DestroyGroupEntry(entry);
576 AddServerParamsForAccountPlugin(in);
577 (void)AddIntToJson(in, FIELD_OS_ACCOUNT_ID, TEST_OS_ACCOUNT_ID);
578 AddServerParamsForAccountPlugin(in);
579 FreeJson(in);
580 }
581
582 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest015, TestSize.Level0)
583 {
584 CJson *in = CreateJson();
585 int32_t ret = AddSelfAccountInfoForServer(in);
586 EXPECT_NE(ret, HC_SUCCESS);
587 (void)AddIntToJson(in, FIELD_OS_ACCOUNT_ID, TEST_OS_ACCOUNT_ID);
588 ret = AddSelfAccountInfoForServer(in);
589 EXPECT_NE(ret, HC_SUCCESS);
590 FreeJson(in);
591 }
592
593 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest016, TestSize.Level0)
594 {
595 CJson *in = CreateJson();
596 int32_t ret = AddTrustedDeviceForAccount(in, in);
597 EXPECT_NE(ret, HC_SUCCESS);
598 (void)AddIntToJson(in, FIELD_OS_ACCOUNT_ID, TEST_OS_ACCOUNT_ID);
599 ret = AddTrustedDeviceForAccount(in, in);
600 EXPECT_NE(ret, HC_SUCCESS);
601 (void)AddStringToJson(in, FIELD_PEER_CONN_DEVICE_ID, TEST_DEVICE_ID);
602 ret = AddTrustedDeviceForAccount(in, in);
603 EXPECT_NE(ret, HC_SUCCESS);
604 (void)AddStringToJson(in, FIELD_GROUP_ID, TEST_GROUP_ID);
605 ret = AddTrustedDeviceForAccount(in, in);
606 EXPECT_NE(ret, HC_SUCCESS);
607 FreeJson(in);
608 }
609
610 HWTEST_F(AccountRelatedGroupAuthTest, AccountRelatedGroupAuthTest017, TestSize.Level0)
611 {
612 CJson *in = CreateJson();
613 int32_t ret = AccountOnFinishToSelf(TEST_REQUEST_ID, in, in, nullptr);
614 EXPECT_NE(ret, HC_SUCCESS);
615 FreeJson(in);
616 }
617
618 // Ending for account_related_group_auth.c test.
619 }