• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 #include <thread>
16 #include <chrono>
17 #include "test/mock/interfaces/mock_uicontent.h"
18 #include "ui_content.h"
19 #include "interfaces/inner_api/form_render/include/form_renderer.h"
20 #include "interfaces/inner_api/form_render/include/form_renderer_delegate_impl.h"
21 #include "interfaces/inner_api/form_render/include/form_renderer_group.h"
22 #include "test/mock/core/pipeline/mock_pipeline_context.h"
23 
24 using namespace testing;
25 using namespace testing::ext;
26 namespace OHOS::Ace {
27 namespace {
28 
29 } // namespace
30 class FormRenderGroupTest : public testing::Test {
31 public:
SetUpTestCase()32     static void SetUpTestCase() {};
TearDownTestCase()33     static void TearDownTestCase() {};
34 };
35 /**
36  * @tc.name: FormRenderGroupTest_001
37  * @tc.desc: Test AddForm() funtion.
38  * @tc.type: FUNC
39  */
40 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_001, TestSize.Level1)
41 {
42     GTEST_LOG_(INFO) << "FormRenderGroupTest_001 start";
43     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_001");
44     ASSERT_TRUE(eventRunner);
45     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
46     auto group = FormRendererGroup::Create(nullptr, nullptr, eventHandler);
47     EXPECT_TRUE(group);
48     OHOS::AAFwk::Want want;
49     OHOS::AppExecFwk::FormJsInfo formJsInfo;
50     formJsInfo.bundleName = "bundleName";
51     formJsInfo.moduleName = "moduleName";
52     formJsInfo.formId = 1;
53     EXPECT_EQ(formJsInfo.formId, 1);
54     group->AddForm(want, formJsInfo);
55     GTEST_LOG_(INFO) << "FormRenderGroupTest_001 end";
56 }
57 /**
58  * @tc.name: FormRenderGroupTest_002
59  * @tc.desc: Test OnUnlock() function.
60  * @tc.type: FUNC
61  */
62 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_002, TestSize.Level1)
63 {
64     GTEST_LOG_(INFO) << "FormRenderGroupTest_002 start";
65     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_002");
66     ASSERT_TRUE(eventRunner);
67     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
68     auto group = FormRendererGroup::Create(nullptr, nullptr, eventHandler);
69     EXPECT_TRUE(group);
70     group->OnUnlock();
71     GTEST_LOG_(INFO) << "FormRenderGroupTest_002 end";
72 }
73 /**
74  * @tc.name: FormRenderGroupTest_003
75  * @tc.desc: Test UpdateForm() function.
76  * @tc.type: FUNC
77  */
78 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_003, TestSize.Level1)
79 {
80     GTEST_LOG_(INFO) << "FormRenderGroupTest_003 start";
81     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_003");
82     ASSERT_TRUE(eventRunner);
83     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
84     auto group = FormRendererGroup::Create(nullptr, nullptr, eventHandler);
85     EXPECT_TRUE(group);
86     OHOS::AppExecFwk::FormJsInfo formJsInfo;
87     formJsInfo.bundleName = "bundleName";
88     formJsInfo.moduleName = "moduleName";
89     group->UpdateForm(formJsInfo);
90     GTEST_LOG_(INFO) << "FormRenderGroupTest_003 end";
91 }
92 /**
93  * @tc.name: FormRenderGroupTest_004
94  * @tc.desc: Test DeleteForm() function.
95  * @tc.type: FUNC
96  */
97 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_004, TestSize.Level1)
98 {
99     GTEST_LOG_(INFO) << "FormRenderGroupTest_004 start";
100     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_004");
101     ASSERT_TRUE(eventRunner);
102     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
103     auto group = FormRendererGroup::Create(nullptr, nullptr, eventHandler);
104     EXPECT_TRUE(group);
105     std::string id = "123456";
106     group->DeleteForm(id);
107     GTEST_LOG_(INFO) << "FormRenderGroupTest_004 end";
108 }
109 /**
110  * @tc.name: FormRenderGroupTest_005
111  * @tc.desc: Test DeleteForm() function.
112  * @tc.type: FUNC
113  */
114 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_005, TestSize.Level1)
115 {
116     GTEST_LOG_(INFO) << "FormRenderGroupTest_005 start";
117     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_005");
118     ASSERT_TRUE(eventRunner);
119     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
120     auto group = FormRendererGroup::Create(nullptr, nullptr, eventHandler);
121     EXPECT_TRUE(group);
122     OHOS::AAFwk::Want want;
123     OHOS::AppExecFwk::FormJsInfo formJsInfo;
124     formJsInfo.bundleName = "bundleName";
125     formJsInfo.moduleName = "moduleName";
126     group->AddForm(want, formJsInfo);
127     group->DeleteForm();
128     GTEST_LOG_(INFO) << "FormRenderGroupTest_005 end";
129 }
130 /**
131  * @tc.name: FormRenderGroupTest_006
132  * @tc.desc: Test ReloadForm() function.
133  * @tc.type: FUNC
134  */
135 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_006, TestSize.Level1)
136 {
137     GTEST_LOG_(INFO) << "FormRenderGroupTest_006 start";
138     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_006");
139     ASSERT_TRUE(eventRunner);
140     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
141     auto group = FormRendererGroup::Create(nullptr, nullptr, eventHandler);
142     EXPECT_TRUE(group);
143     OHOS::AppExecFwk::FormJsInfo formJsInfo;
144     formJsInfo.bundleName = "bundleName";
145     formJsInfo.moduleName = "moduleName";
146     formJsInfo.formId = 2;
147     EXPECT_EQ(formJsInfo.formId, 2);
148     group->ReloadForm(formJsInfo);
149     GTEST_LOG_(INFO) << "FormRenderGroupTest_006 end";
150 }
151 /**
152  * @tc.name: FormRenderGroupTest_007
153  * @tc.desc: Test UpdateConfiguration() function.
154  * @tc.type: FUNC
155  */
156 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_007, TestSize.Level1)
157 {
158     GTEST_LOG_(INFO) << "FormRenderGroupTest_007 start";
159     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_007");
160     ASSERT_TRUE(eventRunner);
161     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
162     auto group = FormRendererGroup::Create(nullptr, nullptr, eventHandler);
163     EXPECT_TRUE(group);
164     std::shared_ptr<OHOS::AppExecFwk::Configuration> config;
165     group->UpdateConfiguration(config);
166     GTEST_LOG_(INFO) << "FormRenderGroupTest_007 end";
167 }
168 /**
169  * @tc.name: FormRenderGroupTest_008
170  * @tc.desc: Test IsFormRequestsEmpty() function.
171  * @tc.type: FUNC
172  */
173 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_008, TestSize.Level1)
174 {
175     GTEST_LOG_(INFO) << "FormRenderGroupTest_008 start";
176     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_008");
177     ASSERT_TRUE(eventRunner);
178     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
179     auto group = FormRendererGroup::Create(nullptr, nullptr, eventHandler);
180     EXPECT_TRUE(group);
181     EXPECT_EQ(true, group->IsFormRequestsEmpty());
182     GTEST_LOG_(INFO) << "FormRenderGroupTest_008 end";
183 }
184 /**
185  * @tc.name: FormRenderGroupTest_009
186  * @tc.desc: Test GetAllRendererFormRequests() function.
187  * @tc.type: FUNC
188  */
189 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_009, TestSize.Level1)
190 {
191     GTEST_LOG_(INFO) << "FormRenderGroupTest_009 start";
192     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_009");
193     ASSERT_TRUE(eventRunner);
194     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
195     auto group = FormRendererGroup::Create(nullptr, nullptr, eventHandler);
196     EXPECT_TRUE(group);
197     std::vector<FormRequest> from_ = group->GetAllRendererFormRequests();
198     GTEST_LOG_(INFO) << "FormRenderGroupTest_009 end";
199 }
200 /**
201  * @tc.name: FormRenderGroupTest_010
202  * @tc.desc: Test RecycleForm() function.
203  * @tc.type: FUNC
204  */
205 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_010, TestSize.Level1)
206 {
207     GTEST_LOG_(INFO) << "FormRenderGroupTest_010 start";
208     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_010");
209     ASSERT_TRUE(eventRunner);
210     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
211     auto group = FormRendererGroup::Create(nullptr, nullptr, eventHandler);
212     EXPECT_TRUE(group);
213     std::string data = "123";
214     group->RecycleForm(data);
215     GTEST_LOG_(INFO) << "FormRenderGroupTest_010 end";
216 }
217 /**
218  * @tc.name: FormRenderGroupTest_011
219  * @tc.desc: Test FormRendererGroup() function.
220  * @tc.type: FUNC
221  */
222 HWTEST_F(FormRenderGroupTest, FormRenderGroupTest_011, TestSize.Level1)
223 {
224     GTEST_LOG_(INFO) << "FormRenderGroupTest_011 start";
225     auto eventRunner = OHOS::AppExecFwk::EventRunner::Create("FormRenderGroupTest_011");
226     ASSERT_TRUE(eventRunner);
227     auto eventHandler = std::make_shared<OHOS::AppExecFwk::EventHandler>(eventRunner);
228     FormRendererGroup group(nullptr, nullptr, eventHandler);
229     GTEST_LOG_(INFO) << "FormRenderGroupTest_011 end";
230 }
231 }