From 4cc2c229cd67967f041c948f8206898c8eba8a54 Mon Sep 17 00:00:00 2001 From: wuqi0105 Date: Thu, 24 Feb 2022 15:32:56 +0800 Subject: [PATCH 1/6] offline timer Signed-off-by: wuqi0105 --- test/unittest/BUILD.gn | 100 +++++++------ .../UTTest_dm_device_state_manager.cpp | 10 +- test/unittest/mock/device_auth.h | 132 +++++++----------- test/unittest/mock/parameter.cpp | 5 - test/unittest/mock/parameter.h | 1 - 5 files changed, 102 insertions(+), 146 deletions(-) diff --git a/test/unittest/BUILD.gn b/test/unittest/BUILD.gn index 8e3dbd99a..fd0d387c7 100644 --- a/test/unittest/BUILD.gn +++ b/test/unittest/BUILD.gn @@ -105,16 +105,14 @@ ohos_unittest("UTTest_dm_device_state_manager") { module_out_path = module_out_path sources = [ - "${services_path}/src/adapter/standard/dm_adapter_manager.cpp", - "${services_path}/src/config/dm_config_manager.cpp", - "${services_path}/src/dependency/hichain/hichain_connector.cpp", - "${services_path}/src/dependency/multipleuser/multiple_user_connector.cpp", - "${services_path}/src/dependency/softbus/softbus_connector.cpp", - "${services_path}/src/dependency/softbus/softbus_session.cpp", - "${services_path}/src/dependency/timer/dm_timer.cpp", - "${services_path}/src/device_manager_service_listener.cpp", - "${services_path}/src/devicestate/dm_device_state_manager.cpp", - "${services_path}/src/discovery/dm_discovery_manager.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/adapter/standard/dm_adapter_manager.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/config/dm_config_manager.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/softbus/softbus_connector.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/softbus/softbus_session.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/timer/dm_timer.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/device_manager_service_listener.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/devicestate/dm_device_state_manager.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp", "//foundation/distributedhardware/devicemanager/test/unittest/mock/ipc_server_listener.cpp", "//foundation/distributedhardware/devicemanager/test/unittest/mock/parameter.cpp", "UTTest_dm_device_state_manager.cpp", @@ -130,7 +128,7 @@ ohos_unittest("UTTest_device_manager_service_listener") { module_out_path = module_out_path sources = [ - "${services_path}/src/device_manager_service_listener.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/device_manager_service_listener.cpp", "//foundation/distributedhardware/devicemanager/test/unittest/mock/ipc_server_listener.cpp", "UTTest_device_manager_service_listener.cpp", ] @@ -188,11 +186,11 @@ ohos_unittest("UTTest_dm_discovery_manager") { module_out_path = module_out_path sources = [ - "${services_path}/src/dependency/softbus/softbus_connector.cpp", - "${services_path}/src/dependency/softbus/softbus_session.cpp", - "${services_path}/src/dependency/timer/dm_timer.cpp", - "${services_path}/src/device_manager_service_listener.cpp", - "${services_path}/src/discovery/dm_discovery_manager.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/softbus/softbus_connector.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/softbus/softbus_session.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/timer/dm_timer.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/device_manager_service_listener.cpp", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp", "//foundation/distributedhardware/devicemanager/test/unittest/mock/ipc_server_listener.cpp", "//foundation/distributedhardware/devicemanager/test/unittest/mock/parameter.cpp", "UTTest_dm_discovery_manager.cpp", @@ -207,10 +205,10 @@ config("device_manager_test_common_public_config") { include_dirs = [ "//utils/native/base/include", "//utils/system/safwk/native/include", - "${innerkits_path}/native_cpp/include", - "${innerkits_path}/native_cpp/include/ipc/standard", - "${innerkits_path}/native_cpp/include/ipc", - "${innerkits_path}/native_cpp/include/notify", + "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include", + "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include/ipc/standard", + "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include/ipc", + "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include/notify", "//third_party/json/include", "${common_path}/include", "${common_path}/include/ipc", @@ -221,25 +219,25 @@ config("device_manager_test_common_public_config") { "${services_path}/include/dependency/timer", "${services_path}/include/discovery", "${services_path}/include/dependency/softbus", - "${services_path}/include/dependency/softbus", - "${services_path}/include/authentication", - "${services_path}/include/adapter", - "${services_path}/include", - "${services_path}/include/ipc/standard", - "${services_path}/include/discovery", - "${services_path}/include/dependency/hichain", - "${services_path}/include/deviceinfo/", - "${services_path}/include/devicestate", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/dependency/softbus", "//foundation/communication/dsoftbus/interfaces/kits/bus_center", "//foundation/communication/softbus_lite/interfaces/kits/transport", "//foundation/communication/ipc_lite/interfaces/kits", "//foundation/communication/dsoftbus/interfaces/kits/common", "//foundation/communication/dsoftbus/interfaces/kits/discovery", "//foundation/communication/dsoftbus/interfaces/inner_kits/transport", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/authentication", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/adapter", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/ipc/standard", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/discovery", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/dependency/hichain", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/deviceinfo/", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/devicestate", "//foundation/distributedhardware/devicemanager/test/unittest/mock", "//base/security/deviceauth/interfaces/innerkits", - "${services_path}/include/ability", - "${services_path}/include/config", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/ability", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/config", ] cflags = [ @@ -265,15 +263,16 @@ ohos_static_library("device_manager_test_common") { public_configs = [ ":device_manager_test_common_public_config" ] public_deps = [ - "${innerkits_path}/native_cpp:devicemanagersdk", - "${services_path}:devicemanagerservice", "${utils_path}:devicemanagerutils", "//foundation/communication/ipc/interfaces/innerkits/ipc_core:ipc_core", + "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp:devicemanagersdk", "//foundation/distributedhardware/devicemanager/interfaces/kits/js:devicemanager", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice:devicemanagerservice", "//foundation/distributedschedule/samgr/interfaces/innerkits/samgr_proxy:samgr_proxy", "//third_party/googletest:gmock", "//third_party/googletest:gtest", "//utils/native/base:utils", + "//utils/native/base:utils", ] } @@ -284,9 +283,9 @@ config("device_manager_test_common_public") { include_dirs = [ "//utils/native/base/include", "//utils/system/safwk/native/include", - "${innerkits_path}/native_cpp/include", - "${innerkits_path}/native_cpp/include/ipc", - "${innerkits_path}/native_cpp/include/notify", + "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include", + "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include/ipc", + "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include/notify", "//third_party/json/include", "${common_path}/include", "${common_path}/include/ipc", @@ -297,27 +296,23 @@ config("device_manager_test_common_public") { "${services_path}/include/dependency/timer", "${services_path}/include/discovery", "${services_path}/include/dependency/softbus", - "${services_path}/include/dependency/hichain", - "${services_path}/include/dependency/multipleuser", - "${services_path}/include/dependency/softbus", - "${services_path}/include/authentication", - "${services_path}/include/adapter", - "${services_path}/include", - "${services_path}/include/discovery", - "${services_path}/include/deviceinfo/", - "${services_path}/include/devicestate", - "//foundation/distributedhardware/devicemanager/test/unittest/mock/", - "${services_path}/include/ability", - "${services_path}/include/config", "//foundation/communication/dsoftbus/interfaces/kits/bus_center", "//foundation/communication/ipc_lite/interfaces/kits", "//foundation/communication/dsoftbus/interfaces/kits/common", "//foundation/communication/dsoftbus/interfaces/kits/discovery", "//foundation/communication/dsoftbus/interfaces/inner_kits/transport", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/dependency/softbus", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/authentication", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/adapter", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/discovery", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/dependency/hichain", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/deviceinfo/", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/devicestate", + "//foundation/distributedhardware/devicemanager/test/unittest/mock/", "//base/security/deviceauth/interfaces/innerkits", - "//base/account/os_account/interfaces/innerkits/osaccount/native/include", - "//base/account/os_account/frameworks/common/database/include", - "//base/account/os_account/frameworks/common/account_error/include", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/ability", + "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/config", ] cflags = [ @@ -343,9 +338,9 @@ ohos_static_library("device_manager_test") { public_configs = [ ":device_manager_test_common_public" ] public_deps = [ - "${innerkits_path}/native_cpp:devicemanagersdk", "${utils_path}:devicemanagerutils", "//foundation/communication/ipc/interfaces/innerkits/ipc_core:ipc_core", + "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp:devicemanagersdk", "//foundation/distributedhardware/devicemanager/interfaces/kits/js:devicemanager", "//foundation/distributedschedule/samgr/interfaces/innerkits/samgr_proxy:samgr_proxy", "//third_party/googletest:gmock", @@ -356,7 +351,6 @@ ohos_static_library("device_manager_test") { deps = [ "${innerkits_path}/native_cpp:devicemanagersdk", "${utils_path}:devicemanagerutils", - "//base/account/os_account/frameworks/osaccount/native:os_account_innerkits", "//base/security/deviceauth/services:deviceauth_sdk", "//foundation/aafwk/standard/interfaces/innerkits/ability_manager:ability_manager", "//foundation/aafwk/standard/interfaces/innerkits/want:want", diff --git a/test/unittest/UTTest_dm_device_state_manager.cpp b/test/unittest/UTTest_dm_device_state_manager.cpp index 507cdca5d..83b6eb9c0 100644 --- a/test/unittest/UTTest_dm_device_state_manager.cpp +++ b/test/unittest/UTTest_dm_device_state_manager.cpp @@ -23,7 +23,6 @@ #include "dm_device_state_manager.h" #include "ipc_notify_device_found_req.h" #include "ipc_notify_discover_result_req.h" -#include "hichain_connector.h" #include "UTTest_dm_device_state_manager.h" namespace OHOS { @@ -44,11 +43,10 @@ void DmDeviceStateManagerTest::TearDownTestCase() { } namespace { - std::shared_ptr hiChainConnector_ = std::make_shared(); std::shared_ptr softbusConnector = std::make_shared(); std::shared_ptr listener_ = std::make_shared(); std::shared_ptr dmDeviceStateManager = - std::make_shared(softbusConnector, listener_, hiChainConnector_); + std::make_shared(softbusConnector, listener_); /** * @tc.name: DmDeviceStateManager_001 @@ -58,8 +56,7 @@ std::shared_ptr dmDeviceStateManager = */ HWTEST_F(DmDeviceStateManagerTest, DmDeviceStateManager_001, testing::ext::TestSize.Level0) { - std::shared_ptr p = std::make_shared(softbusConnector, listener_, - hiChainConnector_); + std::shared_ptr p = std::make_shared(softbusConnector, listener_); ASSERT_NE(p, nullptr); } @@ -71,8 +68,7 @@ HWTEST_F(DmDeviceStateManagerTest, DmDeviceStateManager_001, testing::ext::TestS */ HWTEST_F(DmDeviceStateManagerTest, DmDeviceStateManager_002, testing::ext::TestSize.Level0) { - std::shared_ptr p = std::make_shared(softbusConnector, listener_, - hiChainConnector_); + std::shared_ptr p = std::make_shared(softbusConnector, listener_); p.reset(); EXPECT_EQ(p, nullptr); } diff --git a/test/unittest/mock/device_auth.h b/test/unittest/mock/device_auth.h index 68e7cba41..39b701f89 100644 --- a/test/unittest/mock/device_auth.h +++ b/test/unittest/mock/device_auth.h @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, @@ -16,11 +16,10 @@ #ifndef DEVICE_AUTH_H #define DEVICE_AUTH_H -#include -#include +#include #if defined(__LINUX__) || defined(_UNIX) -#define DEVICE_AUTH_API_PUBLIC __attribute__ ((visibility("default"))) +#define DEVICE_AUTH_API_PUBLIC __attribute__((visibility("default"))) #else #define DEVICE_AUTH_API_PUBLIC #endif @@ -66,68 +65,51 @@ #define FIELD_GROUP_VISIBILITY "groupVisibility" #define FIELD_EXPIRE_TIME "expireTime" #define FIELD_IS_DELETE_ALL "isDeleteAll" -#define FIELD_BLE_CHALLENGE "bleChallenge" -#define FIELD_OS_ACCOUNT_ID "osAccountId" -typedef enum { - DEFAULT_OS_ACCOUNT = 0, - INVALID_OS_ACCOUNT = -1, - ANY_OS_ACCOUNT = -2, -} OsAccountEnum; - -typedef enum { +enum GroupType { ALL_GROUP = 0, IDENTICAL_ACCOUNT_GROUP = 1, PEER_TO_PEER_GROUP = 256, COMPATIBLE_GROUP = 512, ACROSS_ACCOUNT_AUTHORIZE_GROUP = 1282 -} GroupType; +}; -typedef enum { +enum GroupOperationCode { GROUP_CREATE = 0, GROUP_DISBAND = 1, MEMBER_INVITE = 2, MEMBER_JOIN = 3, MEMBER_DELETE = 4, ACCOUNT_BIND = 5 -} GroupOperationCode; +}; -typedef enum { +enum GroupAuthForm { AUTH_FORM_INVALID_TYPE = -1, AUTH_FORM_ACCOUNT_UNRELATED = 0, AUTH_FORM_IDENTICAL_ACCOUNT = 1, AUTH_FORM_ACROSS_ACCOUNT = 2, -} GroupAuthForm; +}; -typedef enum { - IMPORT_SELF_CREDENTIAL = 0, - DELETE_SELF_CREDENTIAL = 1, - QUERY_SELF_CREDENTIAL_INFO = 2, - IMPORT_TRUSTED_CREDENTIALS = 3, - DELETE_TRUSTED_CREDENTIALS = 4, - QUERY_TRUSTED_CREDENTIALS = 5, - REQUEST_SIGNATURE = 6, -} CredentialCode; +enum CredentialCode { + CREDENTIAL_SAVE = 0, + CREDENTIAL_CLEAR = 1, + CREDENTIAL_UPDATE = 2, + CREDENTIAL_QUERY = 3, +}; -typedef enum { +enum UserType { DEVICE_TYPE_ACCESSORY = 0, DEVICE_TYPE_CONTROLLER = 1, DEVICE_TYPE_PROXY = 2 -} UserType; - -typedef enum { - EXPIRE_TIME_INDEFINITE = -1, - EXPIRE_TIME_MIN = 1, - EXPIRE_TIME_MAX = 90, -} ExpireTime; +}; -typedef enum { +enum RequestResponse { REQUEST_REJECTED = 0x80000005, REQUEST_ACCEPTED = 0x80000006, REQUEST_WAITING = 0x80000007 -} RequestResponse; +}; -typedef struct { +struct DataChangeListener { void (*onGroupCreated)(const char *groupInfo); void (*onGroupDeleted)(const char *groupInfo); void (*onDeviceBound)(const char *peerUdid, const char *groupInfo); @@ -135,40 +117,38 @@ typedef struct { void (*onDeviceNotTrusted)(const char *peerUdid); void (*onLastGroupDeleted)(const char *peerUdid, int groupType); void (*onTrustedDeviceNumChanged)(int curTrustedDeviceNum); -} DataChangeListener; +}; -typedef struct { +struct DeviceAuthCallback { bool (*onTransmit)(int64_t requestId, const uint8_t *data, uint32_t dataLen); void (*onSessionKeyReturned)(int64_t requestId, const uint8_t *sessionKey, uint32_t sessionKeyLen); void (*onFinish)(int64_t requestId, int operationCode, const char *returnData); void (*onError)(int64_t requestId, int operationCode, int errorCode, const char *errorReturn); char *(*onRequest)(int64_t requestId, int operationCode, const char *reqParams); -} DeviceAuthCallback; +}; -typedef struct { +struct GroupAuthManager { int32_t (*processData)(int64_t authReqId, const uint8_t *data, uint32_t dataLen, - const DeviceAuthCallback *gaCallback); + const DeviceAuthCallback *gaCallback); int32_t (*queryTrustedDeviceNum)(void); bool (*isTrustedDevice)(const char *udid); - int32_t (*getAuthState)(int64_t authReqId, const char *groupId, const char *peerUdid, - uint8_t *out, uint32_t *outLen); - int32_t (*authDevice)(int32_t osAccountId, int64_t authReqId, const char *authParams, - const DeviceAuthCallback *gaCallback); + int32_t (*getAuthState)(int64_t authReqId, const char *groupId, const char *peerUdid, uint8_t *out, + uint32_t *outLen); + int32_t (*authDevice)(int64_t authReqId, const char *authParams, const DeviceAuthCallback *gaCallback); void (*informDeviceDisconnection)(const char *udid); -} GroupAuthManager; +}; -typedef struct { +struct DeviceGroupManager { int32_t (*regCallback)(const char *appId, const DeviceAuthCallback *callback); int32_t (*unRegCallback)(const char *appId); int32_t (*regDataChangeListener)(const char *appId, const DataChangeListener *listener); int32_t (*unRegDataChangeListener)(const char *appId); - int32_t (*createGroup)(int32_t osAccountId, int64_t requestId, const char *appId, const char *createParams); - int32_t (*deleteGroup)(int32_t osAccountId, int64_t requestId, const char *appId, const char *disbandParams); - int32_t (*addMemberToGroup)(int32_t osAccountId, int64_t requestId, const char *appId, const char *addParams); - int32_t (*deleteMemberFromGroup)(int32_t osAccountId, int64_t requestId, const char *appId, - const char *deleteParams); + int32_t (*createGroup)(int64_t requestId, const char *appId, const char *createParams); + int32_t (*deleteGroup)(int64_t requestId, const char *appId, const char *disbandParams); + int32_t (*addMemberToGroup)(int64_t requestId, const char *appId, const char *addParams); + int32_t (*deleteMemberFromGroup)(int64_t requestId, const char *appId, const char *deleteParams); int32_t (*processData)(int64_t requestId, const uint8_t *data, uint32_t dataLen); - int32_t (*confirmRequest)(int32_t osAccountId, int64_t requestId, const char *appId, const char *confirmParams); + int32_t (*confirmRequest)(int64_t requestId, const char *appId, const char *confirmParams); int32_t (*bindPeer)(int64_t requestId, const char *appId, const char *bindParams); int32_t (*unbindPeer)(int64_t requestId, const char *appId, const char *unbindParams); int32_t (*processLiteData)(int64_t requestId, const char *appId, const uint8_t *data, uint32_t dataLen); @@ -177,32 +157,24 @@ typedef struct { int32_t (*processCredential)(int operationCode, const char *reqJsonStr, char **returnJsonStr); int32_t (*getRegisterInfo)(char **returnRegisterInfo); int32_t (*getLocalConnectInfo)(char *returnInfo, int32_t bufLen); - int32_t (*checkAccessToGroup)(int32_t osAccountId, const char *appId, const char *groupId); - int32_t (*getPkInfoList)(int32_t osAccountId, const char *appId, const char *queryParams, char **returnInfoList, - uint32_t *returnInfoNum); - int32_t (*addGroupManager)(int32_t osAccountId, const char *appId, const char *groupId, const char *managerAppId); - int32_t (*addGroupFriend)(int32_t osAccountId, const char *appId, const char *groupId, const char *friendAppId); - int32_t (*deleteGroupManager)(int32_t osAccountId, const char *appId, const char *groupId, - const char *managerAppId); - int32_t (*deleteGroupFriend)(int32_t osAccountId, const char *appId, const char *groupId, const char *friendAppId); - int32_t (*getGroupManagers)(int32_t osAccountId, const char *appId, const char *groupId, char **returnManagers, - uint32_t *returnSize); - int32_t (*getGroupFriends)(int32_t osAccountId, const char *appId, const char *groupId, - char **returnFriends, uint32_t *returnSize); - int32_t (*getGroupInfoById)(int32_t osAccountId, const char *appId, const char *groupId, char **returnGroupInfo); - int32_t (*getGroupInfo)(int32_t osAccountId, const char *appId, const char *queryParams, - char **returnGroupVec, uint32_t *groupNum); - int32_t (*getJoinedGroups)(int32_t osAccountId, const char *appId, int groupType, - char **returnGroupVec, uint32_t *groupNum); - int32_t (*getRelatedGroups)(int32_t osAccountId, const char *appId, const char *peerDeviceId, - char **returnGroupVec, uint32_t *groupNum); - int32_t (*getDeviceInfoById)(int32_t osAccountId, const char *appId, const char *deviceId, const char *groupId, - char **returnDeviceInfo); - int32_t (*getTrustedDevices)(int32_t osAccountId, const char *appId, const char *groupId, - char **returnDevInfoVec, uint32_t *deviceNum); - bool (*isDeviceInGroup)(int32_t osAccountId, const char *appId, const char *groupId, const char *deviceId); + int32_t (*checkAccessToGroup)(const char *appId, const char *groupId); + int32_t (*getPkInfoList)(const char *appId, const char *queryParams, char **returnInfoList, + uint32_t *returnInfoNum); + int32_t (*addGroupManager)(const char *appId, const char *groupId, const char *managerAppId); + int32_t (*addGroupFriend)(const char *appId, const char *groupId, const char *friendAppId); + int32_t (*deleteGroupManager)(const char *appId, const char *groupId, const char *managerAppId); + int32_t (*deleteGroupFriend)(const char *appId, const char *groupId, const char *friendAppId); + int32_t (*getGroupManagers)(const char *appId, const char *groupId, char **returnManagers, uint32_t *returnSize); + int32_t (*getGroupFriends)(const char *appId, const char *groupId, char **returnFriends, uint32_t *returnSize); + int32_t (*getGroupInfoById)(const char *appId, const char *groupId, char **returnGroupInfo); + int32_t (*getGroupInfo)(const char *appId, const char *queryParams, char **returnGroupVec, uint32_t *groupNum); + int32_t (*getJoinedGroups)(const char *appId, int groupType, char **returnGroupVec, uint32_t *groupNum); + int32_t (*getRelatedGroups)(const char *appId, const char *peerDeviceId, char **returnGroupVec, uint32_t *groupNum); + int32_t (*getDeviceInfoById)(const char *appId, const char *deviceId, const char *groupId, char **returnDeviceInfo); + int32_t (*getTrustedDevices)(const char *appId, const char *groupId, char **returnDevInfoVec, uint32_t *deviceNum); + bool (*isDeviceInGroup)(const char *appId, const char *groupId, const char *deviceId); void (*destroyInfo)(char **returnInfo); -} DeviceGroupManager; +}; #ifdef __cplusplus extern "C" { diff --git a/test/unittest/mock/parameter.cpp b/test/unittest/mock/parameter.cpp index 99fa1c54e..a51d9ed93 100644 --- a/test/unittest/mock/parameter.cpp +++ b/test/unittest/mock/parameter.cpp @@ -29,8 +29,3 @@ int WatchParameter(const char *keyprefix, ParameterChgPtr callback, void *contex { return 0; } - -int GetDevUdid(char *udid, int size) -{ - return 0; -} \ No newline at end of file diff --git a/test/unittest/mock/parameter.h b/test/unittest/mock/parameter.h index 77b456430..23da1b6a6 100644 --- a/test/unittest/mock/parameter.h +++ b/test/unittest/mock/parameter.h @@ -29,7 +29,6 @@ int SetParameter(const char *key, const char *value); typedef void (*ParameterChgPtr)(const char *key, const char *value, void *context); int WatchParameter(const char *keyprefix, ParameterChgPtr callback, void *context); -int GetDevUdid(char *udid, int size); #ifdef __cplusplus #if __cplusplus } -- Gitee From 1215adda5f12540c729a1a1a01b0686909168f10 Mon Sep 17 00:00:00 2001 From: wuqi0105 Date: Thu, 24 Feb 2022 16:33:46 +0800 Subject: [PATCH 2/6] offline timer Signed-off-by: wuqi0105 --- test/unittest/BUILD.gn | 100 ++++++------- .../UTTest_dm_device_state_manager.cpp | 10 +- test/unittest/mock/device_auth.h | 132 +++++++++++------- test/unittest/mock/parameter.cpp | 5 + test/unittest/mock/parameter.h | 1 + 5 files changed, 146 insertions(+), 102 deletions(-) diff --git a/test/unittest/BUILD.gn b/test/unittest/BUILD.gn index fd0d387c7..8e3dbd99a 100644 --- a/test/unittest/BUILD.gn +++ b/test/unittest/BUILD.gn @@ -105,14 +105,16 @@ ohos_unittest("UTTest_dm_device_state_manager") { module_out_path = module_out_path sources = [ - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/adapter/standard/dm_adapter_manager.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/config/dm_config_manager.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/softbus/softbus_connector.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/softbus/softbus_session.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/timer/dm_timer.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/device_manager_service_listener.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/devicestate/dm_device_state_manager.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp", + "${services_path}/src/adapter/standard/dm_adapter_manager.cpp", + "${services_path}/src/config/dm_config_manager.cpp", + "${services_path}/src/dependency/hichain/hichain_connector.cpp", + "${services_path}/src/dependency/multipleuser/multiple_user_connector.cpp", + "${services_path}/src/dependency/softbus/softbus_connector.cpp", + "${services_path}/src/dependency/softbus/softbus_session.cpp", + "${services_path}/src/dependency/timer/dm_timer.cpp", + "${services_path}/src/device_manager_service_listener.cpp", + "${services_path}/src/devicestate/dm_device_state_manager.cpp", + "${services_path}/src/discovery/dm_discovery_manager.cpp", "//foundation/distributedhardware/devicemanager/test/unittest/mock/ipc_server_listener.cpp", "//foundation/distributedhardware/devicemanager/test/unittest/mock/parameter.cpp", "UTTest_dm_device_state_manager.cpp", @@ -128,7 +130,7 @@ ohos_unittest("UTTest_device_manager_service_listener") { module_out_path = module_out_path sources = [ - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/device_manager_service_listener.cpp", + "${services_path}/src/device_manager_service_listener.cpp", "//foundation/distributedhardware/devicemanager/test/unittest/mock/ipc_server_listener.cpp", "UTTest_device_manager_service_listener.cpp", ] @@ -186,11 +188,11 @@ ohos_unittest("UTTest_dm_discovery_manager") { module_out_path = module_out_path sources = [ - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/softbus/softbus_connector.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/softbus/softbus_session.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/dependency/timer/dm_timer.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/device_manager_service_listener.cpp", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp", + "${services_path}/src/dependency/softbus/softbus_connector.cpp", + "${services_path}/src/dependency/softbus/softbus_session.cpp", + "${services_path}/src/dependency/timer/dm_timer.cpp", + "${services_path}/src/device_manager_service_listener.cpp", + "${services_path}/src/discovery/dm_discovery_manager.cpp", "//foundation/distributedhardware/devicemanager/test/unittest/mock/ipc_server_listener.cpp", "//foundation/distributedhardware/devicemanager/test/unittest/mock/parameter.cpp", "UTTest_dm_discovery_manager.cpp", @@ -205,10 +207,10 @@ config("device_manager_test_common_public_config") { include_dirs = [ "//utils/native/base/include", "//utils/system/safwk/native/include", - "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include", - "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include/ipc/standard", - "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include/ipc", - "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include/notify", + "${innerkits_path}/native_cpp/include", + "${innerkits_path}/native_cpp/include/ipc/standard", + "${innerkits_path}/native_cpp/include/ipc", + "${innerkits_path}/native_cpp/include/notify", "//third_party/json/include", "${common_path}/include", "${common_path}/include/ipc", @@ -219,25 +221,25 @@ config("device_manager_test_common_public_config") { "${services_path}/include/dependency/timer", "${services_path}/include/discovery", "${services_path}/include/dependency/softbus", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/dependency/softbus", + "${services_path}/include/dependency/softbus", + "${services_path}/include/authentication", + "${services_path}/include/adapter", + "${services_path}/include", + "${services_path}/include/ipc/standard", + "${services_path}/include/discovery", + "${services_path}/include/dependency/hichain", + "${services_path}/include/deviceinfo/", + "${services_path}/include/devicestate", "//foundation/communication/dsoftbus/interfaces/kits/bus_center", "//foundation/communication/softbus_lite/interfaces/kits/transport", "//foundation/communication/ipc_lite/interfaces/kits", "//foundation/communication/dsoftbus/interfaces/kits/common", "//foundation/communication/dsoftbus/interfaces/kits/discovery", "//foundation/communication/dsoftbus/interfaces/inner_kits/transport", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/authentication", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/adapter", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/ipc/standard", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/discovery", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/dependency/hichain", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/deviceinfo/", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/devicestate", "//foundation/distributedhardware/devicemanager/test/unittest/mock", "//base/security/deviceauth/interfaces/innerkits", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/ability", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/config", + "${services_path}/include/ability", + "${services_path}/include/config", ] cflags = [ @@ -263,16 +265,15 @@ ohos_static_library("device_manager_test_common") { public_configs = [ ":device_manager_test_common_public_config" ] public_deps = [ + "${innerkits_path}/native_cpp:devicemanagersdk", + "${services_path}:devicemanagerservice", "${utils_path}:devicemanagerutils", "//foundation/communication/ipc/interfaces/innerkits/ipc_core:ipc_core", - "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp:devicemanagersdk", "//foundation/distributedhardware/devicemanager/interfaces/kits/js:devicemanager", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice:devicemanagerservice", "//foundation/distributedschedule/samgr/interfaces/innerkits/samgr_proxy:samgr_proxy", "//third_party/googletest:gmock", "//third_party/googletest:gtest", "//utils/native/base:utils", - "//utils/native/base:utils", ] } @@ -283,9 +284,9 @@ config("device_manager_test_common_public") { include_dirs = [ "//utils/native/base/include", "//utils/system/safwk/native/include", - "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include", - "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include/ipc", - "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp/include/notify", + "${innerkits_path}/native_cpp/include", + "${innerkits_path}/native_cpp/include/ipc", + "${innerkits_path}/native_cpp/include/notify", "//third_party/json/include", "${common_path}/include", "${common_path}/include/ipc", @@ -296,23 +297,27 @@ config("device_manager_test_common_public") { "${services_path}/include/dependency/timer", "${services_path}/include/discovery", "${services_path}/include/dependency/softbus", + "${services_path}/include/dependency/hichain", + "${services_path}/include/dependency/multipleuser", + "${services_path}/include/dependency/softbus", + "${services_path}/include/authentication", + "${services_path}/include/adapter", + "${services_path}/include", + "${services_path}/include/discovery", + "${services_path}/include/deviceinfo/", + "${services_path}/include/devicestate", + "//foundation/distributedhardware/devicemanager/test/unittest/mock/", + "${services_path}/include/ability", + "${services_path}/include/config", "//foundation/communication/dsoftbus/interfaces/kits/bus_center", "//foundation/communication/ipc_lite/interfaces/kits", "//foundation/communication/dsoftbus/interfaces/kits/common", "//foundation/communication/dsoftbus/interfaces/kits/discovery", "//foundation/communication/dsoftbus/interfaces/inner_kits/transport", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/dependency/softbus", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/authentication", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/adapter", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/discovery", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/dependency/hichain", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/deviceinfo/", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/devicestate", - "//foundation/distributedhardware/devicemanager/test/unittest/mock/", "//base/security/deviceauth/interfaces/innerkits", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/ability", - "//foundation/distributedhardware/devicemanager/services/devicemanagerservice/include/config", + "//base/account/os_account/interfaces/innerkits/osaccount/native/include", + "//base/account/os_account/frameworks/common/database/include", + "//base/account/os_account/frameworks/common/account_error/include", ] cflags = [ @@ -338,9 +343,9 @@ ohos_static_library("device_manager_test") { public_configs = [ ":device_manager_test_common_public" ] public_deps = [ + "${innerkits_path}/native_cpp:devicemanagersdk", "${utils_path}:devicemanagerutils", "//foundation/communication/ipc/interfaces/innerkits/ipc_core:ipc_core", - "//foundation/distributedhardware/devicemanager/interfaces/inner_kits/native_cpp:devicemanagersdk", "//foundation/distributedhardware/devicemanager/interfaces/kits/js:devicemanager", "//foundation/distributedschedule/samgr/interfaces/innerkits/samgr_proxy:samgr_proxy", "//third_party/googletest:gmock", @@ -351,6 +356,7 @@ ohos_static_library("device_manager_test") { deps = [ "${innerkits_path}/native_cpp:devicemanagersdk", "${utils_path}:devicemanagerutils", + "//base/account/os_account/frameworks/osaccount/native:os_account_innerkits", "//base/security/deviceauth/services:deviceauth_sdk", "//foundation/aafwk/standard/interfaces/innerkits/ability_manager:ability_manager", "//foundation/aafwk/standard/interfaces/innerkits/want:want", diff --git a/test/unittest/UTTest_dm_device_state_manager.cpp b/test/unittest/UTTest_dm_device_state_manager.cpp index 83b6eb9c0..507cdca5d 100644 --- a/test/unittest/UTTest_dm_device_state_manager.cpp +++ b/test/unittest/UTTest_dm_device_state_manager.cpp @@ -23,6 +23,7 @@ #include "dm_device_state_manager.h" #include "ipc_notify_device_found_req.h" #include "ipc_notify_discover_result_req.h" +#include "hichain_connector.h" #include "UTTest_dm_device_state_manager.h" namespace OHOS { @@ -43,10 +44,11 @@ void DmDeviceStateManagerTest::TearDownTestCase() { } namespace { + std::shared_ptr hiChainConnector_ = std::make_shared(); std::shared_ptr softbusConnector = std::make_shared(); std::shared_ptr listener_ = std::make_shared(); std::shared_ptr dmDeviceStateManager = - std::make_shared(softbusConnector, listener_); + std::make_shared(softbusConnector, listener_, hiChainConnector_); /** * @tc.name: DmDeviceStateManager_001 @@ -56,7 +58,8 @@ std::shared_ptr dmDeviceStateManager = */ HWTEST_F(DmDeviceStateManagerTest, DmDeviceStateManager_001, testing::ext::TestSize.Level0) { - std::shared_ptr p = std::make_shared(softbusConnector, listener_); + std::shared_ptr p = std::make_shared(softbusConnector, listener_, + hiChainConnector_); ASSERT_NE(p, nullptr); } @@ -68,7 +71,8 @@ HWTEST_F(DmDeviceStateManagerTest, DmDeviceStateManager_001, testing::ext::TestS */ HWTEST_F(DmDeviceStateManagerTest, DmDeviceStateManager_002, testing::ext::TestSize.Level0) { - std::shared_ptr p = std::make_shared(softbusConnector, listener_); + std::shared_ptr p = std::make_shared(softbusConnector, listener_, + hiChainConnector_); p.reset(); EXPECT_EQ(p, nullptr); } diff --git a/test/unittest/mock/device_auth.h b/test/unittest/mock/device_auth.h index 39b701f89..68e7cba41 100644 --- a/test/unittest/mock/device_auth.h +++ b/test/unittest/mock/device_auth.h @@ -4,7 +4,7 @@ * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * - * http://www.apache.org/licenses/LICENSE-2.0 + * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, @@ -16,10 +16,11 @@ #ifndef DEVICE_AUTH_H #define DEVICE_AUTH_H -#include +#include +#include #if defined(__LINUX__) || defined(_UNIX) -#define DEVICE_AUTH_API_PUBLIC __attribute__((visibility("default"))) +#define DEVICE_AUTH_API_PUBLIC __attribute__ ((visibility("default"))) #else #define DEVICE_AUTH_API_PUBLIC #endif @@ -65,51 +66,68 @@ #define FIELD_GROUP_VISIBILITY "groupVisibility" #define FIELD_EXPIRE_TIME "expireTime" #define FIELD_IS_DELETE_ALL "isDeleteAll" +#define FIELD_BLE_CHALLENGE "bleChallenge" +#define FIELD_OS_ACCOUNT_ID "osAccountId" -enum GroupType { +typedef enum { + DEFAULT_OS_ACCOUNT = 0, + INVALID_OS_ACCOUNT = -1, + ANY_OS_ACCOUNT = -2, +} OsAccountEnum; + +typedef enum { ALL_GROUP = 0, IDENTICAL_ACCOUNT_GROUP = 1, PEER_TO_PEER_GROUP = 256, COMPATIBLE_GROUP = 512, ACROSS_ACCOUNT_AUTHORIZE_GROUP = 1282 -}; +} GroupType; -enum GroupOperationCode { +typedef enum { GROUP_CREATE = 0, GROUP_DISBAND = 1, MEMBER_INVITE = 2, MEMBER_JOIN = 3, MEMBER_DELETE = 4, ACCOUNT_BIND = 5 -}; +} GroupOperationCode; -enum GroupAuthForm { +typedef enum { AUTH_FORM_INVALID_TYPE = -1, AUTH_FORM_ACCOUNT_UNRELATED = 0, AUTH_FORM_IDENTICAL_ACCOUNT = 1, AUTH_FORM_ACROSS_ACCOUNT = 2, -}; +} GroupAuthForm; -enum CredentialCode { - CREDENTIAL_SAVE = 0, - CREDENTIAL_CLEAR = 1, - CREDENTIAL_UPDATE = 2, - CREDENTIAL_QUERY = 3, -}; +typedef enum { + IMPORT_SELF_CREDENTIAL = 0, + DELETE_SELF_CREDENTIAL = 1, + QUERY_SELF_CREDENTIAL_INFO = 2, + IMPORT_TRUSTED_CREDENTIALS = 3, + DELETE_TRUSTED_CREDENTIALS = 4, + QUERY_TRUSTED_CREDENTIALS = 5, + REQUEST_SIGNATURE = 6, +} CredentialCode; -enum UserType { +typedef enum { DEVICE_TYPE_ACCESSORY = 0, DEVICE_TYPE_CONTROLLER = 1, DEVICE_TYPE_PROXY = 2 -}; +} UserType; + +typedef enum { + EXPIRE_TIME_INDEFINITE = -1, + EXPIRE_TIME_MIN = 1, + EXPIRE_TIME_MAX = 90, +} ExpireTime; -enum RequestResponse { +typedef enum { REQUEST_REJECTED = 0x80000005, REQUEST_ACCEPTED = 0x80000006, REQUEST_WAITING = 0x80000007 -}; +} RequestResponse; -struct DataChangeListener { +typedef struct { void (*onGroupCreated)(const char *groupInfo); void (*onGroupDeleted)(const char *groupInfo); void (*onDeviceBound)(const char *peerUdid, const char *groupInfo); @@ -117,38 +135,40 @@ struct DataChangeListener { void (*onDeviceNotTrusted)(const char *peerUdid); void (*onLastGroupDeleted)(const char *peerUdid, int groupType); void (*onTrustedDeviceNumChanged)(int curTrustedDeviceNum); -}; +} DataChangeListener; -struct DeviceAuthCallback { +typedef struct { bool (*onTransmit)(int64_t requestId, const uint8_t *data, uint32_t dataLen); void (*onSessionKeyReturned)(int64_t requestId, const uint8_t *sessionKey, uint32_t sessionKeyLen); void (*onFinish)(int64_t requestId, int operationCode, const char *returnData); void (*onError)(int64_t requestId, int operationCode, int errorCode, const char *errorReturn); char *(*onRequest)(int64_t requestId, int operationCode, const char *reqParams); -}; +} DeviceAuthCallback; -struct GroupAuthManager { +typedef struct { int32_t (*processData)(int64_t authReqId, const uint8_t *data, uint32_t dataLen, - const DeviceAuthCallback *gaCallback); + const DeviceAuthCallback *gaCallback); int32_t (*queryTrustedDeviceNum)(void); bool (*isTrustedDevice)(const char *udid); - int32_t (*getAuthState)(int64_t authReqId, const char *groupId, const char *peerUdid, uint8_t *out, - uint32_t *outLen); - int32_t (*authDevice)(int64_t authReqId, const char *authParams, const DeviceAuthCallback *gaCallback); + int32_t (*getAuthState)(int64_t authReqId, const char *groupId, const char *peerUdid, + uint8_t *out, uint32_t *outLen); + int32_t (*authDevice)(int32_t osAccountId, int64_t authReqId, const char *authParams, + const DeviceAuthCallback *gaCallback); void (*informDeviceDisconnection)(const char *udid); -}; +} GroupAuthManager; -struct DeviceGroupManager { +typedef struct { int32_t (*regCallback)(const char *appId, const DeviceAuthCallback *callback); int32_t (*unRegCallback)(const char *appId); int32_t (*regDataChangeListener)(const char *appId, const DataChangeListener *listener); int32_t (*unRegDataChangeListener)(const char *appId); - int32_t (*createGroup)(int64_t requestId, const char *appId, const char *createParams); - int32_t (*deleteGroup)(int64_t requestId, const char *appId, const char *disbandParams); - int32_t (*addMemberToGroup)(int64_t requestId, const char *appId, const char *addParams); - int32_t (*deleteMemberFromGroup)(int64_t requestId, const char *appId, const char *deleteParams); + int32_t (*createGroup)(int32_t osAccountId, int64_t requestId, const char *appId, const char *createParams); + int32_t (*deleteGroup)(int32_t osAccountId, int64_t requestId, const char *appId, const char *disbandParams); + int32_t (*addMemberToGroup)(int32_t osAccountId, int64_t requestId, const char *appId, const char *addParams); + int32_t (*deleteMemberFromGroup)(int32_t osAccountId, int64_t requestId, const char *appId, + const char *deleteParams); int32_t (*processData)(int64_t requestId, const uint8_t *data, uint32_t dataLen); - int32_t (*confirmRequest)(int64_t requestId, const char *appId, const char *confirmParams); + int32_t (*confirmRequest)(int32_t osAccountId, int64_t requestId, const char *appId, const char *confirmParams); int32_t (*bindPeer)(int64_t requestId, const char *appId, const char *bindParams); int32_t (*unbindPeer)(int64_t requestId, const char *appId, const char *unbindParams); int32_t (*processLiteData)(int64_t requestId, const char *appId, const uint8_t *data, uint32_t dataLen); @@ -157,24 +177,32 @@ struct DeviceGroupManager { int32_t (*processCredential)(int operationCode, const char *reqJsonStr, char **returnJsonStr); int32_t (*getRegisterInfo)(char **returnRegisterInfo); int32_t (*getLocalConnectInfo)(char *returnInfo, int32_t bufLen); - int32_t (*checkAccessToGroup)(const char *appId, const char *groupId); - int32_t (*getPkInfoList)(const char *appId, const char *queryParams, char **returnInfoList, - uint32_t *returnInfoNum); - int32_t (*addGroupManager)(const char *appId, const char *groupId, const char *managerAppId); - int32_t (*addGroupFriend)(const char *appId, const char *groupId, const char *friendAppId); - int32_t (*deleteGroupManager)(const char *appId, const char *groupId, const char *managerAppId); - int32_t (*deleteGroupFriend)(const char *appId, const char *groupId, const char *friendAppId); - int32_t (*getGroupManagers)(const char *appId, const char *groupId, char **returnManagers, uint32_t *returnSize); - int32_t (*getGroupFriends)(const char *appId, const char *groupId, char **returnFriends, uint32_t *returnSize); - int32_t (*getGroupInfoById)(const char *appId, const char *groupId, char **returnGroupInfo); - int32_t (*getGroupInfo)(const char *appId, const char *queryParams, char **returnGroupVec, uint32_t *groupNum); - int32_t (*getJoinedGroups)(const char *appId, int groupType, char **returnGroupVec, uint32_t *groupNum); - int32_t (*getRelatedGroups)(const char *appId, const char *peerDeviceId, char **returnGroupVec, uint32_t *groupNum); - int32_t (*getDeviceInfoById)(const char *appId, const char *deviceId, const char *groupId, char **returnDeviceInfo); - int32_t (*getTrustedDevices)(const char *appId, const char *groupId, char **returnDevInfoVec, uint32_t *deviceNum); - bool (*isDeviceInGroup)(const char *appId, const char *groupId, const char *deviceId); + int32_t (*checkAccessToGroup)(int32_t osAccountId, const char *appId, const char *groupId); + int32_t (*getPkInfoList)(int32_t osAccountId, const char *appId, const char *queryParams, char **returnInfoList, + uint32_t *returnInfoNum); + int32_t (*addGroupManager)(int32_t osAccountId, const char *appId, const char *groupId, const char *managerAppId); + int32_t (*addGroupFriend)(int32_t osAccountId, const char *appId, const char *groupId, const char *friendAppId); + int32_t (*deleteGroupManager)(int32_t osAccountId, const char *appId, const char *groupId, + const char *managerAppId); + int32_t (*deleteGroupFriend)(int32_t osAccountId, const char *appId, const char *groupId, const char *friendAppId); + int32_t (*getGroupManagers)(int32_t osAccountId, const char *appId, const char *groupId, char **returnManagers, + uint32_t *returnSize); + int32_t (*getGroupFriends)(int32_t osAccountId, const char *appId, const char *groupId, + char **returnFriends, uint32_t *returnSize); + int32_t (*getGroupInfoById)(int32_t osAccountId, const char *appId, const char *groupId, char **returnGroupInfo); + int32_t (*getGroupInfo)(int32_t osAccountId, const char *appId, const char *queryParams, + char **returnGroupVec, uint32_t *groupNum); + int32_t (*getJoinedGroups)(int32_t osAccountId, const char *appId, int groupType, + char **returnGroupVec, uint32_t *groupNum); + int32_t (*getRelatedGroups)(int32_t osAccountId, const char *appId, const char *peerDeviceId, + char **returnGroupVec, uint32_t *groupNum); + int32_t (*getDeviceInfoById)(int32_t osAccountId, const char *appId, const char *deviceId, const char *groupId, + char **returnDeviceInfo); + int32_t (*getTrustedDevices)(int32_t osAccountId, const char *appId, const char *groupId, + char **returnDevInfoVec, uint32_t *deviceNum); + bool (*isDeviceInGroup)(int32_t osAccountId, const char *appId, const char *groupId, const char *deviceId); void (*destroyInfo)(char **returnInfo); -}; +} DeviceGroupManager; #ifdef __cplusplus extern "C" { diff --git a/test/unittest/mock/parameter.cpp b/test/unittest/mock/parameter.cpp index a51d9ed93..99fa1c54e 100644 --- a/test/unittest/mock/parameter.cpp +++ b/test/unittest/mock/parameter.cpp @@ -29,3 +29,8 @@ int WatchParameter(const char *keyprefix, ParameterChgPtr callback, void *contex { return 0; } + +int GetDevUdid(char *udid, int size) +{ + return 0; +} \ No newline at end of file diff --git a/test/unittest/mock/parameter.h b/test/unittest/mock/parameter.h index 23da1b6a6..77b456430 100644 --- a/test/unittest/mock/parameter.h +++ b/test/unittest/mock/parameter.h @@ -29,6 +29,7 @@ int SetParameter(const char *key, const char *value); typedef void (*ParameterChgPtr)(const char *key, const char *value, void *context); int WatchParameter(const char *keyprefix, ParameterChgPtr callback, void *context); +int GetDevUdid(char *udid, int size); #ifdef __cplusplus #if __cplusplus } -- Gitee From 80c9b7f110ecaa016972c8d1c0296093b67e5791 Mon Sep 17 00:00:00 2001 From: wwx1134751 Date: Fri, 25 Feb 2022 09:58:00 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E7=A8=B3=E5=AE=9A=E6=B5=8B=E8=AF=95stop=20?= =?UTF-8?q?timer=E5=B4=A9=E6=BA=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: wwx1134751 --- .../src/authentication/dm_auth_manager.cpp | 26 ++++++++++++++----- .../src/discovery/dm_discovery_manager.cpp | 14 +++++----- 2 files changed, 27 insertions(+), 13 deletions(-) diff --git a/services/devicemanagerservice/src/authentication/dm_auth_manager.cpp b/services/devicemanagerservice/src/authentication/dm_auth_manager.cpp index de210e85d..e759e8c4b 100644 --- a/services/devicemanagerservice/src/authentication/dm_auth_manager.cpp +++ b/services/devicemanagerservice/src/authentication/dm_auth_manager.cpp @@ -175,13 +175,13 @@ int32_t DmAuthManager::UnAuthenticateDevice(const std::string &pkgName, const st int32_t DmAuthManager::VerifyAuthentication(const std::string &authParam) { LOGI("DmAuthManager::VerifyAuthentication"); - timerMap_[INPUT_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); - std::shared_ptr ptr; - if (authenticationMap_.find(1) == authenticationMap_.end()) { + if (authenticationMap_.find(1) == authenticationMap_.end() && timerMap_[INPUT_TIMEOUT_TASK] == nullptr) { LOGE("DmAuthManager::authenticationMap_ is null"); return DM_FAILED; } + timerMap_[INPUT_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); + ptr = authenticationMap_[1]; int32_t ret = ptr->VerifyAuthentication(authRequestContext_->token, authResponseContext_->code, authParam); switch (ret) { @@ -269,7 +269,8 @@ void DmAuthManager::OnDataReceived(int32_t sessionId, std::string message) } switch (authResponseContext_->msgType) { case MSG_TYPE_NEGOTIATE: - if (authResponseState_->GetStateType() == AuthState::AUTH_RESPONSE_INIT) { + if (authResponseState_->GetStateType() == AuthState::AUTH_RESPONSE_INIT + && timerMap_[WAIT_NEGOTIATE_TIMEOUT_TASK] != nullptr) { timerMap_[WAIT_NEGOTIATE_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); authResponseState_->TransitionTo(std::make_shared()); } else { @@ -277,7 +278,8 @@ void DmAuthManager::OnDataReceived(int32_t sessionId, std::string message) } break; case MSG_TYPE_REQ_AUTH: - if (authResponseState_->GetStateType() == AuthState::AUTH_RESPONSE_NEGOTIATE) { + if (authResponseState_->GetStateType() == AuthState::AUTH_RESPONSE_NEGOTIATE + && timerMap_[WAIT_REQUEST_TIMEOUT_TASK] != nullptr) { timerMap_[WAIT_REQUEST_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); authResponseState_->TransitionTo(std::make_shared()); } else { @@ -337,7 +339,7 @@ void DmAuthManager::OnGroupCreated(int64_t requestId, const std::string &groupId void DmAuthManager::OnMemberJoin(int64_t requestId, int32_t status) { LOGE("DmAuthManager OnMemberJoin start"); - if (authRequestState_ != nullptr) { + if (authRequestState_ != nullptr && timerMap_[ADD_TIMEOUT_TASK] != nullptr) { timerMap_[ADD_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); if (status != DM_OK || authResponseContext_->requestId != requestId) { if (authRequestState_ != nullptr) { @@ -444,6 +446,9 @@ void DmAuthManager::RespNegotiate(const int32_t &sessionId) void DmAuthManager::SendAuthRequest(const int32_t &sessionId) { LOGE("DmAuthManager::EstablishAuthChannel session id"); + if (timerMap_[NEGOTIATE_TIMEOUT_TASK] == nullptr) { + return; + } timerMap_[NEGOTIATE_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); if (authResponseContext_->cryptoSupport == true) { isCryptoSupport_ = true; @@ -479,6 +484,9 @@ int32_t DmAuthManager::StartAuthProcess(const int32_t &action) void DmAuthManager::StartRespAuthProcess() { LOGI("DmAuthManager::StartRespAuthProcess StartRespAuthProcess", authResponseContext_->sessionId); + if (timerMap_[CONFIRM_TIMEOUT_TASK] == nullptr) { + return; + } timerMap_[CONFIRM_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); if (authResponseContext_->reply == USER_OPERATION_TYPE_ALLOW_AUTH) { std::shared_ptr inputStartTimer = std::make_shared(INPUT_TIMEOUT_TASK); @@ -535,6 +543,9 @@ std::string DmAuthManager::GetConnectAddr(std::string deviceId) int32_t DmAuthManager::JoinNetwork() { LOGE("DmAuthManager JoinNetwork start"); + if (timerMap_[AUTHENTICATE_TIMEOUT_TASK] == nullptr) { + return DM_FAILED; + } timerMap_[AUTHENTICATE_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); authResponseContext_->state = AuthState::AUTH_REQUEST_FINISH; authRequestContext_->reason = DM_OK; @@ -787,6 +798,9 @@ void DmAuthManager::UserSwitchEventCallback (int32_t userId) void DmAuthManager::VerifyPinAuthAuthentication(const std::string &action) { LOGI("DmAuthManager::VerifyPinAuthAuthentication"); + if (timerMap_[INPUT_TIMEOUT_TASK] == nullptr) { + return; + } timerMap_[INPUT_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); if (action == "0") { authRequestState_->TransitionTo(std::make_shared()); diff --git a/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp b/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp index 4a489935a..f48689431 100644 --- a/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp +++ b/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp @@ -73,14 +73,14 @@ int32_t DmDiscoveryManager::StartDeviceDiscovery(const std::string &pkgName, con int32_t DmDiscoveryManager::StopDeviceDiscovery(const std::string &pkgName, uint16_t subscribeId) { - if (!discoveryQueue_.empty()) { - discoveryQueue_.pop(); - } - if (!discoveryContextMap_.empty()) { - discoveryContextMap_.erase(pkgName); - softbusConnector_->UnRegisterSoftbusDiscoveryCallback(pkgName); - discoveryTimer_->Stop(SESSION_CANCEL_TIMEOUT); + if (discoveryQueue_.empty()) { + LOGE("discovery is not start"); + return DM_FAILED; } + discoveryQueue_.pop(); + discoveryContextMap_.erase(pkgName); + softbusConnector_->UnRegisterSoftbusDiscoveryCallback(pkgName); + discoveryTimer_->Stop(SESSION_CANCEL_TIMEOUT); return softbusConnector_->StopDiscovery(subscribeId); } -- Gitee From 99b20db2361be2a2b8724a65d4f97700aad2b184 Mon Sep 17 00:00:00 2001 From: wuqi0105 Date: Fri, 25 Feb 2022 14:58:41 +0800 Subject: [PATCH 4/6] =?UTF-8?q?=E7=A8=B3=E5=AE=9A=E6=B5=8B=E8=AF=95stop=20?= =?UTF-8?q?timer=E5=B4=A9=E6=BA=83?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: wuqi0105 --- .../src/authentication/dm_auth_manager.cpp | 26 ++++++++++++++----- .../src/discovery/dm_discovery_manager.cpp | 14 +++++----- 2 files changed, 27 insertions(+), 13 deletions(-) diff --git a/services/devicemanagerservice/src/authentication/dm_auth_manager.cpp b/services/devicemanagerservice/src/authentication/dm_auth_manager.cpp index de210e85d..e759e8c4b 100644 --- a/services/devicemanagerservice/src/authentication/dm_auth_manager.cpp +++ b/services/devicemanagerservice/src/authentication/dm_auth_manager.cpp @@ -175,13 +175,13 @@ int32_t DmAuthManager::UnAuthenticateDevice(const std::string &pkgName, const st int32_t DmAuthManager::VerifyAuthentication(const std::string &authParam) { LOGI("DmAuthManager::VerifyAuthentication"); - timerMap_[INPUT_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); - std::shared_ptr ptr; - if (authenticationMap_.find(1) == authenticationMap_.end()) { + if (authenticationMap_.find(1) == authenticationMap_.end() && timerMap_[INPUT_TIMEOUT_TASK] == nullptr) { LOGE("DmAuthManager::authenticationMap_ is null"); return DM_FAILED; } + timerMap_[INPUT_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); + ptr = authenticationMap_[1]; int32_t ret = ptr->VerifyAuthentication(authRequestContext_->token, authResponseContext_->code, authParam); switch (ret) { @@ -269,7 +269,8 @@ void DmAuthManager::OnDataReceived(int32_t sessionId, std::string message) } switch (authResponseContext_->msgType) { case MSG_TYPE_NEGOTIATE: - if (authResponseState_->GetStateType() == AuthState::AUTH_RESPONSE_INIT) { + if (authResponseState_->GetStateType() == AuthState::AUTH_RESPONSE_INIT + && timerMap_[WAIT_NEGOTIATE_TIMEOUT_TASK] != nullptr) { timerMap_[WAIT_NEGOTIATE_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); authResponseState_->TransitionTo(std::make_shared()); } else { @@ -277,7 +278,8 @@ void DmAuthManager::OnDataReceived(int32_t sessionId, std::string message) } break; case MSG_TYPE_REQ_AUTH: - if (authResponseState_->GetStateType() == AuthState::AUTH_RESPONSE_NEGOTIATE) { + if (authResponseState_->GetStateType() == AuthState::AUTH_RESPONSE_NEGOTIATE + && timerMap_[WAIT_REQUEST_TIMEOUT_TASK] != nullptr) { timerMap_[WAIT_REQUEST_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); authResponseState_->TransitionTo(std::make_shared()); } else { @@ -337,7 +339,7 @@ void DmAuthManager::OnGroupCreated(int64_t requestId, const std::string &groupId void DmAuthManager::OnMemberJoin(int64_t requestId, int32_t status) { LOGE("DmAuthManager OnMemberJoin start"); - if (authRequestState_ != nullptr) { + if (authRequestState_ != nullptr && timerMap_[ADD_TIMEOUT_TASK] != nullptr) { timerMap_[ADD_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); if (status != DM_OK || authResponseContext_->requestId != requestId) { if (authRequestState_ != nullptr) { @@ -444,6 +446,9 @@ void DmAuthManager::RespNegotiate(const int32_t &sessionId) void DmAuthManager::SendAuthRequest(const int32_t &sessionId) { LOGE("DmAuthManager::EstablishAuthChannel session id"); + if (timerMap_[NEGOTIATE_TIMEOUT_TASK] == nullptr) { + return; + } timerMap_[NEGOTIATE_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); if (authResponseContext_->cryptoSupport == true) { isCryptoSupport_ = true; @@ -479,6 +484,9 @@ int32_t DmAuthManager::StartAuthProcess(const int32_t &action) void DmAuthManager::StartRespAuthProcess() { LOGI("DmAuthManager::StartRespAuthProcess StartRespAuthProcess", authResponseContext_->sessionId); + if (timerMap_[CONFIRM_TIMEOUT_TASK] == nullptr) { + return; + } timerMap_[CONFIRM_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); if (authResponseContext_->reply == USER_OPERATION_TYPE_ALLOW_AUTH) { std::shared_ptr inputStartTimer = std::make_shared(INPUT_TIMEOUT_TASK); @@ -535,6 +543,9 @@ std::string DmAuthManager::GetConnectAddr(std::string deviceId) int32_t DmAuthManager::JoinNetwork() { LOGE("DmAuthManager JoinNetwork start"); + if (timerMap_[AUTHENTICATE_TIMEOUT_TASK] == nullptr) { + return DM_FAILED; + } timerMap_[AUTHENTICATE_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); authResponseContext_->state = AuthState::AUTH_REQUEST_FINISH; authRequestContext_->reason = DM_OK; @@ -787,6 +798,9 @@ void DmAuthManager::UserSwitchEventCallback (int32_t userId) void DmAuthManager::VerifyPinAuthAuthentication(const std::string &action) { LOGI("DmAuthManager::VerifyPinAuthAuthentication"); + if (timerMap_[INPUT_TIMEOUT_TASK] == nullptr) { + return; + } timerMap_[INPUT_TIMEOUT_TASK]->Stop(SESSION_CANCEL_TIMEOUT); if (action == "0") { authRequestState_->TransitionTo(std::make_shared()); diff --git a/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp b/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp index 4a489935a..f48689431 100644 --- a/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp +++ b/services/devicemanagerservice/src/discovery/dm_discovery_manager.cpp @@ -73,14 +73,14 @@ int32_t DmDiscoveryManager::StartDeviceDiscovery(const std::string &pkgName, con int32_t DmDiscoveryManager::StopDeviceDiscovery(const std::string &pkgName, uint16_t subscribeId) { - if (!discoveryQueue_.empty()) { - discoveryQueue_.pop(); - } - if (!discoveryContextMap_.empty()) { - discoveryContextMap_.erase(pkgName); - softbusConnector_->UnRegisterSoftbusDiscoveryCallback(pkgName); - discoveryTimer_->Stop(SESSION_CANCEL_TIMEOUT); + if (discoveryQueue_.empty()) { + LOGE("discovery is not start"); + return DM_FAILED; } + discoveryQueue_.pop(); + discoveryContextMap_.erase(pkgName); + softbusConnector_->UnRegisterSoftbusDiscoveryCallback(pkgName); + discoveryTimer_->Stop(SESSION_CANCEL_TIMEOUT); return softbusConnector_->StopDiscovery(subscribeId); } -- Gitee From 151a49febb8710be87160e1da51fca82a8fa661a Mon Sep 17 00:00:00 2001 From: wuqi0105 Date: Fri, 25 Feb 2022 15:16:28 +0800 Subject: [PATCH 5/6] test Signed-off-by: wuqi0105 --- interfaces/inner_kits/native_cpp/src/device_manager_impl.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/interfaces/inner_kits/native_cpp/src/device_manager_impl.cpp b/interfaces/inner_kits/native_cpp/src/device_manager_impl.cpp index 811a6d7f4..bf5604d95 100644 --- a/interfaces/inner_kits/native_cpp/src/device_manager_impl.cpp +++ b/interfaces/inner_kits/native_cpp/src/device_manager_impl.cpp @@ -50,6 +50,7 @@ using namespace OHOS::AppExecFwk; using namespace OHOS::AppExecFwk::Constants; #endif + namespace OHOS { namespace DistributedHardware { bool DeviceManagerImpl::isSystemAppCalling(void) -- Gitee From b6f7db7352bdc8ccdacce1090408bedae69c6a13 Mon Sep 17 00:00:00 2001 From: wuqi0105 Date: Fri, 25 Feb 2022 15:17:32 +0800 Subject: [PATCH 6/6] test1 Signed-off-by: wuqi0105 --- interfaces/inner_kits/native_cpp/src/device_manager_impl.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/interfaces/inner_kits/native_cpp/src/device_manager_impl.cpp b/interfaces/inner_kits/native_cpp/src/device_manager_impl.cpp index bf5604d95..811a6d7f4 100644 --- a/interfaces/inner_kits/native_cpp/src/device_manager_impl.cpp +++ b/interfaces/inner_kits/native_cpp/src/device_manager_impl.cpp @@ -50,7 +50,6 @@ using namespace OHOS::AppExecFwk; using namespace OHOS::AppExecFwk::Constants; #endif - namespace OHOS { namespace DistributedHardware { bool DeviceManagerImpl::isSystemAppCalling(void) -- Gitee