• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021 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 package ohos.devtools.fixture;
17 
18 import ohos.devtools.datasources.databases.databaseapi.DataBaseApi;
19 import ohos.devtools.datasources.utils.device.service.MultiDeviceManager;
20 import ohos.devtools.datasources.utils.plugin.IPluginConfig;
21 import ohos.devtools.datasources.utils.plugin.service.PlugManager;
22 import ohos.devtools.datasources.utils.process.service.ProcessManager;
23 import ohos.devtools.datasources.utils.profilerlog.ProfilerLogManager;
24 import ohos.devtools.datasources.utils.session.service.SessionManager;
25 import ohos.devtools.pluginconfig.AgentConfig;
26 import ohos.devtools.pluginconfig.BytraceConfig;
27 import ohos.devtools.pluginconfig.CpuConfig;
28 import ohos.devtools.pluginconfig.DiskIoConfig;
29 import ohos.devtools.pluginconfig.FtraceConfig;
30 import ohos.devtools.pluginconfig.HilogConfig;
31 import ohos.devtools.pluginconfig.MemoryConfig;
32 import ohos.devtools.pluginconfig.ProcessConfig;
33 import ohos.devtools.pluginconfig.UserConfig;
34 import ohos.devtools.views.common.UtConstant;
35 import ohos.devtools.views.layout.HomePanel;
36 import ohos.devtools.views.user.UserManager;
37 import org.apache.logging.log4j.Level;
38 import org.assertj.swing.exception.ActionFailedException;
39 import org.assertj.swing.fixture.FrameFixture;
40 import org.junit.After;
41 import org.junit.Before;
42 import org.junit.Test;
43 
44 import javax.swing.JFrame;
45 import java.awt.AWTException;
46 import java.util.ArrayList;
47 import java.util.List;
48 import java.util.Objects;
49 import java.util.concurrent.TimeUnit;
50 
51 /**
52  * HiLog Button Fixture Test
53  *
54  * @since 2021/2/1 9:31
55  */
56 public class HiLogButtonFixtureTest {
57     private FrameFixture frameFixture;
58 
59     /**
60      * init
61      *
62      * @tc.name: init
63      * @tc.number: OHOS_JAVA_init_0001
64      * @tc.desc: init
65      * @tc.type: functional testing
66      * @tc.require: AR000FK5UI
67      * @throws AWTException AWTException
68      */
69     @Before
init()70     public void init() throws AWTException {
71         // Initialization data
72         ProcessManager.getInstance().setIsRequest(false);
73         SessionManager.getInstance().settingPermissions();
74         ProfilerLogManager.getSingleton().updateLogLevel(Level.ERROR);
75         PlugManager.getInstance().unzipStdDevelopTools();
76         DataBaseApi.getInstance().initDataSourceManager();
77         MultiDeviceManager.getInstance().start();
78         List<Class<? extends IPluginConfig>> plugConfigList = new ArrayList();
79         plugConfigList.add(ProcessConfig.class);
80         plugConfigList.add(AgentConfig.class);
81         plugConfigList.add(BytraceConfig.class);
82         plugConfigList.add(FtraceConfig.class);
83         plugConfigList.add(CpuConfig.class);
84         plugConfigList.add(HilogConfig.class);
85         if (Objects.nonNull(UserManager.getInstance().getSdkImpl())) {
86             plugConfigList.add(UserConfig.class);
87         }
88         plugConfigList.add(DiskIoConfig.class);
89         plugConfigList.add(MemoryConfig.class);
90         PlugManager.getInstance().loadingPlugs(plugConfigList);
91         while (true) {
92             if (MultiDeviceManager.getInstance().getOnlineDeviceInfoList().size() > 0) {
93                 break;
94             }
95         }
96         JFrame frame = new JFrame();
97         frame.add(new HomePanel());
98         frameFixture = new FrameFixture(frame);
99         // Display the frame
100         frameFixture.show();
101     }
102 
103     /**
104      * test Window
105      *
106      * @tc.name: testWindow
107      * @tc.number: OHOS_JAVA_testWindow_0001
108      * @tc.desc: test Window
109      * @tc.type: test Window
110      * @tc.require: AR000FK5UI
111      * @throws InterruptedException InterruptedException
112      */
113     @Test
testWindow()114     public void testWindow() throws InterruptedException {
115         try {
116             frameFixture.menuItem(UtConstant.UT_HOME_PANEL_HILOG_MENU).click();
117         } catch (ActionFailedException exception) {
118             exception.printStackTrace();
119         }
120         TimeUnit.SECONDS.sleep(2);
121         frameFixture.panel(UtConstant.UT_HILOG_PANEL_CLOSE_RIGHT).click();
122     }
123 
124     /**
125      * tear Down
126      *
127      * @tc.name: tearDown
128      * @tc.number: OHOS_JAVA_tearDown_0001
129      * @tc.desc: tear Down
130      * @tc.type: test Window
131      * @tc.require: AR000FK5UI
132      */
133     @After
tearDown()134     public void tearDown() {
135         frameFixture.close();
136         frameFixture.cleanUp();
137     }
138 }
139