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 "ntp_time_test.h"
17 
18 #include "location_log.h"
19 #define private public
20 #include "ntp_time_check.h"
21 #include "time_manager.h"
22 #include "gps_time_manager.h"
23 #include "ntp_time_helper.h"
24 #include "net_conn_observer.h"
25 #undef private
26 
27 #ifdef NET_MANAGER_ENABLE
28 #include "net_conn_observer.h"
29 #include "net_conn_client.h"
30 #include "net_specifier.h"
31 #endif
32 
33 using namespace testing::ext;
34 namespace OHOS {
35 namespace Location {
SetUp()36 void NtpTimeTest::SetUp()
37 {
38 }
39 
TearDown()40 void NtpTimeTest::TearDown()
41 {
42 }
43 
44 HWTEST_F(NtpTimeTest, NtpTimeCheckSetGpsTimeTest001, TestSize.Level1)
45 {
46     GTEST_LOG_(INFO)
47         << "NtpTimeTest, NtpTimeCheckSetGpsTimeTest001, TestSize.Level1";
48     LBSLOGI(GNSS_TEST, "[NtpTimeTest] NtpTimeCheckSetGpsTimeTest001 begin");
49     auto ntpTimeCheck = NtpTimeCheck::GetInstance();
50     EXPECT_NE(nullptr, ntpTimeCheck);
51     int64_t gpsMsTime = -1;
52     int64_t bootTimeMs = -1;
53     ntpTimeCheck->SetGpsTime(gpsMsTime, bootTimeMs);
54     LBSLOGI(GNSS_TEST, "[NtpTimeTest] NtpTimeCheckSetGpsTimeTest001 end");
55 }
56 
57 HWTEST_F(NtpTimeTest, NtpTimeCheckCheckNtpTimeTest001, TestSize.Level1)
58 {
59     GTEST_LOG_(INFO)
60         << "NtpTimeTest, NtpTimeCheckCheckNtpTimeTest001, TestSize.Level1";
61     LBSLOGI(GNSS_TEST, "[NtpTimeTest] NtpTimeCheckCheckNtpTimeTest001 begin");
62     auto ntpTimeCheck = NtpTimeCheck::GetInstance();
63     EXPECT_NE(nullptr, ntpTimeCheck);
64     int64_t gpsMsTime = 1720522730000;
65     int64_t bootTimeMs = 1;
66     ntpTimeCheck->SetGpsTime(gpsMsTime, bootTimeMs);
67     int64_t ntpMsTime = 1720522730000;
68     int64_t msTimeSynsBoot = 1;
69     ntpTimeCheck->CheckNtpTime(ntpMsTime, msTimeSynsBoot);
70     LBSLOGI(GNSS_TEST, "[NtpTimeTest] NtpTimeCheckCheckNtpTimeTest001 end");
71 }
72 
73 HWTEST_F(NtpTimeTest, NtpTimeCheckCheckNtpTimeTest002, TestSize.Level1)
74 {
75     GTEST_LOG_(INFO)
76         << "NtpTimeTest, NtpTimeCheckCheckNtpTimeTest002, TestSize.Level1";
77     LBSLOGI(GNSS_TEST, "[NtpTimeTest] NtpTimeCheckCheckNtpTimeTest002 begin");
78     auto ntpTimeCheck = NtpTimeCheck::GetInstance();
79     EXPECT_NE(nullptr, ntpTimeCheck);
80     int64_t ntpMsTime = 1720522730000;
81     int64_t msTimeSynsBoot = 1;
82     ntpTimeCheck->CheckNtpTime(ntpMsTime, msTimeSynsBoot);
83     LBSLOGI(GNSS_TEST, "[NtpTimeTest] NtpTimeCheckCheckNtpTimeTest002 end");
84 }
85 
86 HWTEST_F(NtpTimeTest, NtpTimeCheckGetUncertaintyTest001, TestSize.Level1)
87 {
88     GTEST_LOG_(INFO)
89         << "NtpTimeTest, NtpTimeCheckGetUncertaintyTest001, TestSize.Level1";
90     LBSLOGI(GNSS_TEST, "[NtpTimeTest] NtpTimeCheckGetUncertaintyTest001 begin");
91     auto ntpTimeCheck = NtpTimeCheck::GetInstance();
92     EXPECT_NE(nullptr, ntpTimeCheck);
93     ntpTimeCheck->GetUncertainty();
94     LBSLOGI(GNSS_TEST, "[NtpTimeTest] NtpTimeCheckGetUncertaintyTest001 end");
95 }
96 
97 HWTEST_F(NtpTimeTest, TimeManagerGetTimestampTest001, TestSize.Level1)
98 {
99     GTEST_LOG_(INFO)
100         << "NtpTimeTest, TimeManagerGetTimestampTest001, TestSize.Level1";
101     LBSLOGI(GNSS_TEST, "[NtpTimeTest] TimeManagerGetTimestampTest001 begin");
102     TimeManager timeManager;
103     int64_t timeStamp = timeManager.GetTimestamp();
104     EXPECT_EQ(0, timeStamp);
105     LBSLOGI(GNSS_TEST, "[NtpTimeTest] TimeManagerGetTimestampTest001 end");
106 }
107 
108 HWTEST_F(NtpTimeTest, GpsTimeManagerCheckValidTest001, TestSize.Level1)
109 {
110     GTEST_LOG_(INFO)
111         << "NtpTimeTest, GpsTimeManagerCheckValidTest001, TestSize.Level1";
112     LBSLOGI(GNSS_TEST, "[NtpTimeTest] GpsTimeManagerCheckValidTest001 begin");
113     GpsTimeManager gpsTimeManager;
114     gpsTimeManager.CheckValid(0, 0);
115     LBSLOGI(GNSS_TEST, "[NtpTimeTest] GpsTimeManagerCheckValidTest001 end");
116 }
117 
118 HWTEST_F(NtpTimeTest, RetrieveAndInjectNtpTimeTest001, TestSize.Level1)
119 {
120     GTEST_LOG_(INFO)
121         << "NtpTimeTest, RetrieveAndInjectNtpTimeTest001, TestSize.Level1";
122     LBSLOGI(GNSS_TEST, "[NtpTimeTest] RetrieveAndInjectNtpTimeTest001 begin");
123     auto npTimeHelper = NtpTimeHelper::GetInstance();
124     EXPECT_NE(nullptr, npTimeHelper);
125     npTimeHelper->RetrieveAndInjectNtpTime();
126     sleep(1);
127     npTimeHelper->RetrieveAndInjectNtpTime();
128     LBSLOGI(GNSS_TEST, "[NtpTimeTest] RetrieveAndInjectNtpTimeTest001 end");
129 }
130 
131 #ifdef NET_MANAGER_ENABLE
132 HWTEST_F(NtpTimeTest, NetConnObserverTest001, TestSize.Level1)
133 {
134     GTEST_LOG_(INFO)
135         << "NtpTimeTest, NetConnObserverTest001, TestSize.Level1";
136     LBSLOGI(GNSS_TEST, "[NtpTimeTest] NetConnObserverTest001 begin");
137     sptr<NetConnObserver> netWorkObserver = sptr<NetConnObserver>((new (std::nothrow) NetConnObserver()));
138     EXPECT_NE(nullptr, netWorkObserver);
139     sptr<NetManagerStandard::NetHandle> handle = nullptr;
140     netWorkObserver->NetAvailable(handle);
141     sptr<NetManagerStandard::NetAllCapabilities> netAllCap = nullptr;
142     netWorkObserver->NetCapabilitiesChange(handle, netAllCap);
143     sptr<NetManagerStandard::NetLinkInfo> info = nullptr;
144     netWorkObserver->NetConnectionPropertiesChange(handle, info);
145     netWorkObserver->NetLost(handle);
146     netWorkObserver->NetUnavailable();
147     netWorkObserver->NetBlockStatusChange(handle, false);
148     LBSLOGI(GNSS_TEST, "[NtpTimeTest] NetConnObserverTest001 end");
149 }
150 #endif
151 
152 }
153 }