1 /*
2 * Copyright (c) 2024 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 "gtest/gtest.h"
17 #include "charge_state_monitor.h"
18 #include "constraint_manager_adapter.h"
19 #include "state_manager_adapter.h"
20 #include "standby_service_impl.h"
21
22 using namespace testing::ext;
23
24 namespace OHOS {
25 namespace DevStandbyMgr {
26 class ConstraintManagerAdapterTest : public testing::Test {
27 public:
28 static void SetUpTestCase();
29 static void TearDownTestCase();
30 void SetUp() override;
TearDown()31 void TearDown() override {}
32 };
33
TearDownTestCase()34 void ConstraintManagerAdapterTest::TearDownTestCase() {}
35
SetUpTestCase()36 void ConstraintManagerAdapterTest::SetUpTestCase() {}
37
SetUp()38 void ConstraintManagerAdapterTest::SetUp()
39 {
40 StandbyServiceImpl::GetInstance()->standbyStateManager_ = std::make_shared<StateManagerAdapter>();
41 }
42
43 /**
44 * @tc.name: Init
45 * @tc.desc: test Init.
46 * @tc.type: FUNC
47 * @tc.require:
48 */
49 HWTEST_F(ConstraintManagerAdapterTest, Init, TestSize.Level1)
50 {
51 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
52 bool ret = constraintManagerAdapter->Init();
53 EXPECT_EQ(ret, true);
54 }
55
56 /**
57 * @tc.name: UnInit
58 * @tc.desc: test UnInit.
59 * @tc.type: FUNC
60 * @tc.require:
61 */
62 HWTEST_F(ConstraintManagerAdapterTest, UnInit, TestSize.Level1)
63 {
64 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
65 bool ret = constraintManagerAdapter->UnInit();
66 EXPECT_EQ(ret, true);
67 }
68
69 /**
70 * @tc.name: StartEvalution
71 * @tc.desc: test StartEvalution.
72 * @tc.type: FUNC
73 * @tc.require:
74 */
75 HWTEST_F(ConstraintManagerAdapterTest, StartEvalution001, TestSize.Level1)
76 {
77 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
78 ConstraintEvalParam params;
79 constraintManagerAdapter->isEvaluation_ = true;
80 constraintManagerAdapter->StartEvalution(params);
81 }
82
83 /**
84 * @tc.name: StartEvalution
85 * @tc.desc: test StartEvalution.
86 * @tc.type: FUNC
87 * @tc.require:
88 */
89 HWTEST_F(ConstraintManagerAdapterTest, StartEvalution002, TestSize.Level1)
90 {
91 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
92 ConstraintEvalParam params;
93 constraintManagerAdapter->isEvaluation_ = false;
94 constraintManagerAdapter->constraintMap_.clear();
95 std::shared_ptr<StateManagerAdapter> stateManagerAdapter = std::make_shared<StateManagerAdapter>();
96 stateManagerAdapter->isEvalution_ = false;
97 constraintManagerAdapter->stateManager_ = stateManagerAdapter;
98 constraintManagerAdapter->StartEvalution(params);
99 }
100
101 /**
102 * @tc.name: StartEvalution
103 * @tc.desc: test StartEvalution.
104 * @tc.type: FUNC
105 * @tc.require:
106 */
107 HWTEST_F(ConstraintManagerAdapterTest, StartEvalution003, TestSize.Level1)
108 {
109 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
110 ConstraintEvalParam params;
111 constraintManagerAdapter->isEvaluation_ = false;
112 std::shared_ptr<ChargeStateMonitor> monitor = nullptr;
113 constraintManagerAdapter->RegisterConstraintCallback(params, monitor);
114 EXPECT_EQ(constraintManagerAdapter->constraintMap_.size(), 1);
115 ErrCode ret = constraintManagerAdapter->StartEvalution(params);
116 EXPECT_EQ(ret, ERR_OK);
117 }
118
119 /**
120 * @tc.name: StartEvalution
121 * @tc.desc: test StartEvalution.
122 * @tc.type: FUNC
123 * @tc.require:
124 */
125 HWTEST_F(ConstraintManagerAdapterTest, StartEvalution004, TestSize.Level1)
126 {
127 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
128 ConstraintEvalParam params;
129 constraintManagerAdapter->isEvaluation_ = false;
130 std::shared_ptr<ChargeStateMonitor> monitor = std::make_shared<ChargeStateMonitor>();
131 constraintManagerAdapter->RegisterConstraintCallback(params, monitor);
132 constraintManagerAdapter->StartEvalution(params);
133 }
134
135 /**
136 * @tc.name: StopEvalution
137 * @tc.desc: test StopEvalution.
138 * @tc.type: FUNC
139 * @tc.require:
140 */
141 HWTEST_F(ConstraintManagerAdapterTest, StopEvalution001, TestSize.Level1)
142 {
143 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
144 constraintManagerAdapter->isEvaluation_ = false;
145 constraintManagerAdapter->StopEvalution();
146 }
147
148 /**
149 * @tc.name: StopEvalution
150 * @tc.desc: test StopEvalution.
151 * @tc.type: FUNC
152 * @tc.require:
153 */
154 HWTEST_F(ConstraintManagerAdapterTest, StopEvalution002, TestSize.Level1)
155 {
156 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
157 constraintManagerAdapter->isEvaluation_ = true;
158 constraintManagerAdapter->curMonitor_ = nullptr;
159 constraintManagerAdapter->StopEvalution();
160 }
161
162 /**
163 * @tc.name: StopEvalution
164 * @tc.desc: test StopEvalution.
165 * @tc.type: FUNC
166 * @tc.require:
167 */
168 HWTEST_F(ConstraintManagerAdapterTest, StopEvalution003, TestSize.Level1)
169 {
170 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
171 constraintManagerAdapter->isEvaluation_ = true;
172 constraintManagerAdapter->curMonitor_ = std::make_shared<ChargeStateMonitor>();
173 constraintManagerAdapter->StopEvalution();
174 }
175
176 /**
177 * @tc.name: RegisterConstraintCallback
178 * @tc.desc: test RegisterConstraintCallback.
179 * @tc.type: FUNC
180 * @tc.require:
181 */
182 HWTEST_F(ConstraintManagerAdapterTest, RegisterConstraintCallback, TestSize.Level1)
183 {
184 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
185 ConstraintEvalParam params;
186 std::shared_ptr<ChargeStateMonitor> monitor = nullptr;
187 constraintManagerAdapter->RegisterConstraintCallback(params, monitor);
188 }
189
190 /**
191 * @tc.name: ShellDump
192 * @tc.desc: test StopMonitoring.
193 * @tc.type: FUNC
194 * @tc.require:
195 */
196 HWTEST_F(ConstraintManagerAdapterTest, ShellDump, TestSize.Level1)
197 {
198 std::shared_ptr<ConstraintManagerAdapter> constraintManagerAdapter = std::make_shared<ConstraintManagerAdapter>();
199 std::vector<std::string> argsInStr;
200 string result;
201 constraintManagerAdapter->ShellDump(argsInStr, result);
202 }
203 } // namespace DevStandbyMgr
204 } // namespace OHOS
205