• 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 
16 #include "gtest/gtest.h"
17 #include "hilog_adapter.h"
18 #include "ohos_adapter_helper.h"
19 #include "hitrace_adapter_impl.h"
20 #include "nweb_hisysevent.h"
21 
22 #include "parameters.h"
23 using namespace OHOS;
24 
25 using testing::ext::TestSize;
26 
27 namespace OHOS::NWeb {
28 /**
29  * @tc.name: NormalScene.
30  * @tc.desc: test normal scene of HiViewDFXAdapter.
31  * @tc.type: FUNC.
32  * @tc.require:
33  */
34 HWTEST(HiViewDFXAdapterTest, NormalScene, TestSize.Level1)
35 {
36     HiLogAdapter::PrintLog(LogLevelAdapter::INFO, "nwebTest", "nweb hilogAdapter PrintLog Test");
37 
38     HiLogAdapter::PrintConsoleLog(LogLevelAdapter::INFO, "ARKWEB-CONSOLE", "nwe console log test");
39 
40     int ret = OhosAdapterHelper::GetInstance().GetHiSysEventAdapterInstance().Write(
41         "testEvent", HiSysEventAdapter::EventType::STATISTIC, { "testkey1", "0"});
42     EXPECT_EQ(ret, 0);
43 
44     ret = OhosAdapterHelper::GetInstance().GetHiSysEventAdapterInstance().Write(
45         "testEvent", HiSysEventAdapter::EventType::STATISTIC, { "testkey1", "0", "testkey2", "0"});
46     EXPECT_EQ(ret, 0);
47 
48     ret = OhosAdapterHelper::GetInstance().GetHiSysEventAdapterInstance().Write(
49         "testEvent", HiSysEventAdapter::EventType::STATISTIC, { "testkey1", "0", "testkey2", "0", "testkey3", "0" });
50     EXPECT_EQ(ret, 0);
51 
52     ret = OhosAdapterHelper::GetInstance().GetHiSysEventAdapterInstance().Write("testEvent",
53         HiSysEventAdapter::EventType::STATISTIC,
54         { "testkey1", "0", "testkey2", "testvalue2", "testkey3", "0", "testkey4", "testvalue4" });
55     EXPECT_EQ(ret, 0);
56 
57     ret = OhosAdapterHelper::GetInstance().GetHiSysEventAdapterInstance().Write("testEvent",
58         HiSysEventAdapter::EventType::STATISTIC,
59         { "testkey1", "0", "testkey2", "0", "testkey3", "0", "testkey4", "0", "testkey5", "0.0" });
60     EXPECT_EQ(ret, 0);
61 
62     ret = OhosAdapterHelper::GetInstance().GetHiSysEventAdapterInstance().Write("testEvent",
63         HiSysEventAdapter::EventType::STATISTIC,
64         { "testkey1", "0", "testkey2", "0", "testkey3", "0", "testkey4", "0", "testkey5", "0.0", "testkey6", "0.0" });
65     EXPECT_EQ(ret, 0);
66 
67     ret = OhosAdapterHelper::GetInstance().GetHiSysEventAdapterInstance().Write("testEvent",
68         HiSysEventAdapter::EventType::STATISTIC,
69         { "testkey1", "0", "testkey2", "0", "testkey3", "0", "testkey4", "0", "testkey5", "0.0", "testkey6", "0.0",
70           "testkey7", "0.0" });
71     EXPECT_EQ(ret, 0);
72 
73     ret = OhosAdapterHelper::GetInstance().GetHiSysEventAdapterInstance().Write("testEvent",
74         HiSysEventAdapter::EventType::STATISTIC,
75         { "testkey1", "0", "testkey2", "0", "testkey3", "0", "testkey4", "0", "testkey5", "0.0", "testkey6", "0.0",
76           "testkey7", "0.0", "testkey8", "0.0" });
77     EXPECT_EQ(ret, 0);
78 
79     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().StartTrace("test");
80     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().StartAsyncTrace("test", 0);
81     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().CountTrace("test", 1);
82     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().FinishAsyncTrace("test", 0);
83     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().FinishTrace();
84     HiTraceAdapterImpl::GetInstance().IsHiTraceEnable();
85 }
86 
87 /**
88  * @tc.name: NormalScene_01.
89  * @tc.desc: test normal scene of HiViewDFXAdapter.
90  * @tc.type: FUNC 01.
91  * @tc.require:
92  */
93 HWTEST(HiViewDFXAdapterTest, NormalScene_01, TestSize.Level1)
94 {
95     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().StartOHOSTrace("test");
96     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().CountOHOSTrace("test", 1);
97     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().FinishOHOSTrace();
98     uint64_t val = (1ULL << 24);
99     std::string value = std::to_string(val);
100     OHOS::system::SetParameter("debug.hitrace.tags.enableflags", value);
101     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().StartOHOSTrace("test");
102     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().CountOHOSTrace("test", 1);
103     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().FinishOHOSTrace();
104     val = (1ULL << 39);
105     value = std::to_string(val);
106     OHOS::system::SetParameter("debug.hitrace.tags.enableflags", value);
107     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().StartOHOSTrace("test");
108     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().CountOHOSTrace("test", 1);
109     OhosAdapterHelper::GetInstance().GetHiTraceAdapterInstance().FinishOHOSTrace();
110     HiTraceAdapterImpl::GetInstance().IsACETraceEnable();
111     EventReport::ReportCreateWebInstanceTime(1, 1);
112 }
113 } // namespace OHOS::NWeb
114