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 #include "thermal_mock_proxy_test.h" 17 18 #include "mock_thermal_remote_object.h" 19 #include "thermal_action_callback_proxy.h" 20 #include "thermal_level_callback_proxy.h" 21 #include "thermal_log.h" 22 #include "thermal_srv_proxy.h" 23 #include "thermal_temp_callback_proxy.h" 24 25 using namespace testing::ext; 26 using namespace OHOS::PowerMgr; 27 using namespace OHOS; 28 using namespace std; 29 30 namespace { 31 /** 32 * @tc.name: ThermalMockProxyTest001 33 * @tc.desc: proxy test 34 * @tc.type: FUNC 35 * @tc.require: issueI5YZQ2 36 */ 37 HWTEST_F(ThermalMockProxyTest, ThermalMockProxyTest001, TestSize.Level0) 38 { 39 THERMAL_HILOGD(LABEL_TEST, "ThermalMockProxyTest001 start."); 40 std::string result = "a"; 41 sptr<MockThermalRemoteObject> sptrRemoteObj = new MockThermalRemoteObject(); 42 EXPECT_FALSE(sptrRemoteObj == nullptr); 43 std::shared_ptr<ThermalActionCallbackProxy> actionProxy = 44 std::make_shared<ThermalActionCallbackProxy>(sptrRemoteObj); 45 EXPECT_FALSE(actionProxy == nullptr); 46 using ActionCallbackMap = std::map<std::string, std::string>; 47 ActionCallbackMap map; 48 map.insert(std::make_pair(result, "1")); 49 EXPECT_TRUE(actionProxy->OnThermalActionChanged(map)); 50 std::shared_ptr<ThermalLevelCallbackProxy> levalProxy = std::make_shared<ThermalLevelCallbackProxy>(sptrRemoteObj); 51 EXPECT_FALSE(levalProxy == nullptr); 52 ThermalLevel leval = ThermalLevel::COOL; 53 EXPECT_TRUE(levalProxy->OnThermalLevelChanged(leval)); 54 std::shared_ptr<ThermalTempCallbackProxy> tempProxy = std::make_shared<ThermalTempCallbackProxy>(sptrRemoteObj); 55 EXPECT_FALSE(tempProxy == nullptr); 56 using TempCallbackMap = std::map<std::string, int32_t>; 57 TempCallbackMap tempCbMap; 58 tempCbMap.insert(std::make_pair(result, 1)); 59 EXPECT_TRUE(tempProxy->OnThermalTempChanged(tempCbMap)); 60 THERMAL_HILOGD(LABEL_TEST, "ThermalMockProxyTest001 end."); 61 } 62 63 /** 64 * @tc.name: ThermalMockProxyTest002 65 * @tc.desc: proxy test 66 * @tc.type: FUNC 67 * @tc.require: issueI5YZQ2 68 */ 69 HWTEST_F(ThermalMockProxyTest, ThermalMockProxyTest002, TestSize.Level0) 70 { 71 THERMAL_HILOGD(LABEL_TEST, "ThermalMockProxyTest002 start."); 72 sptr<MockThermalRemoteObject> sptrRemoteObj = new MockThermalRemoteObject(); 73 std::shared_ptr<ThermalSrvProxy> srvProxy = std::make_shared<ThermalSrvProxy>(sptrRemoteObj); 74 EXPECT_FALSE(srvProxy == nullptr); 75 std::vector<std::string> typeList; 76 std::string desc; 77 sptr<IThermalTempCallback> tempCallback; 78 EXPECT_FALSE(srvProxy->SubscribeThermalTempCallback(typeList, tempCallback)); 79 EXPECT_FALSE(srvProxy->UnSubscribeThermalTempCallback(tempCallback)); 80 sptr<IThermalLevelCallback> levelCallback; 81 EXPECT_FALSE(srvProxy->SubscribeThermalLevelCallback(levelCallback)); 82 EXPECT_FALSE(srvProxy->UnSubscribeThermalLevelCallback(levelCallback)); 83 sptr<IThermalActionCallback> actionCallback; 84 EXPECT_FALSE(srvProxy->SubscribeThermalActionCallback(typeList, desc, actionCallback)); 85 EXPECT_FALSE(srvProxy->UnSubscribeThermalActionCallback(actionCallback)); 86 87 tempCallback = new ThermalTempCallbackProxy(sptrRemoteObj); 88 EXPECT_FALSE(tempCallback == nullptr); 89 EXPECT_TRUE(srvProxy->SubscribeThermalTempCallback(typeList, tempCallback)); 90 EXPECT_TRUE(srvProxy->UnSubscribeThermalTempCallback(tempCallback)); 91 levelCallback = new ThermalLevelCallbackProxy(sptrRemoteObj); 92 EXPECT_FALSE(levelCallback == nullptr); 93 EXPECT_TRUE(srvProxy->SubscribeThermalLevelCallback(levelCallback)); 94 EXPECT_TRUE(srvProxy->UnSubscribeThermalLevelCallback(levelCallback)); 95 actionCallback = new ThermalActionCallbackProxy(sptrRemoteObj); 96 EXPECT_FALSE(actionCallback == nullptr); 97 EXPECT_TRUE(srvProxy->SubscribeThermalActionCallback(typeList, desc, actionCallback)); 98 EXPECT_TRUE(srvProxy->UnSubscribeThermalActionCallback(actionCallback)); 99 THERMAL_HILOGD(LABEL_TEST, "ThermalMockProxyTest002 end."); 100 } 101 } // namespace 102