1 /* 2 * Copyright (c) 2022 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 #ifndef OHOS_DEVICE_MANAGER_NOTIFY_TEST_H 17 #define OHOS_DEVICE_MANAGER_NOTIFY_TEST_H 18 19 #include <gtest/gtest.h> 20 #include <mutex> 21 #include <map> 22 #include <vector> 23 #include <string> 24 #include <memory> 25 #include <list> 26 27 #include "dm_device_info.h" 28 #include "dm_subscribe_info.h" 29 #include "device_manager_callback.h" 30 #include "single_instance.h" 31 namespace OHOS { 32 namespace DistributedHardware { 33 class DeviceManagerNotifyTest : public testing::Test { 34 public: 35 static void SetUpTestCase(); 36 static void TearDownTestCase(); 37 virtual void SetUp() override; 38 virtual void TearDown() override; 39 }; 40 41 class DmInitCallbackTest : public DmInitCallback { 42 public: 43 explicit DmInitCallbackTest(int &count); ~DmInitCallbackTest()44 virtual ~DmInitCallbackTest() override {} 45 virtual void OnRemoteDied() override; 46 private: 47 int *count_ = nullptr; 48 }; 49 50 class DeviceStateCallbackTest : public DeviceStateCallback { 51 public: 52 explicit DeviceStateCallbackTest(int &count); ~DeviceStateCallbackTest()53 virtual ~DeviceStateCallbackTest() override {} 54 virtual void OnDeviceOnline(const DmDeviceInfo &deviceInfo) override; 55 virtual void OnDeviceReady(const DmDeviceInfo &deviceInfo) override; 56 virtual void OnDeviceOffline(const DmDeviceInfo &deviceInfo) override; 57 virtual void OnDeviceChanged(const DmDeviceInfo &deviceInfo) override; 58 private: 59 int *count_ = nullptr; 60 }; 61 62 class DiscoveryCallbackTest : public DiscoveryCallback { 63 public: 64 explicit DiscoveryCallbackTest(int &count); ~DiscoveryCallbackTest()65 virtual ~DiscoveryCallbackTest() override {} 66 virtual void OnDiscoverySuccess(uint16_t subscribeId) override; 67 virtual void OnDiscoveryFailed(uint16_t subscribeId, int32_t failedReason) override; 68 virtual void OnDeviceFound(uint16_t subscribeId, const DmDeviceInfo &deviceInfo) override; 69 private: 70 int *count_ = nullptr; 71 }; 72 73 class PublishCallbackTest : public PublishCallback { 74 public: 75 explicit PublishCallbackTest(int &count); ~PublishCallbackTest()76 virtual ~PublishCallbackTest() override {} 77 virtual void OnPublishResult(int32_t publishId, int32_t failedReason) override; 78 private: 79 int *count_ = nullptr; 80 }; 81 82 class AuthenticateCallbackTest : public AuthenticateCallback { 83 public: 84 explicit AuthenticateCallbackTest(int &count); ~AuthenticateCallbackTest()85 virtual ~AuthenticateCallbackTest() override {} 86 virtual void OnAuthResult(const std::string &deviceId, const std::string &token, int32_t status, 87 int32_t reason); 88 private: 89 int *count_ = nullptr; 90 }; 91 92 class DeviceManagerFaCallbackTest : public DeviceManagerUiCallback { 93 public: 94 explicit DeviceManagerFaCallbackTest(int &count); ~DeviceManagerFaCallbackTest()95 virtual ~DeviceManagerFaCallbackTest() override {} 96 virtual void OnCall(const std::string ¶mJson) override; 97 private: 98 int *count_ = nullptr; 99 }; 100 101 class CredentialCallbackTest : public CredentialCallback { 102 public: OnCredentialResult(int32_t & action,const std::string & credentialResult)103 void OnCredentialResult(int32_t &action, const std::string &credentialResult) override {} 104 }; 105 106 class DeviceStatusCallbackTest : public DeviceStatusCallback { 107 public: OnDeviceOnline(const DmDeviceBasicInfo & deviceBasicInfo)108 void OnDeviceOnline(const DmDeviceBasicInfo &deviceBasicInfo) override {} OnDeviceOffline(const DmDeviceBasicInfo & deviceBasicInfo)109 void OnDeviceOffline(const DmDeviceBasicInfo &deviceBasicInfo) override {} OnDeviceChanged(const DmDeviceBasicInfo & deviceBasicInfo)110 void OnDeviceChanged(const DmDeviceBasicInfo &deviceBasicInfo) override {} OnDeviceReady(const DmDeviceBasicInfo & deviceBasicInfo)111 void OnDeviceReady(const DmDeviceBasicInfo &deviceBasicInfo) override {} 112 }; 113 } // namespace DistributedHardware 114 } // namespace OHOS 115 116 #endif // OHOS_DEVICE_MANAGER_NOTIFY_TEST_H 117