12d43be4eSopenharmony_ci/* 22d43be4eSopenharmony_ci * Copyright (C) 2021 Huawei Device Co., Ltd. 32d43be4eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 42d43be4eSopenharmony_ci * you may not use this file except in compliance with the License. 52d43be4eSopenharmony_ci * You may obtain a copy of the License at 62d43be4eSopenharmony_ci * 72d43be4eSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 82d43be4eSopenharmony_ci * 92d43be4eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 102d43be4eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 112d43be4eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 122d43be4eSopenharmony_ci * See the License for the specific language governing permissions and 132d43be4eSopenharmony_ci * limitations under the License. 142d43be4eSopenharmony_ci */ 152d43be4eSopenharmony_ci 162d43be4eSopenharmony_ci#include <cstdint> 172d43be4eSopenharmony_ci#include <string> 182d43be4eSopenharmony_ci 192d43be4eSopenharmony_ci#define private public 202d43be4eSopenharmony_ci#include <gtest/gtest.h> 212d43be4eSopenharmony_ci 222d43be4eSopenharmony_ci#include "cellular_data_client.h" 232d43be4eSopenharmony_ci#include "cellular_data_controller.h" 242d43be4eSopenharmony_ci#include "cellular_data_error.h" 252d43be4eSopenharmony_ci#include "cellular_data_net_agent.h" 262d43be4eSopenharmony_ci#include "cellular_data_service.h" 272d43be4eSopenharmony_ci#include "cellular_data_types.h" 282d43be4eSopenharmony_ci#include "core_service_client.h" 292d43be4eSopenharmony_ci#include "data_access_token.h" 302d43be4eSopenharmony_ci#include "gtest/gtest-message.h" 312d43be4eSopenharmony_ci#include "gtest/gtest-test-part.h" 322d43be4eSopenharmony_ci#include "gtest/gtest_pred_impl.h" 332d43be4eSopenharmony_ci#include "gtest/hwext/gtest-tag.h" 342d43be4eSopenharmony_ci#include "hap_token_info.h" 352d43be4eSopenharmony_ci#include "i_cellular_data_manager.h" 362d43be4eSopenharmony_ci#include "iosfwd" 372d43be4eSopenharmony_ci#include "iostream" 382d43be4eSopenharmony_ci#include "net_conn_callback_stub.h" 392d43be4eSopenharmony_ci#include "net_supplier_callback_base.h" 402d43be4eSopenharmony_ci#include "net_conn_client.h" 412d43be4eSopenharmony_ci#include "net_handle.h" 422d43be4eSopenharmony_ci#include "net_specifier.h" 432d43be4eSopenharmony_ci#include "ostream" 442d43be4eSopenharmony_ci#include "permission_def.h" 452d43be4eSopenharmony_ci#include "permission_state_full.h" 462d43be4eSopenharmony_ci#include "refbase.h" 472d43be4eSopenharmony_ci#include "telephony_ext_wrapper.h" 482d43be4eSopenharmony_ci#include "telephony_types.h" 492d43be4eSopenharmony_ci#include "token_setproc.h" 502d43be4eSopenharmony_ci#include "unistd.h" 512d43be4eSopenharmony_ci#include "apn_item.h" 522d43be4eSopenharmony_ci#include "cellular_data_constant.h" 532d43be4eSopenharmony_ci#include "common_event_manager.h" 542d43be4eSopenharmony_ci#include "common_event_support.h" 552d43be4eSopenharmony_ci 562d43be4eSopenharmony_cinamespace OHOS { 572d43be4eSopenharmony_cinamespace Telephony { 582d43be4eSopenharmony_ciusing namespace testing::ext; 592d43be4eSopenharmony_ciusing namespace OHOS::NetManagerStandard; 602d43be4eSopenharmony_ci 612d43be4eSopenharmony_cistatic const int32_t SLEEP_TIME = 1; 622d43be4eSopenharmony_cistatic const int32_t SIM_SLOT_ID_1 = DEFAULT_SIM_SLOT_ID + 1; 632d43be4eSopenharmony_cistatic const int32_t DATA_SLOT_ID_INVALID = DEFAULT_SIM_SLOT_ID + 10; 642d43be4eSopenharmony_cistatic const int32_t PING_CHECK_SUCCESS = 0; 652d43be4eSopenharmony_cistatic const int32_t PING_CHECK_FAIL = 1; 662d43be4eSopenharmony_cistatic const int32_t MAX_TIMES = 60; 672d43be4eSopenharmony_cistatic const int32_t CMD_BUF_SIZE = 10240; 682d43be4eSopenharmony_cistatic const int32_t NET_REGISTER_TIMEOUT_MS = 20000; 692d43be4eSopenharmony_cistatic const int32_t SLEEP_TIME_SECONDS = 3; 702d43be4eSopenharmony_ci 712d43be4eSopenharmony_ciclass TestCallback : public NetManagerStandard::NetConnCallbackStub { 722d43be4eSopenharmony_ci int32_t NetAvailable(sptr<NetManagerStandard::NetHandle> &netHandle) override 732d43be4eSopenharmony_ci { 742d43be4eSopenharmony_ci isCallback_ = true; 752d43be4eSopenharmony_ci std::cout << "TestCallback::NetAvailable" << std::endl; 762d43be4eSopenharmony_ci return 0; 772d43be4eSopenharmony_ci } 782d43be4eSopenharmony_ci 792d43be4eSopenharmony_ci int32_t NetCapabilitiesChange(sptr<NetManagerStandard::NetHandle> &netHandle, 802d43be4eSopenharmony_ci const sptr<NetManagerStandard::NetAllCapabilities> &netAllCap) override 812d43be4eSopenharmony_ci { 822d43be4eSopenharmony_ci isCallback_ = true; 832d43be4eSopenharmony_ci std::cout << "TestCallback::NetCapabilitiesChange" << std::endl; 842d43be4eSopenharmony_ci return 0; 852d43be4eSopenharmony_ci } 862d43be4eSopenharmony_ci 872d43be4eSopenharmony_ci int32_t NetConnectionPropertiesChange( 882d43be4eSopenharmony_ci sptr<NetManagerStandard::NetHandle> &netHandle, const sptr<NetManagerStandard::NetLinkInfo> &info) override 892d43be4eSopenharmony_ci { 902d43be4eSopenharmony_ci isCallback_ = true; 912d43be4eSopenharmony_ci std::cout << "TestCallback::NetConnectionPropertiesChange" << std::endl; 922d43be4eSopenharmony_ci return 0; 932d43be4eSopenharmony_ci } 942d43be4eSopenharmony_ci 952d43be4eSopenharmony_ci int32_t NetLost(sptr<NetManagerStandard::NetHandle> &netHandle) override 962d43be4eSopenharmony_ci { 972d43be4eSopenharmony_ci isCallback_ = true; 982d43be4eSopenharmony_ci std::cout << "TestCallback::NetLost" << std::endl; 992d43be4eSopenharmony_ci return 0; 1002d43be4eSopenharmony_ci } 1012d43be4eSopenharmony_ci 1022d43be4eSopenharmony_ci int32_t NetUnavailable() override 1032d43be4eSopenharmony_ci { 1042d43be4eSopenharmony_ci isCallback_ = true; 1052d43be4eSopenharmony_ci std::cout << "TestCallback::NetUnavailable" << std::endl; 1062d43be4eSopenharmony_ci return 0; 1072d43be4eSopenharmony_ci } 1082d43be4eSopenharmony_ci 1092d43be4eSopenharmony_ci int32_t NetBlockStatusChange(sptr<NetManagerStandard::NetHandle> &netHandle, bool blocked) override 1102d43be4eSopenharmony_ci { 1112d43be4eSopenharmony_ci isCallback_ = true; 1122d43be4eSopenharmony_ci std::cout << "TestCallback::NetBlockStatusChange" << std::endl; 1132d43be4eSopenharmony_ci return 0; 1142d43be4eSopenharmony_ci } 1152d43be4eSopenharmony_ci 1162d43be4eSopenharmony_cipublic: 1172d43be4eSopenharmony_ci bool isCallback_ = false; 1182d43be4eSopenharmony_ci}; 1192d43be4eSopenharmony_ci 1202d43be4eSopenharmony_ciclass CellularDataTest : public testing::Test { 1212d43be4eSopenharmony_cipublic: 1222d43be4eSopenharmony_ci static void SetUpTestCase(); 1232d43be4eSopenharmony_ci static void TearDownTestCase(); 1242d43be4eSopenharmony_ci virtual void SetUp(); 1252d43be4eSopenharmony_ci virtual void TearDown(); 1262d43be4eSopenharmony_ci static bool HasSimCard(const int32_t slotId); 1272d43be4eSopenharmony_ci static int32_t IsCellularDataEnabledTest(bool &dataEnabled); 1282d43be4eSopenharmony_ci static int32_t EnableCellularDataTest(bool enable); 1292d43be4eSopenharmony_ci static int32_t EnableIntelligenceSwitchTest(bool enable); 1302d43be4eSopenharmony_ci static int32_t GetCellularDataStateTest(); 1312d43be4eSopenharmony_ci static int32_t IsCellularDataRoamingEnabledTest(int32_t slotId, bool &dataRoamingEnabled); 1322d43be4eSopenharmony_ci static int32_t EnableCellularDataRoamingTest(int32_t slotId, bool enable); 1332d43be4eSopenharmony_ci static int32_t GetDefaultCellularDataSlotIdTest(); 1342d43be4eSopenharmony_ci static int32_t GetDefaultCellularDataSimIdTest(); 1352d43be4eSopenharmony_ci static int32_t SetDefaultCellularDataSlotIdTest(int32_t slotId); 1362d43be4eSopenharmony_ci static int32_t GetCellularDataFlowTypeTest(); 1372d43be4eSopenharmony_ci static void WaitTestTimeout(const int32_t status); 1382d43be4eSopenharmony_ci static sptr<ICellularDataManager> GetProxy(); 1392d43be4eSopenharmony_ci static string GetCmdResult(); 1402d43be4eSopenharmony_ci static int32_t PingTest(); 1412d43be4eSopenharmony_ci static int32_t HasInternetCapability(int32_t slotId, int32_t cid); 1422d43be4eSopenharmony_ci static int32_t ClearCellularDataConnections(int32_t slotId); 1432d43be4eSopenharmony_ci static int32_t ClearAllConnections(int32_t slotId, DisConnectionReason reason); 1442d43be4eSopenharmony_ci static int32_t GetApnState(int32_t slotId, const std::string &apnTyp); 1452d43be4eSopenharmony_ci static int32_t GetDataRecoveryState(); 1462d43be4eSopenharmony_ci static int32_t GetDataConnApnAttr(int32_t slotId, ApnItem::Attribute &apnAttr); 1472d43be4eSopenharmony_ci static int32_t GetDataConnIpType(int32_t slotId, std::string &ipType); 1482d43be4eSopenharmony_ci static int32_t IsNeedDoRecovery(int32_t slotId, bool needDoRecovery); 1492d43be4eSopenharmony_ci static int32_t InitCellularDataController(int32_t slotId); 1502d43be4eSopenharmony_ci static int32_t GetIntelligenceSwitchStateTest(bool &state); 1512d43be4eSopenharmony_ci static int32_t GetCellularDataSupplierId(int32_t slotId, uint64_t capability, uint32_t &supplierId); 1522d43be4eSopenharmony_ci static int32_t CorrectNetSupplierNoAvailable(int32_t slotid); 1532d43be4eSopenharmony_ci static int32_t GetSupplierRegisterState(uint32_t supplierId, int32_t ®State); 1542d43be4eSopenharmony_ci CellularDataNetAgent &netAgent = CellularDataNetAgent::GetInstance(); 1552d43be4eSopenharmony_ci}; 1562d43be4eSopenharmony_ci 1572d43be4eSopenharmony_cibool CellularDataTest::HasSimCard(const int32_t slotId) 1582d43be4eSopenharmony_ci{ 1592d43be4eSopenharmony_ci bool hasSimCard = false; 1602d43be4eSopenharmony_ci DelayedRefSingleton<CoreServiceClient>::GetInstance().HasSimCard(slotId, hasSimCard); 1612d43be4eSopenharmony_ci return hasSimCard; 1622d43be4eSopenharmony_ci} 1632d43be4eSopenharmony_ci 1642d43be4eSopenharmony_civoid CellularDataTest::TearDownTestCase() 1652d43be4eSopenharmony_ci{ 1662d43be4eSopenharmony_ci if (CoreServiceClient::GetInstance().GetProxy() == nullptr) { 1672d43be4eSopenharmony_ci std::cout << "connect coreService server failed!" << std::endl; 1682d43be4eSopenharmony_ci return; 1692d43be4eSopenharmony_ci } 1702d43be4eSopenharmony_ci DataAccessToken token; 1712d43be4eSopenharmony_ci int32_t slotId = DATA_SLOT_ID_INVALID; 1722d43be4eSopenharmony_ci if (HasSimCard(DEFAULT_SIM_SLOT_ID)) { 1732d43be4eSopenharmony_ci slotId = DEFAULT_SIM_SLOT_ID; 1742d43be4eSopenharmony_ci } else if (HasSimCard(SIM_SLOT_ID_1)) { 1752d43be4eSopenharmony_ci slotId = SIM_SLOT_ID_1; 1762d43be4eSopenharmony_ci } 1772d43be4eSopenharmony_ci if (slotId == DATA_SLOT_ID_INVALID) { 1782d43be4eSopenharmony_ci return; 1792d43be4eSopenharmony_ci } 1802d43be4eSopenharmony_ci // Set the default slot 1812d43be4eSopenharmony_ci int32_t result = CellularDataClient::GetInstance().SetDefaultCellularDataSlotId(slotId); 1822d43be4eSopenharmony_ci if (result != TELEPHONY_ERR_SUCCESS) { 1832d43be4eSopenharmony_ci return; 1842d43be4eSopenharmony_ci } 1852d43be4eSopenharmony_ci int32_t enable = CellularDataClient::GetInstance().EnableCellularData(true); 1862d43be4eSopenharmony_ci ASSERT_TRUE(enable == TELEPHONY_ERR_SUCCESS); 1872d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 1882d43be4eSopenharmony_ci sleep(SLEEP_TIME_SECONDS); 1892d43be4eSopenharmony_ci} 1902d43be4eSopenharmony_ci 1912d43be4eSopenharmony_civoid CellularDataTest::SetUp() {} 1922d43be4eSopenharmony_ci 1932d43be4eSopenharmony_civoid CellularDataTest::TearDown() {} 1942d43be4eSopenharmony_ci 1952d43be4eSopenharmony_civoid CellularDataTest::SetUpTestCase() 1962d43be4eSopenharmony_ci{ 1972d43be4eSopenharmony_ci if (CoreServiceClient::GetInstance().GetProxy() == nullptr) { 1982d43be4eSopenharmony_ci std::cout << "connect coreService server failed!" << std::endl; 1992d43be4eSopenharmony_ci return; 2002d43be4eSopenharmony_ci } 2012d43be4eSopenharmony_ci DataAccessToken token; 2022d43be4eSopenharmony_ci int32_t slotId = DATA_SLOT_ID_INVALID; 2032d43be4eSopenharmony_ci if (HasSimCard(DEFAULT_SIM_SLOT_ID)) { 2042d43be4eSopenharmony_ci slotId = DEFAULT_SIM_SLOT_ID; 2052d43be4eSopenharmony_ci } else if (HasSimCard(SIM_SLOT_ID_1)) { 2062d43be4eSopenharmony_ci slotId = SIM_SLOT_ID_1; 2072d43be4eSopenharmony_ci } 2082d43be4eSopenharmony_ci if (slotId == DATA_SLOT_ID_INVALID) { 2092d43be4eSopenharmony_ci return; 2102d43be4eSopenharmony_ci } 2112d43be4eSopenharmony_ci // Set the default slot 2122d43be4eSopenharmony_ci int32_t result = CellularDataClient::GetInstance().SetDefaultCellularDataSlotId(slotId); 2132d43be4eSopenharmony_ci if (result != TELEPHONY_ERR_SUCCESS) { 2142d43be4eSopenharmony_ci return; 2152d43be4eSopenharmony_ci } 2162d43be4eSopenharmony_ci int32_t enable = CellularDataClient::GetInstance().EnableCellularData(true); 2172d43be4eSopenharmony_ci ASSERT_TRUE(enable == TELEPHONY_ERR_SUCCESS); 2182d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 2192d43be4eSopenharmony_ci} 2202d43be4eSopenharmony_ci 2212d43be4eSopenharmony_civoid CellularDataTest::WaitTestTimeout(const int32_t status) 2222d43be4eSopenharmony_ci{ 2232d43be4eSopenharmony_ci int32_t count = 0; 2242d43be4eSopenharmony_ci while (count < MAX_TIMES) { 2252d43be4eSopenharmony_ci sleep(SLEEP_TIME); 2262d43be4eSopenharmony_ci if (CellularDataClient::GetInstance().GetCellularDataState() == status) { 2272d43be4eSopenharmony_ci return; 2282d43be4eSopenharmony_ci } 2292d43be4eSopenharmony_ci count++; 2302d43be4eSopenharmony_ci } 2312d43be4eSopenharmony_ci} 2322d43be4eSopenharmony_ci 2332d43be4eSopenharmony_cistring CellularDataTest::GetCmdResult() 2342d43be4eSopenharmony_ci{ 2352d43be4eSopenharmony_ci string strCmd = "ping -c3 www.openharmony.cn"; 2362d43be4eSopenharmony_ci char buf[CMD_BUF_SIZE] = { 0 }; 2372d43be4eSopenharmony_ci FILE *pf; 2382d43be4eSopenharmony_ci 2392d43be4eSopenharmony_ci if ((pf = popen(strCmd.c_str(), "r")) == nullptr) { 2402d43be4eSopenharmony_ci return ""; 2412d43be4eSopenharmony_ci } 2422d43be4eSopenharmony_ci string strResult; 2432d43be4eSopenharmony_ci while (fgets(buf, sizeof(buf), pf) != nullptr) { 2442d43be4eSopenharmony_ci strResult += buf; 2452d43be4eSopenharmony_ci } 2462d43be4eSopenharmony_ci pclose(pf); 2472d43be4eSopenharmony_ci unsigned int iSize = strResult.size(); 2482d43be4eSopenharmony_ci if (iSize > 0 && strResult[iSize - 1] == '\n') { 2492d43be4eSopenharmony_ci strResult = strResult.substr(0, iSize - 1); 2502d43be4eSopenharmony_ci } 2512d43be4eSopenharmony_ci return strResult; 2522d43be4eSopenharmony_ci} 2532d43be4eSopenharmony_ci 2542d43be4eSopenharmony_ciint32_t CellularDataTest::PingTest() 2552d43be4eSopenharmony_ci{ 2562d43be4eSopenharmony_ci string strRe = GetCmdResult(); 2572d43be4eSopenharmony_ci std::cout << strRe << std::endl; 2582d43be4eSopenharmony_ci 2592d43be4eSopenharmony_ci // if ping succeed, the result should contains something like: 2602d43be4eSopenharmony_ci // 3 packets transmitted, 3 received, 0% packet loss, time 5440ms 2612d43be4eSopenharmony_ci if (strRe.find("3 packets") != string::npos) { 2622d43be4eSopenharmony_ci return PING_CHECK_SUCCESS; 2632d43be4eSopenharmony_ci } else { 2642d43be4eSopenharmony_ci return PING_CHECK_FAIL; 2652d43be4eSopenharmony_ci } 2662d43be4eSopenharmony_ci} 2672d43be4eSopenharmony_ci 2682d43be4eSopenharmony_ciint32_t CellularDataTest::IsCellularDataRoamingEnabledTest(int32_t slotId, bool &dataRoamingEnabled) 2692d43be4eSopenharmony_ci{ 2702d43be4eSopenharmony_ci return CellularDataClient::GetInstance().IsCellularDataRoamingEnabled(slotId, dataRoamingEnabled); 2712d43be4eSopenharmony_ci} 2722d43be4eSopenharmony_ci 2732d43be4eSopenharmony_ciint32_t CellularDataTest::IsCellularDataEnabledTest(bool &dataEnabled) 2742d43be4eSopenharmony_ci{ 2752d43be4eSopenharmony_ci return CellularDataClient::GetInstance().IsCellularDataEnabled(dataEnabled); 2762d43be4eSopenharmony_ci} 2772d43be4eSopenharmony_ci 2782d43be4eSopenharmony_ciint32_t CellularDataTest::EnableCellularDataTest(bool enable) 2792d43be4eSopenharmony_ci{ 2802d43be4eSopenharmony_ci return CellularDataClient::GetInstance().EnableCellularData(enable); 2812d43be4eSopenharmony_ci} 2822d43be4eSopenharmony_ci 2832d43be4eSopenharmony_ciint32_t CellularDataTest::EnableIntelligenceSwitchTest(bool enable) 2842d43be4eSopenharmony_ci{ 2852d43be4eSopenharmony_ci return CellularDataClient::GetInstance().EnableIntelligenceSwitch(enable); 2862d43be4eSopenharmony_ci} 2872d43be4eSopenharmony_ci 2882d43be4eSopenharmony_ciint32_t CellularDataTest::GetCellularDataStateTest() 2892d43be4eSopenharmony_ci{ 2902d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetCellularDataState(); 2912d43be4eSopenharmony_ci} 2922d43be4eSopenharmony_ci 2932d43be4eSopenharmony_ciint32_t CellularDataTest::GetIntelligenceSwitchStateTest(bool &state) 2942d43be4eSopenharmony_ci{ 2952d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetIntelligenceSwitchState(state); 2962d43be4eSopenharmony_ci} 2972d43be4eSopenharmony_ci 2982d43be4eSopenharmony_ciint32_t CellularDataTest::EnableCellularDataRoamingTest(int32_t slotId, bool enable) 2992d43be4eSopenharmony_ci{ 3002d43be4eSopenharmony_ci return CellularDataClient::GetInstance().EnableCellularDataRoaming(slotId, enable); 3012d43be4eSopenharmony_ci} 3022d43be4eSopenharmony_ci 3032d43be4eSopenharmony_ciint32_t CellularDataTest::GetDefaultCellularDataSlotIdTest() 3042d43be4eSopenharmony_ci{ 3052d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetDefaultCellularDataSlotId(); 3062d43be4eSopenharmony_ci} 3072d43be4eSopenharmony_ci 3082d43be4eSopenharmony_ciint32_t CellularDataTest::GetDefaultCellularDataSimIdTest() 3092d43be4eSopenharmony_ci{ 3102d43be4eSopenharmony_ci int32_t simId = 0; 3112d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetDefaultCellularDataSimId(simId); 3122d43be4eSopenharmony_ci} 3132d43be4eSopenharmony_ci 3142d43be4eSopenharmony_ciint32_t CellularDataTest::SetDefaultCellularDataSlotIdTest(int32_t slotId) 3152d43be4eSopenharmony_ci{ 3162d43be4eSopenharmony_ci return CellularDataClient::GetInstance().SetDefaultCellularDataSlotId(slotId); 3172d43be4eSopenharmony_ci} 3182d43be4eSopenharmony_ci 3192d43be4eSopenharmony_ciint32_t CellularDataTest::GetCellularDataFlowTypeTest() 3202d43be4eSopenharmony_ci{ 3212d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetCellularDataFlowType(); 3222d43be4eSopenharmony_ci} 3232d43be4eSopenharmony_ci 3242d43be4eSopenharmony_ciint32_t CellularDataTest::HasInternetCapability(int32_t slotId, int32_t cid) 3252d43be4eSopenharmony_ci{ 3262d43be4eSopenharmony_ci CellularDataClient::GetInstance().IsConnect(); 3272d43be4eSopenharmony_ci return CellularDataClient::GetInstance().HasInternetCapability(slotId, cid); 3282d43be4eSopenharmony_ci} 3292d43be4eSopenharmony_ci 3302d43be4eSopenharmony_ciint32_t CellularDataTest::ClearCellularDataConnections(int32_t slotId) 3312d43be4eSopenharmony_ci{ 3322d43be4eSopenharmony_ci CellularDataClient::GetInstance().IsConnect(); 3332d43be4eSopenharmony_ci return CellularDataClient::GetInstance().ClearCellularDataConnections(slotId); 3342d43be4eSopenharmony_ci} 3352d43be4eSopenharmony_ci 3362d43be4eSopenharmony_ciint32_t CellularDataTest::ClearAllConnections(int32_t slotId, DisConnectionReason reason) 3372d43be4eSopenharmony_ci{ 3382d43be4eSopenharmony_ci return CellularDataClient::GetInstance().ClearAllConnections(slotId, reason); 3392d43be4eSopenharmony_ci} 3402d43be4eSopenharmony_ci 3412d43be4eSopenharmony_ciint32_t CellularDataTest::GetApnState(int32_t slotId, const std::string &apnTyp) 3422d43be4eSopenharmony_ci{ 3432d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetApnState(slotId, apnTyp); 3442d43be4eSopenharmony_ci} 3452d43be4eSopenharmony_ci 3462d43be4eSopenharmony_ciint32_t CellularDataTest::GetDataRecoveryState() 3472d43be4eSopenharmony_ci{ 3482d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetDataRecoveryState(); 3492d43be4eSopenharmony_ci} 3502d43be4eSopenharmony_ci 3512d43be4eSopenharmony_ciint32_t CellularDataTest::GetDataConnApnAttr(int32_t slotId, ApnItem::Attribute &apnAttr) 3522d43be4eSopenharmony_ci{ 3532d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetDataConnApnAttr(slotId, apnAttr); 3542d43be4eSopenharmony_ci} 3552d43be4eSopenharmony_ci 3562d43be4eSopenharmony_ciint32_t CellularDataTest::GetDataConnIpType(int32_t slotId, std::string &ipType) 3572d43be4eSopenharmony_ci{ 3582d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetDataConnIpType(slotId, ipType); 3592d43be4eSopenharmony_ci} 3602d43be4eSopenharmony_ci 3612d43be4eSopenharmony_ciint32_t CellularDataTest::IsNeedDoRecovery(int32_t slotId, bool needDoRecovery) 3622d43be4eSopenharmony_ci{ 3632d43be4eSopenharmony_ci return CellularDataClient::GetInstance().IsNeedDoRecovery(slotId, needDoRecovery); 3642d43be4eSopenharmony_ci} 3652d43be4eSopenharmony_ci 3662d43be4eSopenharmony_ciint32_t CellularDataTest::InitCellularDataController(int32_t slotId) 3672d43be4eSopenharmony_ci{ 3682d43be4eSopenharmony_ci return CellularDataClient::GetInstance().InitCellularDataController(slotId); 3692d43be4eSopenharmony_ci} 3702d43be4eSopenharmony_ci 3712d43be4eSopenharmony_ciint32_t CellularDataTest::GetCellularDataSupplierId(int32_t slotId, uint64_t capability, uint32_t &supplierId) 3722d43be4eSopenharmony_ci{ 3732d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetCellularDataSupplierId(slotId, capability, supplierId); 3742d43be4eSopenharmony_ci} 3752d43be4eSopenharmony_ci 3762d43be4eSopenharmony_ciint32_t CellularDataTest::CorrectNetSupplierNoAvailable(int32_t slotId) 3772d43be4eSopenharmony_ci{ 3782d43be4eSopenharmony_ci return CellularDataClient::GetInstance().CorrectNetSupplierNoAvailable(slotId); 3792d43be4eSopenharmony_ci} 3802d43be4eSopenharmony_ci 3812d43be4eSopenharmony_ciint32_t CellularDataTest::GetSupplierRegisterState(uint32_t supplierId, int32_t ®State) 3822d43be4eSopenharmony_ci{ 3832d43be4eSopenharmony_ci return CellularDataClient::GetInstance().GetSupplierRegisterState(supplierId, regState); 3842d43be4eSopenharmony_ci} 3852d43be4eSopenharmony_ci#ifndef TEL_TEST_UNSUPPORT 3862d43be4eSopenharmony_ci/** 3872d43be4eSopenharmony_ci * @tc.number IsCellularDataEnabled_Test 3882d43be4eSopenharmony_ci * @tc.name Test cellular data switch status(enabled or disabled) 3892d43be4eSopenharmony_ci * @tc.desc Function test 3902d43be4eSopenharmony_ci */ 3912d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, IsCellularDataEnabled_Test, TestSize.Level1) 3922d43be4eSopenharmony_ci{ 3932d43be4eSopenharmony_ci DataAccessToken token; 3942d43be4eSopenharmony_ci bool dataEnabled = false; 3952d43be4eSopenharmony_ci CellularDataTest::IsCellularDataEnabledTest(dataEnabled); 3962d43be4eSopenharmony_ci ASSERT_TRUE(dataEnabled >= static_cast<int32_t>(DataSwitchCode::CELLULAR_DATA_DISABLED)); 3972d43be4eSopenharmony_ci} 3982d43be4eSopenharmony_ci 3992d43be4eSopenharmony_ci/** 4002d43be4eSopenharmony_ci * @tc.number DefaultCellularDataSlotId_Test 4012d43be4eSopenharmony_ci * @tc.name Test set default data card slot 4022d43be4eSopenharmony_ci * @tc.desc Function test 4032d43be4eSopenharmony_ci */ 4042d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DefaultCellularDataSlotId_Test, TestSize.Level2) 4052d43be4eSopenharmony_ci{ 4062d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 4072d43be4eSopenharmony_ci return; 4082d43be4eSopenharmony_ci } 4092d43be4eSopenharmony_ci DataAccessToken token; 4102d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetDefaultCellularDataSlotIdTest(); 4112d43be4eSopenharmony_ci if (result < DEFAULT_SIM_SLOT_ID_REMOVE) { 4122d43be4eSopenharmony_ci return; 4132d43be4eSopenharmony_ci } 4142d43be4eSopenharmony_ci result = CellularDataTest::SetDefaultCellularDataSlotIdTest(DEFAULT_SIM_SLOT_ID); 4152d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 4162d43be4eSopenharmony_ci // Multiple cards will need to be optimized again 4172d43be4eSopenharmony_ci result = CellularDataTest::SetDefaultCellularDataSlotIdTest(DEFAULT_SIM_SLOT_ID - 1); 4182d43be4eSopenharmony_ci ASSERT_TRUE(result != TELEPHONY_ERR_SUCCESS); 4192d43be4eSopenharmony_ci result = CellularDataTest::SetDefaultCellularDataSlotIdTest(DATA_SLOT_ID_INVALID); 4202d43be4eSopenharmony_ci ASSERT_TRUE(result != TELEPHONY_ERR_SUCCESS); 4212d43be4eSopenharmony_ci} 4222d43be4eSopenharmony_ci 4232d43be4eSopenharmony_ci/** 4242d43be4eSopenharmony_ci * @tc.number GetDefaultCellularDataSimId 4252d43be4eSopenharmony_ci * @tc.name Test get default data sim id 4262d43be4eSopenharmony_ci * @tc.desc Function test 4272d43be4eSopenharmony_ci */ 4282d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DefaultCellularDataSimId_Test, TestSize.Level2) 4292d43be4eSopenharmony_ci{ 4302d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 4312d43be4eSopenharmony_ci return; 4322d43be4eSopenharmony_ci } 4332d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetDefaultCellularDataSimIdTest(); 4342d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 4352d43be4eSopenharmony_ci} 4362d43be4eSopenharmony_ci 4372d43be4eSopenharmony_ci/** 4382d43be4eSopenharmony_ci * @tc.number DefaultCellularDataSlotId_Test_01 4392d43be4eSopenharmony_ci * @tc.name Test set default data card slot 4402d43be4eSopenharmony_ci * @tc.desc Function test 4412d43be4eSopenharmony_ci */ 4422d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DefaultCellularDataSlotId_Test_01, TestSize.Level2) 4432d43be4eSopenharmony_ci{ 4442d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 4452d43be4eSopenharmony_ci return; 4462d43be4eSopenharmony_ci } 4472d43be4eSopenharmony_ci DataAccessToken token; 4482d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetDefaultCellularDataSlotIdTest(); 4492d43be4eSopenharmony_ci if (result < DEFAULT_SIM_SLOT_ID_REMOVE) { 4502d43be4eSopenharmony_ci return; 4512d43be4eSopenharmony_ci } 4522d43be4eSopenharmony_ci result = CellularDataTest::SetDefaultCellularDataSlotIdTest(SIM_SLOT_ID_1); 4532d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 4542d43be4eSopenharmony_ci result = CellularDataTest::SetDefaultCellularDataSlotIdTest(DATA_SLOT_ID_INVALID); 4552d43be4eSopenharmony_ci ASSERT_TRUE(result != TELEPHONY_ERR_SUCCESS); 4562d43be4eSopenharmony_ci} 4572d43be4eSopenharmony_ci 4582d43be4eSopenharmony_ci/** 4592d43be4eSopenharmony_ci * @tc.number EnableCellularData_Test_01 4602d43be4eSopenharmony_ci * @tc.name Test cellular data switch 4612d43be4eSopenharmony_ci * @tc.desc Function test 4622d43be4eSopenharmony_ci */ 4632d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, EnableCellularData_Test_01, TestSize.Level2) 4642d43be4eSopenharmony_ci{ 4652d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 4662d43be4eSopenharmony_ci return; 4672d43be4eSopenharmony_ci } 4682d43be4eSopenharmony_ci DataAccessToken token; 4692d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(DEFAULT_SIM_SLOT_ID); 4702d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 4712d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 4722d43be4eSopenharmony_ci sleep(SLEEP_TIME); 4732d43be4eSopenharmony_ci int32_t result = CellularDataTest::EnableCellularDataTest(true); 4742d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 4752d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 4762d43be4eSopenharmony_ci sleep(SLEEP_TIME); 4772d43be4eSopenharmony_ci std::cout << "Cellular Data Connected Ping..." << std::endl; 4782d43be4eSopenharmony_ci int32_t pingResult = CellularDataTest::PingTest(); 4792d43be4eSopenharmony_ci ASSERT_TRUE(pingResult >= PING_CHECK_SUCCESS); 4802d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 4812d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 4822d43be4eSopenharmony_ci sleep(SLEEP_TIME); 4832d43be4eSopenharmony_ci std::cout << "Cellular Data Disconnected Ping..." << std::endl; 4842d43be4eSopenharmony_ci pingResult = CellularDataTest::PingTest(); 4852d43be4eSopenharmony_ci ASSERT_TRUE(pingResult == PING_CHECK_FAIL); 4862d43be4eSopenharmony_ci} 4872d43be4eSopenharmony_ci 4882d43be4eSopenharmony_ci/** 4892d43be4eSopenharmony_ci * @tc.number EnableCellularData_Test_02 4902d43be4eSopenharmony_ci * @tc.name Test cellular data switch 4912d43be4eSopenharmony_ci * @tc.desc Function test 4922d43be4eSopenharmony_ci */ 4932d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, EnableCellularData_Test_02, TestSize.Level2) 4942d43be4eSopenharmony_ci{ 4952d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 4962d43be4eSopenharmony_ci return; 4972d43be4eSopenharmony_ci } 4982d43be4eSopenharmony_ci DataAccessToken token; 4992d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(SIM_SLOT_ID_1); 5002d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 5012d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 5022d43be4eSopenharmony_ci sleep(SLEEP_TIME); 5032d43be4eSopenharmony_ci int32_t result = CellularDataTest::EnableCellularDataTest(true); 5042d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 5052d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 5062d43be4eSopenharmony_ci sleep(SLEEP_TIME); 5072d43be4eSopenharmony_ci std::cout << "Cellular Data Connected Ping..." << std::endl; 5082d43be4eSopenharmony_ci int32_t pingResult = CellularDataTest::PingTest(); 5092d43be4eSopenharmony_ci ASSERT_TRUE(pingResult >= PING_CHECK_SUCCESS); 5102d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 5112d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 5122d43be4eSopenharmony_ci sleep(SLEEP_TIME); 5132d43be4eSopenharmony_ci std::cout << "Cellular Data Disconnected Ping..." << std::endl; 5142d43be4eSopenharmony_ci pingResult = CellularDataTest::PingTest(); 5152d43be4eSopenharmony_ci ASSERT_TRUE(pingResult == PING_CHECK_FAIL); 5162d43be4eSopenharmony_ci} 5172d43be4eSopenharmony_ci 5182d43be4eSopenharmony_ci/** 5192d43be4eSopenharmony_ci * @tc.number DataRoamingState_ValidSlot_Test_01 5202d43be4eSopenharmony_ci * @tc.name Test the cellular data roaming switch with a slot id 5212d43be4eSopenharmony_ci * @tc.desc Function test 5222d43be4eSopenharmony_ci */ 5232d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DataRoamingState_ValidSlot_Test_01, TestSize.Level3) 5242d43be4eSopenharmony_ci{ 5252d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 5262d43be4eSopenharmony_ci return; 5272d43be4eSopenharmony_ci } 5282d43be4eSopenharmony_ci DataAccessToken token; 5292d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(DEFAULT_SIM_SLOT_ID); 5302d43be4eSopenharmony_ci int32_t disabled = CellularDataTest::EnableCellularDataTest(false); 5312d43be4eSopenharmony_ci ASSERT_TRUE(disabled == TELEPHONY_ERR_SUCCESS); 5322d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 5332d43be4eSopenharmony_ci 5342d43be4eSopenharmony_ci // slot0 enable data roaming 5352d43be4eSopenharmony_ci int32_t enabled = CellularDataTest::EnableCellularDataRoamingTest(DEFAULT_SIM_SLOT_ID, true); 5362d43be4eSopenharmony_ci ASSERT_TRUE(enabled == TELEPHONY_ERR_SUCCESS); 5372d43be4eSopenharmony_ci bool dataRoamingEnabled = false; 5382d43be4eSopenharmony_ci CellularDataTest::IsCellularDataRoamingEnabledTest(DEFAULT_SIM_SLOT_ID, dataRoamingEnabled); 5392d43be4eSopenharmony_ci ASSERT_TRUE(dataRoamingEnabled); 5402d43be4eSopenharmony_ci // slot0 close 5412d43be4eSopenharmony_ci int32_t enable = CellularDataTest::EnableCellularDataRoamingTest(DEFAULT_SIM_SLOT_ID, false); 5422d43be4eSopenharmony_ci ASSERT_TRUE(enable == TELEPHONY_ERR_SUCCESS); 5432d43be4eSopenharmony_ci CellularDataTest::IsCellularDataRoamingEnabledTest(DEFAULT_SIM_SLOT_ID, dataRoamingEnabled); 5442d43be4eSopenharmony_ci ASSERT_TRUE(!dataRoamingEnabled); 5452d43be4eSopenharmony_ci 5462d43be4eSopenharmony_ci // At present, multiple card problems, the subsequent need to continue to deal with 5472d43be4eSopenharmony_ci enable = CellularDataTest::EnableCellularDataRoamingTest(DATA_SLOT_ID_INVALID, true); 5482d43be4eSopenharmony_ci ASSERT_TRUE(enable != TELEPHONY_ERR_SUCCESS); 5492d43be4eSopenharmony_ci int32_t result = CellularDataTest::IsCellularDataRoamingEnabledTest(DATA_SLOT_ID_INVALID, dataRoamingEnabled); 5502d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 5512d43be4eSopenharmony_ci enable = CellularDataTest::EnableCellularDataRoamingTest(DATA_SLOT_ID_INVALID, false); 5522d43be4eSopenharmony_ci // At present, multiple card problems, the subsequent need to continue to deal with 5532d43be4eSopenharmony_ci ASSERT_TRUE(enable != TELEPHONY_ERR_SUCCESS); 5542d43be4eSopenharmony_ci result = CellularDataTest::IsCellularDataRoamingEnabledTest(DATA_SLOT_ID_INVALID, dataRoamingEnabled); 5552d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 5562d43be4eSopenharmony_ci} 5572d43be4eSopenharmony_ci 5582d43be4eSopenharmony_ci/** 5592d43be4eSopenharmony_ci * @tc.number DataRoamingState_ValidSlot_Test_02 5602d43be4eSopenharmony_ci * @tc.name Test the cellular data roaming switch with a slot id 5612d43be4eSopenharmony_ci * @tc.desc Function test 5622d43be4eSopenharmony_ci */ 5632d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DataRoamingState_ValidSlot_Test_02, TestSize.Level3) 5642d43be4eSopenharmony_ci{ 5652d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 5662d43be4eSopenharmony_ci return; 5672d43be4eSopenharmony_ci } 5682d43be4eSopenharmony_ci DataAccessToken token; 5692d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(SIM_SLOT_ID_1); 5702d43be4eSopenharmony_ci int32_t disabled = CellularDataTest::EnableCellularDataTest(false); 5712d43be4eSopenharmony_ci ASSERT_TRUE(disabled == TELEPHONY_ERR_SUCCESS); 5722d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 5732d43be4eSopenharmony_ci 5742d43be4eSopenharmony_ci // slot1 enable data roaming 5752d43be4eSopenharmony_ci int32_t enabled = CellularDataTest::EnableCellularDataRoamingTest(SIM_SLOT_ID_1, true); 5762d43be4eSopenharmony_ci ASSERT_TRUE(enabled == TELEPHONY_ERR_SUCCESS); 5772d43be4eSopenharmony_ci bool dataRoamingEnabled = false; 5782d43be4eSopenharmony_ci CellularDataTest::IsCellularDataRoamingEnabledTest(SIM_SLOT_ID_1, dataRoamingEnabled); 5792d43be4eSopenharmony_ci ASSERT_TRUE(dataRoamingEnabled); 5802d43be4eSopenharmony_ci // slot1 close 5812d43be4eSopenharmony_ci int32_t enable = CellularDataTest::EnableCellularDataRoamingTest(SIM_SLOT_ID_1, false); 5822d43be4eSopenharmony_ci ASSERT_TRUE(enable == TELEPHONY_ERR_SUCCESS); 5832d43be4eSopenharmony_ci CellularDataTest::IsCellularDataRoamingEnabledTest(SIM_SLOT_ID_1, dataRoamingEnabled); 5842d43be4eSopenharmony_ci ASSERT_TRUE(!dataRoamingEnabled); 5852d43be4eSopenharmony_ci 5862d43be4eSopenharmony_ci // At present, multiple card problems, the subsequent need to continue to deal with 5872d43be4eSopenharmony_ci enable = CellularDataTest::EnableCellularDataRoamingTest(DATA_SLOT_ID_INVALID, true); 5882d43be4eSopenharmony_ci ASSERT_TRUE(enable != TELEPHONY_ERR_SUCCESS); 5892d43be4eSopenharmony_ci int32_t result = CellularDataTest::IsCellularDataRoamingEnabledTest(DATA_SLOT_ID_INVALID, dataRoamingEnabled); 5902d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 5912d43be4eSopenharmony_ci enable = CellularDataTest::EnableCellularDataRoamingTest(DATA_SLOT_ID_INVALID, false); 5922d43be4eSopenharmony_ci // At present, multiple card problems, the subsequent need to continue to deal with 5932d43be4eSopenharmony_ci ASSERT_TRUE(enable != TELEPHONY_ERR_SUCCESS); 5942d43be4eSopenharmony_ci result = CellularDataTest::IsCellularDataRoamingEnabledTest(DATA_SLOT_ID_INVALID, dataRoamingEnabled); 5952d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 5962d43be4eSopenharmony_ci} 5972d43be4eSopenharmony_ci 5982d43be4eSopenharmony_ci/** 5992d43be4eSopenharmony_ci * @tc.number EnableCellularDataRoaming_ValidSlot_Test_01 6002d43be4eSopenharmony_ci * @tc.name Test the cellular data roaming switch with a slot id 6012d43be4eSopenharmony_ci * @tc.desc Function test 6022d43be4eSopenharmony_ci */ 6032d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, EnableCellularDataRoaming_ValidSlot_Test_01, TestSize.Level3) 6042d43be4eSopenharmony_ci{ 6052d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 6062d43be4eSopenharmony_ci return; 6072d43be4eSopenharmony_ci } 6082d43be4eSopenharmony_ci DataAccessToken token; 6092d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(DEFAULT_SIM_SLOT_ID); 6102d43be4eSopenharmony_ci int32_t disabled = CellularDataTest::EnableCellularDataTest(false); 6112d43be4eSopenharmony_ci ASSERT_TRUE(disabled == TELEPHONY_ERR_SUCCESS); 6122d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 6132d43be4eSopenharmony_ci 6142d43be4eSopenharmony_ci bool dataRoamingEnabled = false; 6152d43be4eSopenharmony_ci CellularDataTest::IsCellularDataRoamingEnabledTest(DEFAULT_SIM_SLOT_ID, dataRoamingEnabled); 6162d43be4eSopenharmony_ci if (dataRoamingEnabled) { 6172d43be4eSopenharmony_ci int32_t result = CellularDataTest::EnableCellularDataRoamingTest(DEFAULT_SIM_SLOT_ID, false); 6182d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 6192d43be4eSopenharmony_ci } else { 6202d43be4eSopenharmony_ci int32_t result = CellularDataTest::EnableCellularDataRoamingTest(DEFAULT_SIM_SLOT_ID, true); 6212d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 6222d43be4eSopenharmony_ci } 6232d43be4eSopenharmony_ci // At present, multiple card problems, the subsequent need to continue to deal with 6242d43be4eSopenharmony_ci CellularDataTest::IsCellularDataRoamingEnabledTest(DEFAULT_SIM_SLOT_ID, dataRoamingEnabled); 6252d43be4eSopenharmony_ci if (dataRoamingEnabled) { 6262d43be4eSopenharmony_ci int32_t result = CellularDataTest::EnableCellularDataRoamingTest(DATA_SLOT_ID_INVALID, false); 6272d43be4eSopenharmony_ci ASSERT_TRUE(result != TELEPHONY_ERR_SUCCESS); 6282d43be4eSopenharmony_ci } else { 6292d43be4eSopenharmony_ci int32_t result = CellularDataTest::EnableCellularDataRoamingTest(DATA_SLOT_ID_INVALID, true); 6302d43be4eSopenharmony_ci ASSERT_TRUE(result != TELEPHONY_ERR_SUCCESS); 6312d43be4eSopenharmony_ci } 6322d43be4eSopenharmony_ci} 6332d43be4eSopenharmony_ci 6342d43be4eSopenharmony_ci/** 6352d43be4eSopenharmony_ci * @tc.number EnableCellularDataRoaming_ValidSlot_Test_02 6362d43be4eSopenharmony_ci * @tc.name Test the cellular data roaming switch with a slot id 6372d43be4eSopenharmony_ci * @tc.desc Function test 6382d43be4eSopenharmony_ci */ 6392d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, EnableCellularDataRoaming_ValidSlot_Test_02, TestSize.Level3) 6402d43be4eSopenharmony_ci{ 6412d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 6422d43be4eSopenharmony_ci return; 6432d43be4eSopenharmony_ci } 6442d43be4eSopenharmony_ci DataAccessToken token; 6452d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(SIM_SLOT_ID_1); 6462d43be4eSopenharmony_ci int32_t disabled = CellularDataTest::EnableCellularDataTest(false); 6472d43be4eSopenharmony_ci ASSERT_TRUE(disabled == TELEPHONY_ERR_SUCCESS); 6482d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 6492d43be4eSopenharmony_ci 6502d43be4eSopenharmony_ci bool dataRoamingEnabled = false; 6512d43be4eSopenharmony_ci CellularDataTest::IsCellularDataRoamingEnabledTest(SIM_SLOT_ID_1, dataRoamingEnabled); 6522d43be4eSopenharmony_ci if (dataRoamingEnabled) { 6532d43be4eSopenharmony_ci int32_t result = CellularDataTest::EnableCellularDataRoamingTest(SIM_SLOT_ID_1, false); 6542d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 6552d43be4eSopenharmony_ci } else { 6562d43be4eSopenharmony_ci int32_t result = CellularDataTest::EnableCellularDataRoamingTest(SIM_SLOT_ID_1, true); 6572d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 6582d43be4eSopenharmony_ci } 6592d43be4eSopenharmony_ci // At present, multiple card problems, the subsequent need to continue to deal with 6602d43be4eSopenharmony_ci CellularDataTest::IsCellularDataRoamingEnabledTest(SIM_SLOT_ID_1, dataRoamingEnabled); 6612d43be4eSopenharmony_ci if (dataRoamingEnabled) { 6622d43be4eSopenharmony_ci int32_t result = CellularDataTest::EnableCellularDataRoamingTest(DATA_SLOT_ID_INVALID, false); 6632d43be4eSopenharmony_ci ASSERT_TRUE(result != TELEPHONY_ERR_SUCCESS); 6642d43be4eSopenharmony_ci } else { 6652d43be4eSopenharmony_ci int32_t result = CellularDataTest::EnableCellularDataRoamingTest(DATA_SLOT_ID_INVALID, true); 6662d43be4eSopenharmony_ci ASSERT_TRUE(result != TELEPHONY_ERR_SUCCESS); 6672d43be4eSopenharmony_ci } 6682d43be4eSopenharmony_ci} 6692d43be4eSopenharmony_ci 6702d43be4eSopenharmony_ci/** 6712d43be4eSopenharmony_ci * @tc.number GetCellularDataState_ValidityTest_01 6722d43be4eSopenharmony_ci * @tc.name Test the GetCellularDataState function 6732d43be4eSopenharmony_ci * @tc.desc Function test 6742d43be4eSopenharmony_ci */ 6752d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetCellularDataState_ValidityTest_01, TestSize.Level3) 6762d43be4eSopenharmony_ci{ 6772d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 6782d43be4eSopenharmony_ci return; 6792d43be4eSopenharmony_ci } 6802d43be4eSopenharmony_ci DataAccessToken token; 6812d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(DEFAULT_SIM_SLOT_ID); 6822d43be4eSopenharmony_ci bool dataEnabled = false; 6832d43be4eSopenharmony_ci CellularDataTest::IsCellularDataEnabledTest(dataEnabled); 6842d43be4eSopenharmony_ci if (dataEnabled) { 6852d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 6862d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 6872d43be4eSopenharmony_ci sleep(SLEEP_TIME); 6882d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(true); 6892d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 6902d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetCellularDataStateTest(); 6912d43be4eSopenharmony_ci ASSERT_TRUE(result == static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 6922d43be4eSopenharmony_ci } else { 6932d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(true); 6942d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 6952d43be4eSopenharmony_ci sleep(SLEEP_TIME); 6962d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 6972d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 6982d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetCellularDataStateTest(); 6992d43be4eSopenharmony_ci ASSERT_TRUE(result == static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 7002d43be4eSopenharmony_ci } 7012d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 7022d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 7032d43be4eSopenharmony_ci} 7042d43be4eSopenharmony_ci 7052d43be4eSopenharmony_ci/** 7062d43be4eSopenharmony_ci * @tc.number GetCellularDataState_ValidityTest_02 7072d43be4eSopenharmony_ci * @tc.name Test the GetCellularDataState function 7082d43be4eSopenharmony_ci * @tc.desc Function test 7092d43be4eSopenharmony_ci */ 7102d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetCellularDataState_ValidityTest_02, TestSize.Level3) 7112d43be4eSopenharmony_ci{ 7122d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 7132d43be4eSopenharmony_ci return; 7142d43be4eSopenharmony_ci } 7152d43be4eSopenharmony_ci DataAccessToken token; 7162d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(SIM_SLOT_ID_1); 7172d43be4eSopenharmony_ci bool dataEnabled = false; 7182d43be4eSopenharmony_ci CellularDataTest::IsCellularDataEnabledTest(dataEnabled); 7192d43be4eSopenharmony_ci if (dataEnabled) { 7202d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 7212d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 7222d43be4eSopenharmony_ci sleep(SLEEP_TIME); 7232d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(true); 7242d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 7252d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetCellularDataStateTest(); 7262d43be4eSopenharmony_ci ASSERT_TRUE(result == static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 7272d43be4eSopenharmony_ci } else { 7282d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(true); 7292d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 7302d43be4eSopenharmony_ci sleep(SLEEP_TIME); 7312d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 7322d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 7332d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetCellularDataStateTest(); 7342d43be4eSopenharmony_ci ASSERT_TRUE(result == static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 7352d43be4eSopenharmony_ci } 7362d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 7372d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 7382d43be4eSopenharmony_ci} 7392d43be4eSopenharmony_ci 7402d43be4eSopenharmony_ci/** 7412d43be4eSopenharmony_ci * @tc.number DataRoamingState_InValidSlot_Test_01 7422d43be4eSopenharmony_ci * @tc.name Test the EnableCellularDataRoaming function with a invalid slot id 7432d43be4eSopenharmony_ci * @tc.desc Function test 7442d43be4eSopenharmony_ci */ 7452d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DataRoamingState_InValidSlot_Test_01, TestSize.Level3) 7462d43be4eSopenharmony_ci{ 7472d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 7482d43be4eSopenharmony_ci return; 7492d43be4eSopenharmony_ci } 7502d43be4eSopenharmony_ci DataAccessToken token; 7512d43be4eSopenharmony_ci // invalid slot turn on data roaming 7522d43be4eSopenharmony_ci int32_t enable = CellularDataTest::EnableCellularDataRoamingTest(DEFAULT_SIM_SLOT_ID - 1, true); 7532d43be4eSopenharmony_ci ASSERT_TRUE(enable != TELEPHONY_ERR_SUCCESS); 7542d43be4eSopenharmony_ci bool dataRoamingEnabled = false; 7552d43be4eSopenharmony_ci int32_t result = CellularDataTest::IsCellularDataRoamingEnabledTest(DEFAULT_SIM_SLOT_ID - 1, dataRoamingEnabled); 7562d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 7572d43be4eSopenharmony_ci enable = CellularDataTest::EnableCellularDataRoamingTest(DATA_SLOT_ID_INVALID, true); 7582d43be4eSopenharmony_ci ASSERT_TRUE(enable != TELEPHONY_ERR_SUCCESS); 7592d43be4eSopenharmony_ci result = CellularDataTest::IsCellularDataRoamingEnabledTest(DATA_SLOT_ID_INVALID, dataRoamingEnabled); 7602d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 7612d43be4eSopenharmony_ci // invalid slot disable roaming 7622d43be4eSopenharmony_ci enable = CellularDataTest::EnableCellularDataRoamingTest(DEFAULT_SIM_SLOT_ID - 1, false); 7632d43be4eSopenharmony_ci ASSERT_TRUE(enable != TELEPHONY_ERR_SUCCESS); 7642d43be4eSopenharmony_ci result = CellularDataTest::IsCellularDataRoamingEnabledTest(DEFAULT_SIM_SLOT_ID - 1, dataRoamingEnabled); 7652d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 7662d43be4eSopenharmony_ci enable = CellularDataTest::EnableCellularDataRoamingTest(DATA_SLOT_ID_INVALID, false); 7672d43be4eSopenharmony_ci ASSERT_TRUE(enable != TELEPHONY_ERR_SUCCESS); 7682d43be4eSopenharmony_ci result = CellularDataTest::IsCellularDataRoamingEnabledTest(DATA_SLOT_ID_INVALID, dataRoamingEnabled); 7692d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 7702d43be4eSopenharmony_ci} 7712d43be4eSopenharmony_ci 7722d43be4eSopenharmony_ci/** 7732d43be4eSopenharmony_ci * @tc.number DataFlowType_Test_01 7742d43be4eSopenharmony_ci * @tc.name Test the GetCellularDataFlowType function 7752d43be4eSopenharmony_ci * @tc.desc Function test 7762d43be4eSopenharmony_ci */ 7772d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DataFlowType_Test_01, TestSize.Level3) 7782d43be4eSopenharmony_ci{ 7792d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 7802d43be4eSopenharmony_ci return; 7812d43be4eSopenharmony_ci } 7822d43be4eSopenharmony_ci DataAccessToken token; 7832d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(DEFAULT_SIM_SLOT_ID); 7842d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 7852d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 7862d43be4eSopenharmony_ci sleep(SLEEP_TIME); 7872d43be4eSopenharmony_ci 7882d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(true); 7892d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 7902d43be4eSopenharmony_ci sleep(SLEEP_TIME); 7912d43be4eSopenharmony_ci std::cout << "Cellular Data Connected Ping..." << std::endl; 7922d43be4eSopenharmony_ci int32_t pingResult = CellularDataTest::PingTest(); 7932d43be4eSopenharmony_ci ASSERT_TRUE(pingResult >= PING_CHECK_SUCCESS); 7942d43be4eSopenharmony_ci int32_t dataFlowType = CellularDataTest::GetCellularDataFlowTypeTest(); 7952d43be4eSopenharmony_ci ASSERT_TRUE(dataFlowType >= 0); 7962d43be4eSopenharmony_ci 7972d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 7982d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 7992d43be4eSopenharmony_ci sleep(SLEEP_TIME); 8002d43be4eSopenharmony_ci std::cout << "Cellular Data Disconnected Ping..." << std::endl; 8012d43be4eSopenharmony_ci pingResult = CellularDataTest::PingTest(); 8022d43be4eSopenharmony_ci ASSERT_TRUE(pingResult == PING_CHECK_FAIL); 8032d43be4eSopenharmony_ci dataFlowType = CellularDataTest::GetCellularDataFlowTypeTest(); 8042d43be4eSopenharmony_ci ASSERT_TRUE(dataFlowType == 0); 8052d43be4eSopenharmony_ci} 8062d43be4eSopenharmony_ci 8072d43be4eSopenharmony_ci/** 8082d43be4eSopenharmony_ci * @tc.number DataFlowType_Test_02 8092d43be4eSopenharmony_ci * @tc.name Test the GetCellularDataFlowType function 8102d43be4eSopenharmony_ci * @tc.desc Function test 8112d43be4eSopenharmony_ci */ 8122d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DataFlowType_Test_02, TestSize.Level3) 8132d43be4eSopenharmony_ci{ 8142d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 8152d43be4eSopenharmony_ci return; 8162d43be4eSopenharmony_ci } 8172d43be4eSopenharmony_ci DataAccessToken token; 8182d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(SIM_SLOT_ID_1); 8192d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 8202d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 8212d43be4eSopenharmony_ci sleep(SLEEP_TIME); 8222d43be4eSopenharmony_ci 8232d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(true); 8242d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_CONNECTED)); 8252d43be4eSopenharmony_ci sleep(SLEEP_TIME); 8262d43be4eSopenharmony_ci std::cout << "Cellular Data Connected Ping..." << std::endl; 8272d43be4eSopenharmony_ci int32_t pingResult = CellularDataTest::PingTest(); 8282d43be4eSopenharmony_ci ASSERT_TRUE(pingResult >= PING_CHECK_SUCCESS); 8292d43be4eSopenharmony_ci int32_t dataFlowType = CellularDataTest::GetCellularDataFlowTypeTest(); 8302d43be4eSopenharmony_ci ASSERT_TRUE(dataFlowType >= 0); 8312d43be4eSopenharmony_ci 8322d43be4eSopenharmony_ci CellularDataTest::EnableCellularDataTest(false); 8332d43be4eSopenharmony_ci WaitTestTimeout(static_cast<int32_t>(DataConnectionStatus::DATA_STATE_DISCONNECTED)); 8342d43be4eSopenharmony_ci sleep(SLEEP_TIME); 8352d43be4eSopenharmony_ci std::cout << "Cellular Data Disconnected Ping..." << std::endl; 8362d43be4eSopenharmony_ci pingResult = CellularDataTest::PingTest(); 8372d43be4eSopenharmony_ci ASSERT_TRUE(pingResult == PING_CHECK_FAIL); 8382d43be4eSopenharmony_ci dataFlowType = CellularDataTest::GetCellularDataFlowTypeTest(); 8392d43be4eSopenharmony_ci ASSERT_TRUE(dataFlowType == 0); 8402d43be4eSopenharmony_ci} 8412d43be4eSopenharmony_ci 8422d43be4eSopenharmony_ci/** 8432d43be4eSopenharmony_ci * @tc.number MmsApn_Test_01 8442d43be4eSopenharmony_ci * @tc.name Test the Mms apn function 8452d43be4eSopenharmony_ci * @tc.desc Function test 8462d43be4eSopenharmony_ci */ 8472d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, MmsApn_Test_01, TestSize.Level3) 8482d43be4eSopenharmony_ci{ 8492d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 8502d43be4eSopenharmony_ci return; 8512d43be4eSopenharmony_ci } 8522d43be4eSopenharmony_ci DataAccessToken token; 8532d43be4eSopenharmony_ci sptr<INetConnCallback> callback = new (std::nothrow) TestCallback(); 8542d43be4eSopenharmony_ci if (callback == nullptr) { 8552d43be4eSopenharmony_ci std::cout << "callback is null" << std::endl; 8562d43be4eSopenharmony_ci return; 8572d43be4eSopenharmony_ci } 8582d43be4eSopenharmony_ci NetSpecifier netSpecifier; 8592d43be4eSopenharmony_ci NetAllCapabilities netAllCapabilities; 8602d43be4eSopenharmony_ci netAllCapabilities.netCaps_.insert(NetCap::NET_CAPABILITY_MMS); 8612d43be4eSopenharmony_ci netAllCapabilities.bearerTypes_.insert(NetBearType::BEARER_CELLULAR); 8622d43be4eSopenharmony_ci int32_t simId = CoreServiceClient::GetInstance().GetSimId(DEFAULT_SIM_SLOT_ID); 8632d43be4eSopenharmony_ci netSpecifier.ident_ = "simId" + std::to_string(simId); 8642d43be4eSopenharmony_ci netSpecifier.netCapabilities_ = netAllCapabilities; 8652d43be4eSopenharmony_ci sptr<NetSpecifier> specifier = new (std::nothrow) NetSpecifier(netSpecifier); 8662d43be4eSopenharmony_ci if (specifier == nullptr) { 8672d43be4eSopenharmony_ci std::cout << "specifier is null" << std::endl; 8682d43be4eSopenharmony_ci return; 8692d43be4eSopenharmony_ci } 8702d43be4eSopenharmony_ci int32_t result = NetConnClient::GetInstance().RegisterNetConnCallback(specifier, callback, NET_REGISTER_TIMEOUT_MS); 8712d43be4eSopenharmony_ci std::cout << "RegisterNetConnCallback result [" << result << "]" << std::endl; 8722d43be4eSopenharmony_ci auto mmsCallback = static_cast<TestCallback *>(callback.GetRefPtr()); 8732d43be4eSopenharmony_ci if (mmsCallback == nullptr) { 8742d43be4eSopenharmony_ci std::cout << "mmsCallback is null" << std::endl; 8752d43be4eSopenharmony_ci return; 8762d43be4eSopenharmony_ci } 8772d43be4eSopenharmony_ci int32_t count = 0; 8782d43be4eSopenharmony_ci while (count < MAX_TIMES) { 8792d43be4eSopenharmony_ci sleep(SLEEP_TIME); 8802d43be4eSopenharmony_ci if (mmsCallback->isCallback_ == true) { 8812d43be4eSopenharmony_ci break; 8822d43be4eSopenharmony_ci } 8832d43be4eSopenharmony_ci count++; 8842d43be4eSopenharmony_ci } 8852d43be4eSopenharmony_ci ASSERT_TRUE(mmsCallback->isCallback_); 8862d43be4eSopenharmony_ci result = NetConnClient::GetInstance().UnregisterNetConnCallback(callback); 8872d43be4eSopenharmony_ci std::cout << "UnregisterNetConnCallback result [" << result << "]" << std::endl; 8882d43be4eSopenharmony_ci} 8892d43be4eSopenharmony_ci 8902d43be4eSopenharmony_ci/** 8912d43be4eSopenharmony_ci * @tc.number MmsApn_Test_02 8922d43be4eSopenharmony_ci * @tc.name Test the Mms apn function 8932d43be4eSopenharmony_ci * @tc.desc Function test 8942d43be4eSopenharmony_ci */ 8952d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, MmsApn_Test_02, TestSize.Level3) 8962d43be4eSopenharmony_ci{ 8972d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 8982d43be4eSopenharmony_ci return; 8992d43be4eSopenharmony_ci } 9002d43be4eSopenharmony_ci DataAccessToken token; 9012d43be4eSopenharmony_ci sptr<INetConnCallback> callback = new (std::nothrow) TestCallback(); 9022d43be4eSopenharmony_ci if (callback == nullptr) { 9032d43be4eSopenharmony_ci std::cout << "callback is null" << std::endl; 9042d43be4eSopenharmony_ci return; 9052d43be4eSopenharmony_ci } 9062d43be4eSopenharmony_ci NetSpecifier netSpecifier; 9072d43be4eSopenharmony_ci NetAllCapabilities netAllCapabilities; 9082d43be4eSopenharmony_ci netAllCapabilities.netCaps_.insert(NetCap::NET_CAPABILITY_MMS); 9092d43be4eSopenharmony_ci netAllCapabilities.bearerTypes_.insert(NetBearType::BEARER_CELLULAR); 9102d43be4eSopenharmony_ci int32_t simId = CoreServiceClient::GetInstance().GetSimId(SIM_SLOT_ID_1); 9112d43be4eSopenharmony_ci netSpecifier.ident_ = "simId" + std::to_string(simId); 9122d43be4eSopenharmony_ci netSpecifier.netCapabilities_ = netAllCapabilities; 9132d43be4eSopenharmony_ci sptr<NetSpecifier> specifier = new (std::nothrow) NetSpecifier(netSpecifier); 9142d43be4eSopenharmony_ci if (specifier == nullptr) { 9152d43be4eSopenharmony_ci std::cout << "specifier is null" << std::endl; 9162d43be4eSopenharmony_ci return; 9172d43be4eSopenharmony_ci } 9182d43be4eSopenharmony_ci int32_t result = NetConnClient::GetInstance().RegisterNetConnCallback(specifier, callback, NET_REGISTER_TIMEOUT_MS); 9192d43be4eSopenharmony_ci std::cout << "RegisterNetConnCallback result [" << result << "]" << std::endl; 9202d43be4eSopenharmony_ci auto mmsCallback = static_cast<TestCallback *>(callback.GetRefPtr()); 9212d43be4eSopenharmony_ci if (mmsCallback == nullptr) { 9222d43be4eSopenharmony_ci std::cout << "mmsCallback is null" << std::endl; 9232d43be4eSopenharmony_ci return; 9242d43be4eSopenharmony_ci } 9252d43be4eSopenharmony_ci int32_t count = 0; 9262d43be4eSopenharmony_ci while (count < MAX_TIMES) { 9272d43be4eSopenharmony_ci sleep(SLEEP_TIME); 9282d43be4eSopenharmony_ci if (mmsCallback->isCallback_ == true) { 9292d43be4eSopenharmony_ci break; 9302d43be4eSopenharmony_ci } 9312d43be4eSopenharmony_ci count++; 9322d43be4eSopenharmony_ci } 9332d43be4eSopenharmony_ci ASSERT_TRUE(mmsCallback->isCallback_); 9342d43be4eSopenharmony_ci result = NetConnClient::GetInstance().UnregisterNetConnCallback(callback); 9352d43be4eSopenharmony_ci std::cout << "UnregisterNetConnCallback result [" << result << "]" << std::endl; 9362d43be4eSopenharmony_ci} 9372d43be4eSopenharmony_ci 9382d43be4eSopenharmony_ci/** 9392d43be4eSopenharmony_ci * @tc.number HasInternetCapability_Test_01 9402d43be4eSopenharmony_ci * @tc.name Test the HasInternetCapability function 9412d43be4eSopenharmony_ci * @tc.desc Function test 9422d43be4eSopenharmony_ci */ 9432d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, HasInternetCapability_Test_01, TestSize.Level3) 9442d43be4eSopenharmony_ci{ 9452d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 9462d43be4eSopenharmony_ci return; 9472d43be4eSopenharmony_ci } 9482d43be4eSopenharmony_ci 9492d43be4eSopenharmony_ci int32_t cid = 1; 9502d43be4eSopenharmony_ci int32_t result = CellularDataTest::HasInternetCapability(SIM_SLOT_ID_1, cid); 9512d43be4eSopenharmony_ci ASSERT_TRUE(result == static_cast<int32_t>(RequestNetCode::REQUEST_FAILED)); 9522d43be4eSopenharmony_ci} 9532d43be4eSopenharmony_ci 9542d43be4eSopenharmony_ci/** 9552d43be4eSopenharmony_ci * @tc.number HasInternetCapability_Test_02 9562d43be4eSopenharmony_ci * @tc.name Test the HasInternetCapability function 9572d43be4eSopenharmony_ci * @tc.desc Function test 9582d43be4eSopenharmony_ci */ 9592d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, HasInternetCapability_Test_02, TestSize.Level3) 9602d43be4eSopenharmony_ci{ 9612d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 9622d43be4eSopenharmony_ci return; 9632d43be4eSopenharmony_ci } 9642d43be4eSopenharmony_ci 9652d43be4eSopenharmony_ci int32_t cid = 1; 9662d43be4eSopenharmony_ci int32_t result = CellularDataTest::HasInternetCapability(DEFAULT_SIM_SLOT_ID, cid); 9672d43be4eSopenharmony_ci ASSERT_TRUE(result == static_cast<int32_t>(RequestNetCode::REQUEST_FAILED)); 9682d43be4eSopenharmony_ci} 9692d43be4eSopenharmony_ci 9702d43be4eSopenharmony_ci/** 9712d43be4eSopenharmony_ci * @tc.number ClearCellularDataConnections_Test_01 9722d43be4eSopenharmony_ci * @tc.name Test the ClearCellularDataConnections function 9732d43be4eSopenharmony_ci * @tc.desc Function test 9742d43be4eSopenharmony_ci */ 9752d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ClearCellularDataConnections_Test_01, TestSize.Level3) 9762d43be4eSopenharmony_ci{ 9772d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 9782d43be4eSopenharmony_ci return; 9792d43be4eSopenharmony_ci } 9802d43be4eSopenharmony_ci DataAccessToken token; 9812d43be4eSopenharmony_ci int32_t result = CellularDataTest::ClearCellularDataConnections(SIM_SLOT_ID_1); 9822d43be4eSopenharmony_ci ASSERT_TRUE(result == static_cast<int32_t>(RequestNetCode::REQUEST_SUCCESS)); 9832d43be4eSopenharmony_ci} 9842d43be4eSopenharmony_ci 9852d43be4eSopenharmony_ci/** 9862d43be4eSopenharmony_ci * @tc.number ClearCellularDataConnections_Test_02 9872d43be4eSopenharmony_ci * @tc.name Test the ClearCellularDataConnections function 9882d43be4eSopenharmony_ci * @tc.desc Function test 9892d43be4eSopenharmony_ci */ 9902d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ClearCellularDataConnections_Test_02, TestSize.Level3) 9912d43be4eSopenharmony_ci{ 9922d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 9932d43be4eSopenharmony_ci return; 9942d43be4eSopenharmony_ci } 9952d43be4eSopenharmony_ci DataAccessToken token; 9962d43be4eSopenharmony_ci int32_t result = CellularDataTest::ClearCellularDataConnections(DEFAULT_SIM_SLOT_ID); 9972d43be4eSopenharmony_ci ASSERT_TRUE(result == static_cast<int32_t>(RequestNetCode::REQUEST_SUCCESS)); 9982d43be4eSopenharmony_ci} 9992d43be4eSopenharmony_ci 10002d43be4eSopenharmony_ci/** 10012d43be4eSopenharmony_ci * @tc.number ClearAllConnections 10022d43be4eSopenharmony_ci * @tc.name Test the ClearAllConnections function 10032d43be4eSopenharmony_ci * @tc.desc Function test 10042d43be4eSopenharmony_ci */ 10052d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ClearAllConnections_Test_01, TestSize.Level3) 10062d43be4eSopenharmony_ci{ 10072d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 10082d43be4eSopenharmony_ci return; 10092d43be4eSopenharmony_ci } 10102d43be4eSopenharmony_ci DataAccessToken token; 10112d43be4eSopenharmony_ci int32_t result = CellularDataTest::ClearAllConnections( 10122d43be4eSopenharmony_ci DEFAULT_SIM_SLOT_ID, DisConnectionReason::REASON_RETRY_CONNECTION); 10132d43be4eSopenharmony_ci ASSERT_TRUE(result == static_cast<int32_t>(RequestNetCode::REQUEST_SUCCESS)); 10142d43be4eSopenharmony_ci} 10152d43be4eSopenharmony_ci 10162d43be4eSopenharmony_ci/** 10172d43be4eSopenharmony_ci * @tc.number GetApnState 10182d43be4eSopenharmony_ci * @tc.name Test the GetApnState function 10192d43be4eSopenharmony_ci * @tc.desc Function test 10202d43be4eSopenharmony_ci */ 10212d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetApnState_Test_01, TestSize.Level3) 10222d43be4eSopenharmony_ci{ 10232d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 10242d43be4eSopenharmony_ci return; 10252d43be4eSopenharmony_ci } 10262d43be4eSopenharmony_ci DataAccessToken token; 10272d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetApnState(DEFAULT_SIM_SLOT_ID, "default"); 10282d43be4eSopenharmony_ci ASSERT_TRUE(result >= 0 && result <= 5); 10292d43be4eSopenharmony_ci} 10302d43be4eSopenharmony_ci 10312d43be4eSopenharmony_ci/** 10322d43be4eSopenharmony_ci * @tc.number GetDataRecoveryState 10332d43be4eSopenharmony_ci * @tc.name Test the GetDataRecoveryState function 10342d43be4eSopenharmony_ci * @tc.desc Function test 10352d43be4eSopenharmony_ci */ 10362d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetDataRecoveryState_Test_01, TestSize.Level3) 10372d43be4eSopenharmony_ci{ 10382d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 10392d43be4eSopenharmony_ci return; 10402d43be4eSopenharmony_ci } 10412d43be4eSopenharmony_ci DataAccessToken token; 10422d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetDataRecoveryState(); 10432d43be4eSopenharmony_ci ASSERT_TRUE(result >= 0 && result <= 3); 10442d43be4eSopenharmony_ci} 10452d43be4eSopenharmony_ci 10462d43be4eSopenharmony_ci/** 10472d43be4eSopenharmony_ci * @tc.number CellularDataDump_Test_01 10482d43be4eSopenharmony_ci * @tc.name TestDump 10492d43be4eSopenharmony_ci * @tc.desc Function test 10502d43be4eSopenharmony_ci */ 10512d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, CellularDataDump_Test_01, Function | MediumTest | Level3) 10522d43be4eSopenharmony_ci{ 10532d43be4eSopenharmony_ci std::vector<std::u16string> emptyArgs = {}; 10542d43be4eSopenharmony_ci std::vector<std::u16string> args = { u"test", u"test1" }; 10552d43be4eSopenharmony_ci EXPECT_GE(DelayedSingleton<CellularDataService>::GetInstance()->Dump(-1, args), 0); 10562d43be4eSopenharmony_ci EXPECT_GE(DelayedSingleton<CellularDataService>::GetInstance()->Dump(0, emptyArgs), 0); 10572d43be4eSopenharmony_ci EXPECT_GE(DelayedSingleton<CellularDataService>::GetInstance()->Dump(0, args), 0); 10582d43be4eSopenharmony_ci} 10592d43be4eSopenharmony_ci 10602d43be4eSopenharmony_ci/** 10612d43be4eSopenharmony_ci * @tc.number Telephony_Cellulardata_InitTelephonyExtService_0100 10622d43be4eSopenharmony_ci * @tc.name Init Telephony Ext Service. 10632d43be4eSopenharmony_ci * @tc.desc Function test 10642d43be4eSopenharmony_ci */ 10652d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, Telephony_Cellulardata_InitTelephonyExtService_0100, Function | MediumTest | Level1) 10662d43be4eSopenharmony_ci{ 10672d43be4eSopenharmony_ci DataAccessToken token; 10682d43be4eSopenharmony_ci TELEPHONY_EXT_WRAPPER.InitTelephonyExtWrapper(); 10692d43be4eSopenharmony_ci if (TELEPHONY_EXT_WRAPPER.telephonyExtWrapperHandle_ == nullptr) { 10702d43be4eSopenharmony_ci TELEPHONY_LOGI("telephonyExtWrapperHandle_ null"); 10712d43be4eSopenharmony_ci } else { 10722d43be4eSopenharmony_ci TELEPHONY_LOGI("telephonyExtWrapperHandle_ not null"); 10732d43be4eSopenharmony_ci EXPECT_EQ(TELEPHONY_EXT_WRAPPER.dataEndSelfCure_ != nullptr, true); 10742d43be4eSopenharmony_ci } 10752d43be4eSopenharmony_ci} 10762d43be4eSopenharmony_ci 10772d43be4eSopenharmony_ci/** 10782d43be4eSopenharmony_ci * @tc.number GetDataConnApnAttr_Test_01 10792d43be4eSopenharmony_ci * @tc.name Test the GetDataConnApnAttr function 10802d43be4eSopenharmony_ci * @tc.desc Function test 10812d43be4eSopenharmony_ci */ 10822d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetDataConnApnAttr_Test_01, TestSize.Level3) 10832d43be4eSopenharmony_ci{ 10842d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 10852d43be4eSopenharmony_ci return; 10862d43be4eSopenharmony_ci } 10872d43be4eSopenharmony_ci DataAccessToken token; 10882d43be4eSopenharmony_ci ApnItem::Attribute apnAttr; 10892d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetDataConnApnAttr(SIM_SLOT_ID_1, apnAttr); 10902d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 10912d43be4eSopenharmony_ci} 10922d43be4eSopenharmony_ci 10932d43be4eSopenharmony_ci/** 10942d43be4eSopenharmony_ci * @tc.number GetDataConnApnAttr_Test_02 10952d43be4eSopenharmony_ci * @tc.name Test the GetDataConnApnAttr function 10962d43be4eSopenharmony_ci * @tc.desc Function test 10972d43be4eSopenharmony_ci */ 10982d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetDataConnApnAttr_Test_02, TestSize.Level3) 10992d43be4eSopenharmony_ci{ 11002d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 11012d43be4eSopenharmony_ci return; 11022d43be4eSopenharmony_ci } 11032d43be4eSopenharmony_ci DataAccessToken token; 11042d43be4eSopenharmony_ci ApnItem::Attribute apnAttr; 11052d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetDataConnApnAttr(DEFAULT_SIM_SLOT_ID, apnAttr); 11062d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 11072d43be4eSopenharmony_ci} 11082d43be4eSopenharmony_ci 11092d43be4eSopenharmony_ci/** 11102d43be4eSopenharmony_ci * @tc.number GetDataConnIpType_Test_01 11112d43be4eSopenharmony_ci * @tc.name Test the GetDataConnIpType function 11122d43be4eSopenharmony_ci * @tc.desc Function test 11132d43be4eSopenharmony_ci */ 11142d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetDataConnIpType_Test_01, TestSize.Level3) 11152d43be4eSopenharmony_ci{ 11162d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 11172d43be4eSopenharmony_ci return; 11182d43be4eSopenharmony_ci } 11192d43be4eSopenharmony_ci DataAccessToken token; 11202d43be4eSopenharmony_ci std::string ipType; 11212d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetDataConnIpType(SIM_SLOT_ID_1, ipType); 11222d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 11232d43be4eSopenharmony_ci} 11242d43be4eSopenharmony_ci 11252d43be4eSopenharmony_ci/** 11262d43be4eSopenharmony_ci * @tc.number GetDataConnIpType_Test_02 11272d43be4eSopenharmony_ci * @tc.name Test the GetDataConnIpType function 11282d43be4eSopenharmony_ci * @tc.desc Function test 11292d43be4eSopenharmony_ci */ 11302d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetDataConnIpType_Test_02, TestSize.Level3) 11312d43be4eSopenharmony_ci{ 11322d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 11332d43be4eSopenharmony_ci return; 11342d43be4eSopenharmony_ci } 11352d43be4eSopenharmony_ci DataAccessToken token; 11362d43be4eSopenharmony_ci std::string ipType; 11372d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetDataConnIpType(DEFAULT_SIM_SLOT_ID, ipType); 11382d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 11392d43be4eSopenharmony_ci} 11402d43be4eSopenharmony_ci 11412d43be4eSopenharmony_ci/** 11422d43be4eSopenharmony_ci * @tc.number IsNeedDoRecovery_Test_01 11432d43be4eSopenharmony_ci * @tc.name Test the IsNeedDoRecovery function 11442d43be4eSopenharmony_ci * @tc.desc Function test 11452d43be4eSopenharmony_ci */ 11462d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, IsNeedDoRecovery_Test_01, TestSize.Level3) 11472d43be4eSopenharmony_ci{ 11482d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 11492d43be4eSopenharmony_ci return; 11502d43be4eSopenharmony_ci } 11512d43be4eSopenharmony_ci DataAccessToken token; 11522d43be4eSopenharmony_ci bool needDoRecovery = true; 11532d43be4eSopenharmony_ci int32_t result = CellularDataTest::IsNeedDoRecovery(SIM_SLOT_ID_1, needDoRecovery); 11542d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 11552d43be4eSopenharmony_ci} 11562d43be4eSopenharmony_ci 11572d43be4eSopenharmony_ci/** 11582d43be4eSopenharmony_ci * @tc.number IsNeedDoRecovery_Test_02 11592d43be4eSopenharmony_ci * @tc.name Test the IsNeedDoRecovery function 11602d43be4eSopenharmony_ci * @tc.desc Function test 11612d43be4eSopenharmony_ci */ 11622d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, IsNeedDoRecovery_Test_02, TestSize.Level3) 11632d43be4eSopenharmony_ci{ 11642d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 11652d43be4eSopenharmony_ci return; 11662d43be4eSopenharmony_ci } 11672d43be4eSopenharmony_ci DataAccessToken token; 11682d43be4eSopenharmony_ci bool needDoRecovery = true; 11692d43be4eSopenharmony_ci int32_t result = CellularDataTest::IsNeedDoRecovery(DEFAULT_SIM_SLOT_ID, needDoRecovery); 11702d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 11712d43be4eSopenharmony_ci} 11722d43be4eSopenharmony_ci 11732d43be4eSopenharmony_ci/** 11742d43be4eSopenharmony_ci * @tc.number GetCellularDataSupplierId_Test_01 11752d43be4eSopenharmony_ci * @tc.name Test the function 11762d43be4eSopenharmony_ci * @tc.desc Function test 11772d43be4eSopenharmony_ci */ 11782d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetCellularDataSupplierId_Test_01, TestSize.Level3) 11792d43be4eSopenharmony_ci{ 11802d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 11812d43be4eSopenharmony_ci return; 11822d43be4eSopenharmony_ci } 11832d43be4eSopenharmony_ci DataAccessToken token; 11842d43be4eSopenharmony_ci uint32_t supplierId = 0; 11852d43be4eSopenharmony_ci uint64_t capabilityInvalid = NetCap::NET_CAPABILITY_END; 11862d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetCellularDataSupplierId(DEFAULT_SIM_SLOT_ID, capabilityInvalid, supplierId); 11872d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 11882d43be4eSopenharmony_ci 11892d43be4eSopenharmony_ci result = 11902d43be4eSopenharmony_ci CellularDataTest::GetCellularDataSupplierId(DEFAULT_SIM_SLOT_ID, NetCap::NET_CAPABILITY_INTERNET, supplierId); 11912d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 11922d43be4eSopenharmony_ci} 11932d43be4eSopenharmony_ci 11942d43be4eSopenharmony_ci/** 11952d43be4eSopenharmony_ci * @tc.number CorrectNetSupplierNoAvailable_Test_01 11962d43be4eSopenharmony_ci * @tc.name Test the function 11972d43be4eSopenharmony_ci * @tc.desc Function test 11982d43be4eSopenharmony_ci */ 11992d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, CorrectNetSupplierNoAvailable_Test_01, TestSize.Level3) 12002d43be4eSopenharmony_ci{ 12012d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 12022d43be4eSopenharmony_ci return; 12032d43be4eSopenharmony_ci } 12042d43be4eSopenharmony_ci DataAccessToken token; 12052d43be4eSopenharmony_ci int32_t result = CellularDataTest::CorrectNetSupplierNoAvailable(DEFAULT_SIM_SLOT_ID); 12062d43be4eSopenharmony_ci int32_t apnState = CellularDataTest::GetApnState(DEFAULT_SIM_SLOT_ID, "default"); 12072d43be4eSopenharmony_ci if (apnState == ApnProfileState::PROFILE_STATE_CONNECTED) { 12082d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_FAIL); 12092d43be4eSopenharmony_ci } else { 12102d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 12112d43be4eSopenharmony_ci } 12122d43be4eSopenharmony_ci} 12132d43be4eSopenharmony_ci 12142d43be4eSopenharmony_ci/** 12152d43be4eSopenharmony_ci * @tc.number GetSupplierRegisterState_Test_01 12162d43be4eSopenharmony_ci * @tc.name Test the function 12172d43be4eSopenharmony_ci * @tc.desc Function test 12182d43be4eSopenharmony_ci */ 12192d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetSupplierRegisterState_Test_01, TestSize.Level3) 12202d43be4eSopenharmony_ci{ 12212d43be4eSopenharmony_ci DataAccessToken token; 12222d43be4eSopenharmony_ci int32_t regState = -1; 12232d43be4eSopenharmony_ci uint32_t supplierId = 1; 12242d43be4eSopenharmony_ci int32_t result = CellularDataTest::GetSupplierRegisterState(supplierId, regState); 12252d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_FAIL); 12262d43be4eSopenharmony_ci 12272d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 12282d43be4eSopenharmony_ci return; 12292d43be4eSopenharmony_ci } 12302d43be4eSopenharmony_ci int32_t getSupplierIdRet = 12312d43be4eSopenharmony_ci CellularDataTest::GetCellularDataSupplierId(DEFAULT_SIM_SLOT_ID, NetCap::NET_CAPABILITY_INTERNET, supplierId); 12322d43be4eSopenharmony_ci if (getSupplierIdRet == TELEPHONY_ERR_SUCCESS) { 12332d43be4eSopenharmony_ci result = CellularDataTest::GetSupplierRegisterState(supplierId, regState); 12342d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 12352d43be4eSopenharmony_ci } 12362d43be4eSopenharmony_ci} 12372d43be4eSopenharmony_ci 12382d43be4eSopenharmony_ci/** 12392d43be4eSopenharmony_ci * @tc.number EnableIntelligenceSwitch_Test_01 12402d43be4eSopenharmony_ci * @tc.name Test Intelligence switch 12412d43be4eSopenharmony_ci * @tc.desc Function test 12422d43be4eSopenharmony_ci */ 12432d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, EnableIntelligenceSwitch_Test_01, TestSize.Level2) 12442d43be4eSopenharmony_ci{ 12452d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 12462d43be4eSopenharmony_ci return; 12472d43be4eSopenharmony_ci } 12482d43be4eSopenharmony_ci DataAccessToken token; 12492d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(DEFAULT_SIM_SLOT_ID); 12502d43be4eSopenharmony_ci int32_t result1 = CellularDataTest::EnableIntelligenceSwitchTest(true); 12512d43be4eSopenharmony_ci ASSERT_TRUE(result1 == TELEPHONY_ERR_SUCCESS); 12522d43be4eSopenharmony_ci sleep(SLEEP_TIME); 12532d43be4eSopenharmony_ci std::cout << "EnableIntelligenceSwitch ..." << std::endl; 12542d43be4eSopenharmony_ci int32_t result2 = CellularDataTest::EnableIntelligenceSwitchTest(false); 12552d43be4eSopenharmony_ci ASSERT_TRUE(result2 == TELEPHONY_ERR_SUCCESS); 12562d43be4eSopenharmony_ci sleep(SLEEP_TIME); 12572d43be4eSopenharmony_ci std::cout << "DisableIntelligenceSwitch ..." << std::endl; 12582d43be4eSopenharmony_ci} 12592d43be4eSopenharmony_ci 12602d43be4eSopenharmony_ci/** 12612d43be4eSopenharmony_ci * @tc.number GetIntelligenceSwitchState_Test_01 12622d43be4eSopenharmony_ci * @tc.name Test Intelligence switch 12632d43be4eSopenharmony_ci * @tc.desc Function test 12642d43be4eSopenharmony_ci */ 12652d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, GetIntelligenceSwitchState_Test_01, TestSize.Level2) 12662d43be4eSopenharmony_ci{ 12672d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 12682d43be4eSopenharmony_ci return; 12692d43be4eSopenharmony_ci } 12702d43be4eSopenharmony_ci DataAccessToken token; 12712d43be4eSopenharmony_ci CellularDataTest::SetDefaultCellularDataSlotIdTest(DEFAULT_SIM_SLOT_ID); 12722d43be4eSopenharmony_ci int32_t result1 = CellularDataTest::EnableIntelligenceSwitchTest(true); 12732d43be4eSopenharmony_ci ASSERT_TRUE(result1 == TELEPHONY_ERR_SUCCESS); 12742d43be4eSopenharmony_ci bool res1 = false; 12752d43be4eSopenharmony_ci CellularDataTest::GetIntelligenceSwitchStateTest(res1); 12762d43be4eSopenharmony_ci ASSERT_TRUE(res1 == true); 12772d43be4eSopenharmony_ci std::cout << "Test GetIntelligenceSwitchState Of True..." << std::endl; 12782d43be4eSopenharmony_ci int32_t result2 = CellularDataTest::EnableIntelligenceSwitchTest(false); 12792d43be4eSopenharmony_ci ASSERT_TRUE(result2 == TELEPHONY_ERR_SUCCESS); 12802d43be4eSopenharmony_ci bool res2 = true; 12812d43be4eSopenharmony_ci CellularDataTest::GetIntelligenceSwitchStateTest(res2); 12822d43be4eSopenharmony_ci ASSERT_TRUE(res2 == false); 12832d43be4eSopenharmony_ci std::cout << "Test GetIntelligenceSwitchState Of False..." << std::endl; 12842d43be4eSopenharmony_ci} 12852d43be4eSopenharmony_ci 12862d43be4eSopenharmony_ci/** 12872d43be4eSopenharmony_ci * @tc.number InitCellularDataController_Test_01 12882d43be4eSopenharmony_ci * @tc.name Test the InitCellularDataController function 12892d43be4eSopenharmony_ci * @tc.desc Function test 12902d43be4eSopenharmony_ci */ 12912d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, InitCellularDataController_Test_01, TestSize.Level3) 12922d43be4eSopenharmony_ci{ 12932d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 12942d43be4eSopenharmony_ci return; 12952d43be4eSopenharmony_ci } 12962d43be4eSopenharmony_ci DataAccessToken token; 12972d43be4eSopenharmony_ci int32_t result = CellularDataTest::InitCellularDataController(SIM_SLOT_ID_1); 12982d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 12992d43be4eSopenharmony_ci} 13002d43be4eSopenharmony_ci 13012d43be4eSopenharmony_ci/** 13022d43be4eSopenharmony_ci * @tc.number InitCellularDataController_Test_02 13032d43be4eSopenharmony_ci * @tc.name Test the InitCellularDataController function 13042d43be4eSopenharmony_ci * @tc.desc Function test 13052d43be4eSopenharmony_ci */ 13062d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, InitCellularDataController_Test_02, TestSize.Level3) 13072d43be4eSopenharmony_ci{ 13082d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 13092d43be4eSopenharmony_ci return; 13102d43be4eSopenharmony_ci } 13112d43be4eSopenharmony_ci DataAccessToken token; 13122d43be4eSopenharmony_ci int32_t result = CellularDataTest::InitCellularDataController(DEFAULT_SIM_SLOT_ID); 13132d43be4eSopenharmony_ci ASSERT_TRUE(result == CELLULAR_DATA_INVALID_PARAM); 13142d43be4eSopenharmony_ci} 13152d43be4eSopenharmony_ci 13162d43be4eSopenharmony_ci/** 13172d43be4eSopenharmony_ci * @tc.number InitCellularDataController_Test_03 13182d43be4eSopenharmony_ci * @tc.name Test the InitCellularDataController function 13192d43be4eSopenharmony_ci * @tc.desc Function test 13202d43be4eSopenharmony_ci */ 13212d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, InitCellularDataController_Test_03, TestSize.Level3) 13222d43be4eSopenharmony_ci{ 13232d43be4eSopenharmony_ci DataAccessToken token; 13242d43be4eSopenharmony_ci int32_t result = CellularDataTest::InitCellularDataController(CELLULAR_DATA_VSIM_SLOT_ID); 13252d43be4eSopenharmony_ci ASSERT_TRUE(result == TELEPHONY_ERR_SUCCESS); 13262d43be4eSopenharmony_ci} 13272d43be4eSopenharmony_ci 13282d43be4eSopenharmony_ci/** 13292d43be4eSopenharmony_ci * @tc.number SUPL_Apn_Test_01 13302d43be4eSopenharmony_ci * @tc.name Test the SUPL apn function 13312d43be4eSopenharmony_ci * @tc.desc Function test 13322d43be4eSopenharmony_ci */ 13332d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, SUPL_Apn_Test_01, TestSize.Level3) 13342d43be4eSopenharmony_ci{ 13352d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 13362d43be4eSopenharmony_ci return; 13372d43be4eSopenharmony_ci } 13382d43be4eSopenharmony_ci DataAccessToken token; 13392d43be4eSopenharmony_ci sptr<INetConnCallback> callback = new (std::nothrow) TestCallback(); 13402d43be4eSopenharmony_ci if (callback == nullptr) { 13412d43be4eSopenharmony_ci std::cout << "callback is null" << std::endl; 13422d43be4eSopenharmony_ci return; 13432d43be4eSopenharmony_ci } 13442d43be4eSopenharmony_ci NetSpecifier netSpecifier; 13452d43be4eSopenharmony_ci NetAllCapabilities netAllCapabilities; 13462d43be4eSopenharmony_ci netAllCapabilities.netCaps_.insert(NetCap::NET_CAPABILITY_SUPL); 13472d43be4eSopenharmony_ci netAllCapabilities.bearerTypes_.insert(NetBearType::BEARER_CELLULAR); 13482d43be4eSopenharmony_ci int32_t simId = CoreServiceClient::GetInstance().GetSimId(DEFAULT_SIM_SLOT_ID); 13492d43be4eSopenharmony_ci netSpecifier.ident_ = "simId" + std::to_string(simId); 13502d43be4eSopenharmony_ci netSpecifier.netCapabilities_ = netAllCapabilities; 13512d43be4eSopenharmony_ci sptr<NetSpecifier> specifier = new (std::nothrow) NetSpecifier(netSpecifier); 13522d43be4eSopenharmony_ci if (specifier == nullptr) { 13532d43be4eSopenharmony_ci std::cout << "specifier is null" << std::endl; 13542d43be4eSopenharmony_ci return; 13552d43be4eSopenharmony_ci } 13562d43be4eSopenharmony_ci int32_t result = NetConnClient::GetInstance().RegisterNetConnCallback(specifier, callback, NET_REGISTER_TIMEOUT_MS); 13572d43be4eSopenharmony_ci std::cout << "RegisterNetConnCallback result [" << result << "]" << std::endl; 13582d43be4eSopenharmony_ci auto suplCallback = static_cast<TestCallback *>(callback.GetRefPtr()); 13592d43be4eSopenharmony_ci if (suplCallback == nullptr) { 13602d43be4eSopenharmony_ci std::cout << "suplCallback is null" << std::endl; 13612d43be4eSopenharmony_ci return; 13622d43be4eSopenharmony_ci } 13632d43be4eSopenharmony_ci int32_t count = 0; 13642d43be4eSopenharmony_ci while (count < MAX_TIMES) { 13652d43be4eSopenharmony_ci sleep(SLEEP_TIME); 13662d43be4eSopenharmony_ci if (suplCallback->isCallback_ == true) { 13672d43be4eSopenharmony_ci break; 13682d43be4eSopenharmony_ci } 13692d43be4eSopenharmony_ci count++; 13702d43be4eSopenharmony_ci } 13712d43be4eSopenharmony_ci ASSERT_TRUE(suplCallback->isCallback_); 13722d43be4eSopenharmony_ci result = NetConnClient::GetInstance().UnregisterNetConnCallback(callback); 13732d43be4eSopenharmony_ci std::cout << "UnregisterNetConnCallback result [" << result << "]" << std::endl; 13742d43be4eSopenharmony_ci} 13752d43be4eSopenharmony_ci 13762d43be4eSopenharmony_ci/** 13772d43be4eSopenharmony_ci * @tc.number SUPL_Apn_Test_02 13782d43be4eSopenharmony_ci * @tc.name Test the SUPL apn function 13792d43be4eSopenharmony_ci * @tc.desc Function test 13802d43be4eSopenharmony_ci */ 13812d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, SUPL_Apn_Test_02, TestSize.Level3) 13822d43be4eSopenharmony_ci{ 13832d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 13842d43be4eSopenharmony_ci return; 13852d43be4eSopenharmony_ci } 13862d43be4eSopenharmony_ci DataAccessToken token; 13872d43be4eSopenharmony_ci sptr<INetConnCallback> callback = new (std::nothrow) TestCallback(); 13882d43be4eSopenharmony_ci if (callback == nullptr) { 13892d43be4eSopenharmony_ci std::cout << "callback is null" << std::endl; 13902d43be4eSopenharmony_ci return; 13912d43be4eSopenharmony_ci } 13922d43be4eSopenharmony_ci NetSpecifier netSpecifier; 13932d43be4eSopenharmony_ci NetAllCapabilities netAllCapabilities; 13942d43be4eSopenharmony_ci netAllCapabilities.netCaps_.insert(NetCap::NET_CAPABILITY_SUPL); 13952d43be4eSopenharmony_ci netAllCapabilities.bearerTypes_.insert(NetBearType::BEARER_CELLULAR); 13962d43be4eSopenharmony_ci int32_t simId = CoreServiceClient::GetInstance().GetSimId(SIM_SLOT_ID_1); 13972d43be4eSopenharmony_ci netSpecifier.ident_ = "simId" + std::to_string(simId); 13982d43be4eSopenharmony_ci netSpecifier.netCapabilities_ = netAllCapabilities; 13992d43be4eSopenharmony_ci sptr<NetSpecifier> specifier = new (std::nothrow) NetSpecifier(netSpecifier); 14002d43be4eSopenharmony_ci if (specifier == nullptr) { 14012d43be4eSopenharmony_ci std::cout << "specifier is null" << std::endl; 14022d43be4eSopenharmony_ci return; 14032d43be4eSopenharmony_ci } 14042d43be4eSopenharmony_ci int32_t result = NetConnClient::GetInstance().RegisterNetConnCallback(specifier, callback, NET_REGISTER_TIMEOUT_MS); 14052d43be4eSopenharmony_ci std::cout << "RegisterNetConnCallback result [" << result << "]" << std::endl; 14062d43be4eSopenharmony_ci auto suplCallback = static_cast<TestCallback *>(callback.GetRefPtr()); 14072d43be4eSopenharmony_ci if (suplCallback == nullptr) { 14082d43be4eSopenharmony_ci std::cout << "suplCallback is null" << std::endl; 14092d43be4eSopenharmony_ci return; 14102d43be4eSopenharmony_ci } 14112d43be4eSopenharmony_ci int32_t count = 0; 14122d43be4eSopenharmony_ci while (count < MAX_TIMES) { 14132d43be4eSopenharmony_ci sleep(SLEEP_TIME); 14142d43be4eSopenharmony_ci if (suplCallback->isCallback_ == true) { 14152d43be4eSopenharmony_ci break; 14162d43be4eSopenharmony_ci } 14172d43be4eSopenharmony_ci count++; 14182d43be4eSopenharmony_ci } 14192d43be4eSopenharmony_ci ASSERT_TRUE(suplCallback->isCallback_); 14202d43be4eSopenharmony_ci result = NetConnClient::GetInstance().UnregisterNetConnCallback(callback); 14212d43be4eSopenharmony_ci std::cout << "UnregisterNetConnCallback result [" << result << "]" << std::endl; 14222d43be4eSopenharmony_ci} 14232d43be4eSopenharmony_ci 14242d43be4eSopenharmony_ci/** 14252d43be4eSopenharmony_ci * @tc.number DUN_Apn_Test_01 14262d43be4eSopenharmony_ci * @tc.name Test the DUN apn function 14272d43be4eSopenharmony_ci * @tc.desc Function test 14282d43be4eSopenharmony_ci */ 14292d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DUN_Apn_Test_01, TestSize.Level3) 14302d43be4eSopenharmony_ci{ 14312d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 14322d43be4eSopenharmony_ci return; 14332d43be4eSopenharmony_ci } 14342d43be4eSopenharmony_ci DataAccessToken token; 14352d43be4eSopenharmony_ci sptr<INetConnCallback> callback = new (std::nothrow) TestCallback(); 14362d43be4eSopenharmony_ci if (callback == nullptr) { 14372d43be4eSopenharmony_ci std::cout << "callback is null" << std::endl; 14382d43be4eSopenharmony_ci return; 14392d43be4eSopenharmony_ci } 14402d43be4eSopenharmony_ci NetSpecifier netSpecifier; 14412d43be4eSopenharmony_ci NetAllCapabilities netAllCapabilities; 14422d43be4eSopenharmony_ci netAllCapabilities.netCaps_.insert(NetCap::NET_CAPABILITY_DUN); 14432d43be4eSopenharmony_ci netAllCapabilities.bearerTypes_.insert(NetBearType::BEARER_CELLULAR); 14442d43be4eSopenharmony_ci int32_t simId = CoreServiceClient::GetInstance().GetSimId(DEFAULT_SIM_SLOT_ID); 14452d43be4eSopenharmony_ci netSpecifier.ident_ = "simId" + std::to_string(simId); 14462d43be4eSopenharmony_ci netSpecifier.netCapabilities_ = netAllCapabilities; 14472d43be4eSopenharmony_ci sptr<NetSpecifier> specifier = new (std::nothrow) NetSpecifier(netSpecifier); 14482d43be4eSopenharmony_ci if (specifier == nullptr) { 14492d43be4eSopenharmony_ci std::cout << "specifier is null" << std::endl; 14502d43be4eSopenharmony_ci return; 14512d43be4eSopenharmony_ci } 14522d43be4eSopenharmony_ci int32_t result = NetConnClient::GetInstance().RegisterNetConnCallback(specifier, callback, NET_REGISTER_TIMEOUT_MS); 14532d43be4eSopenharmony_ci std::cout << "RegisterNetConnCallback result [" << result << "]" << std::endl; 14542d43be4eSopenharmony_ci auto dunCallback = static_cast<TestCallback *>(callback.GetRefPtr()); 14552d43be4eSopenharmony_ci if (dunCallback == nullptr) { 14562d43be4eSopenharmony_ci std::cout << "dunCallback is null" << std::endl; 14572d43be4eSopenharmony_ci return; 14582d43be4eSopenharmony_ci } 14592d43be4eSopenharmony_ci int32_t count = 0; 14602d43be4eSopenharmony_ci while (count < MAX_TIMES) { 14612d43be4eSopenharmony_ci sleep(SLEEP_TIME); 14622d43be4eSopenharmony_ci if (dunCallback->isCallback_ == true) { 14632d43be4eSopenharmony_ci break; 14642d43be4eSopenharmony_ci } 14652d43be4eSopenharmony_ci count++; 14662d43be4eSopenharmony_ci } 14672d43be4eSopenharmony_ci ASSERT_TRUE(dunCallback->isCallback_); 14682d43be4eSopenharmony_ci result = NetConnClient::GetInstance().UnregisterNetConnCallback(callback); 14692d43be4eSopenharmony_ci std::cout << "UnregisterNetConnCallback result [" << result << "]" << std::endl; 14702d43be4eSopenharmony_ci} 14712d43be4eSopenharmony_ci 14722d43be4eSopenharmony_ci/** 14732d43be4eSopenharmony_ci * @tc.number DUN_Apn_Test_02 14742d43be4eSopenharmony_ci * @tc.name Test the DUN apn function 14752d43be4eSopenharmony_ci * @tc.desc Function test 14762d43be4eSopenharmony_ci */ 14772d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DUN_Apn_Test_02, TestSize.Level3) 14782d43be4eSopenharmony_ci{ 14792d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 14802d43be4eSopenharmony_ci return; 14812d43be4eSopenharmony_ci } 14822d43be4eSopenharmony_ci DataAccessToken token; 14832d43be4eSopenharmony_ci sptr<INetConnCallback> callback = new (std::nothrow) TestCallback(); 14842d43be4eSopenharmony_ci if (callback == nullptr) { 14852d43be4eSopenharmony_ci std::cout << "callback is null" << std::endl; 14862d43be4eSopenharmony_ci return; 14872d43be4eSopenharmony_ci } 14882d43be4eSopenharmony_ci NetSpecifier netSpecifier; 14892d43be4eSopenharmony_ci NetAllCapabilities netAllCapabilities; 14902d43be4eSopenharmony_ci netAllCapabilities.netCaps_.insert(NetCap::NET_CAPABILITY_DUN); 14912d43be4eSopenharmony_ci netAllCapabilities.bearerTypes_.insert(NetBearType::BEARER_CELLULAR); 14922d43be4eSopenharmony_ci int32_t simId = CoreServiceClient::GetInstance().GetSimId(SIM_SLOT_ID_1); 14932d43be4eSopenharmony_ci netSpecifier.ident_ = "simId" + std::to_string(simId); 14942d43be4eSopenharmony_ci netSpecifier.netCapabilities_ = netAllCapabilities; 14952d43be4eSopenharmony_ci sptr<NetSpecifier> specifier = new (std::nothrow) NetSpecifier(netSpecifier); 14962d43be4eSopenharmony_ci if (specifier == nullptr) { 14972d43be4eSopenharmony_ci std::cout << "specifier is null" << std::endl; 14982d43be4eSopenharmony_ci return; 14992d43be4eSopenharmony_ci } 15002d43be4eSopenharmony_ci int32_t result = NetConnClient::GetInstance().RegisterNetConnCallback(specifier, callback, NET_REGISTER_TIMEOUT_MS); 15012d43be4eSopenharmony_ci std::cout << "RegisterNetConnCallback result [" << result << "]" << std::endl; 15022d43be4eSopenharmony_ci auto dunCallback = static_cast<TestCallback *>(callback.GetRefPtr()); 15032d43be4eSopenharmony_ci if (dunCallback == nullptr) { 15042d43be4eSopenharmony_ci std::cout << "dunCallback is null" << std::endl; 15052d43be4eSopenharmony_ci return; 15062d43be4eSopenharmony_ci } 15072d43be4eSopenharmony_ci int32_t count = 0; 15082d43be4eSopenharmony_ci while (count < MAX_TIMES) { 15092d43be4eSopenharmony_ci sleep(SLEEP_TIME); 15102d43be4eSopenharmony_ci if (dunCallback->isCallback_ == true) { 15112d43be4eSopenharmony_ci break; 15122d43be4eSopenharmony_ci } 15132d43be4eSopenharmony_ci count++; 15142d43be4eSopenharmony_ci } 15152d43be4eSopenharmony_ci ASSERT_TRUE(dunCallback->isCallback_); 15162d43be4eSopenharmony_ci result = NetConnClient::GetInstance().UnregisterNetConnCallback(callback); 15172d43be4eSopenharmony_ci std::cout << "UnregisterNetConnCallback result [" << result << "]" << std::endl; 15182d43be4eSopenharmony_ci} 15192d43be4eSopenharmony_ci 15202d43be4eSopenharmony_ci/** 15212d43be4eSopenharmony_ci * @tc.number IA_Apn_Test_01 15222d43be4eSopenharmony_ci * @tc.name Test the IA apn function 15232d43be4eSopenharmony_ci * @tc.desc Function test 15242d43be4eSopenharmony_ci */ 15252d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, IA_Apn_Test_01, TestSize.Level3) 15262d43be4eSopenharmony_ci{ 15272d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 15282d43be4eSopenharmony_ci return; 15292d43be4eSopenharmony_ci } 15302d43be4eSopenharmony_ci DataAccessToken token; 15312d43be4eSopenharmony_ci sptr<INetConnCallback> callback = new (std::nothrow) TestCallback(); 15322d43be4eSopenharmony_ci if (callback == nullptr) { 15332d43be4eSopenharmony_ci std::cout << "callback is null" << std::endl; 15342d43be4eSopenharmony_ci return; 15352d43be4eSopenharmony_ci } 15362d43be4eSopenharmony_ci NetSpecifier netSpecifier; 15372d43be4eSopenharmony_ci NetAllCapabilities netAllCapabilities; 15382d43be4eSopenharmony_ci netAllCapabilities.netCaps_.insert(NetCap::NET_CAPABILITY_IA); 15392d43be4eSopenharmony_ci netAllCapabilities.bearerTypes_.insert(NetBearType::BEARER_CELLULAR); 15402d43be4eSopenharmony_ci int32_t simId = CoreServiceClient::GetInstance().GetSimId(DEFAULT_SIM_SLOT_ID); 15412d43be4eSopenharmony_ci netSpecifier.ident_ = "simId" + std::to_string(simId); 15422d43be4eSopenharmony_ci netSpecifier.netCapabilities_ = netAllCapabilities; 15432d43be4eSopenharmony_ci sptr<NetSpecifier> specifier = new (std::nothrow) NetSpecifier(netSpecifier); 15442d43be4eSopenharmony_ci if (specifier == nullptr) { 15452d43be4eSopenharmony_ci std::cout << "specifier is null" << std::endl; 15462d43be4eSopenharmony_ci return; 15472d43be4eSopenharmony_ci } 15482d43be4eSopenharmony_ci int32_t result = NetConnClient::GetInstance().RegisterNetConnCallback(specifier, callback, NET_REGISTER_TIMEOUT_MS); 15492d43be4eSopenharmony_ci std::cout << "RegisterNetConnCallback result [" << result << "]" << std::endl; 15502d43be4eSopenharmony_ci auto iaCallback = static_cast<TestCallback *>(callback.GetRefPtr()); 15512d43be4eSopenharmony_ci if (iaCallback == nullptr) { 15522d43be4eSopenharmony_ci std::cout << "iaCallback is null" << std::endl; 15532d43be4eSopenharmony_ci return; 15542d43be4eSopenharmony_ci } 15552d43be4eSopenharmony_ci int32_t count = 0; 15562d43be4eSopenharmony_ci while (count < MAX_TIMES) { 15572d43be4eSopenharmony_ci sleep(SLEEP_TIME); 15582d43be4eSopenharmony_ci if (iaCallback->isCallback_ == true) { 15592d43be4eSopenharmony_ci break; 15602d43be4eSopenharmony_ci } 15612d43be4eSopenharmony_ci count++; 15622d43be4eSopenharmony_ci } 15632d43be4eSopenharmony_ci ASSERT_TRUE(iaCallback->isCallback_); 15642d43be4eSopenharmony_ci result = NetConnClient::GetInstance().UnregisterNetConnCallback(callback); 15652d43be4eSopenharmony_ci std::cout << "UnregisterNetConnCallback result [" << result << "]" << std::endl; 15662d43be4eSopenharmony_ci} 15672d43be4eSopenharmony_ci 15682d43be4eSopenharmony_ci/** 15692d43be4eSopenharmony_ci * @tc.number IA_Apn_Test_02 15702d43be4eSopenharmony_ci * @tc.name Test the IA apn function 15712d43be4eSopenharmony_ci * @tc.desc Function test 15722d43be4eSopenharmony_ci */ 15732d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, IA_Apn_Test_02, TestSize.Level3) 15742d43be4eSopenharmony_ci{ 15752d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 15762d43be4eSopenharmony_ci return; 15772d43be4eSopenharmony_ci } 15782d43be4eSopenharmony_ci DataAccessToken token; 15792d43be4eSopenharmony_ci sptr<INetConnCallback> callback = new (std::nothrow) TestCallback(); 15802d43be4eSopenharmony_ci if (callback == nullptr) { 15812d43be4eSopenharmony_ci std::cout << "callback is null" << std::endl; 15822d43be4eSopenharmony_ci return; 15832d43be4eSopenharmony_ci } 15842d43be4eSopenharmony_ci NetSpecifier netSpecifier; 15852d43be4eSopenharmony_ci NetAllCapabilities netAllCapabilities; 15862d43be4eSopenharmony_ci netAllCapabilities.netCaps_.insert(NetCap::NET_CAPABILITY_IA); 15872d43be4eSopenharmony_ci netAllCapabilities.bearerTypes_.insert(NetBearType::BEARER_CELLULAR); 15882d43be4eSopenharmony_ci int32_t simId = CoreServiceClient::GetInstance().GetSimId(SIM_SLOT_ID_1); 15892d43be4eSopenharmony_ci netSpecifier.ident_ = "simId" + std::to_string(simId); 15902d43be4eSopenharmony_ci netSpecifier.netCapabilities_ = netAllCapabilities; 15912d43be4eSopenharmony_ci sptr<NetSpecifier> specifier = new (std::nothrow) NetSpecifier(netSpecifier); 15922d43be4eSopenharmony_ci if (specifier == nullptr) { 15932d43be4eSopenharmony_ci std::cout << "specifier is null" << std::endl; 15942d43be4eSopenharmony_ci return; 15952d43be4eSopenharmony_ci } 15962d43be4eSopenharmony_ci int32_t result = NetConnClient::GetInstance().RegisterNetConnCallback(specifier, callback, NET_REGISTER_TIMEOUT_MS); 15972d43be4eSopenharmony_ci std::cout << "RegisterNetConnCallback result [" << result << "]" << std::endl; 15982d43be4eSopenharmony_ci auto iaCallback = static_cast<TestCallback *>(callback.GetRefPtr()); 15992d43be4eSopenharmony_ci if (iaCallback == nullptr) { 16002d43be4eSopenharmony_ci std::cout << "iaCallback is null" << std::endl; 16012d43be4eSopenharmony_ci return; 16022d43be4eSopenharmony_ci } 16032d43be4eSopenharmony_ci int32_t count = 0; 16042d43be4eSopenharmony_ci while (count < MAX_TIMES) { 16052d43be4eSopenharmony_ci sleep(SLEEP_TIME); 16062d43be4eSopenharmony_ci if (iaCallback->isCallback_ == true) { 16072d43be4eSopenharmony_ci break; 16082d43be4eSopenharmony_ci } 16092d43be4eSopenharmony_ci count++; 16102d43be4eSopenharmony_ci } 16112d43be4eSopenharmony_ci ASSERT_TRUE(iaCallback->isCallback_); 16122d43be4eSopenharmony_ci result = NetConnClient::GetInstance().UnregisterNetConnCallback(callback); 16132d43be4eSopenharmony_ci std::cout << "UnregisterNetConnCallback result [" << result << "]" << std::endl; 16142d43be4eSopenharmony_ci} 16152d43be4eSopenharmony_ci 16162d43be4eSopenharmony_ci/** 16172d43be4eSopenharmony_ci * @tc.number XCAP_Apn_Test_01 16182d43be4eSopenharmony_ci * @tc.name Test the XCAP apn function 16192d43be4eSopenharmony_ci * @tc.desc Function test 16202d43be4eSopenharmony_ci */ 16212d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, XCAP_Apn_Test_01, TestSize.Level3) 16222d43be4eSopenharmony_ci{ 16232d43be4eSopenharmony_ci if (!HasSimCard(DEFAULT_SIM_SLOT_ID)) { 16242d43be4eSopenharmony_ci return; 16252d43be4eSopenharmony_ci } 16262d43be4eSopenharmony_ci DataAccessToken token; 16272d43be4eSopenharmony_ci sptr<INetConnCallback> callback = new (std::nothrow) TestCallback(); 16282d43be4eSopenharmony_ci if (callback == nullptr) { 16292d43be4eSopenharmony_ci std::cout << "callback is null" << std::endl; 16302d43be4eSopenharmony_ci return; 16312d43be4eSopenharmony_ci } 16322d43be4eSopenharmony_ci NetSpecifier netSpecifier; 16332d43be4eSopenharmony_ci NetAllCapabilities netAllCapabilities; 16342d43be4eSopenharmony_ci netAllCapabilities.netCaps_.insert(NetCap::NET_CAPABILITY_XCAP); 16352d43be4eSopenharmony_ci netAllCapabilities.bearerTypes_.insert(NetBearType::BEARER_CELLULAR); 16362d43be4eSopenharmony_ci int32_t simId = CoreServiceClient::GetInstance().GetSimId(DEFAULT_SIM_SLOT_ID); 16372d43be4eSopenharmony_ci netSpecifier.ident_ = "simId" + std::to_string(simId); 16382d43be4eSopenharmony_ci netSpecifier.netCapabilities_ = netAllCapabilities; 16392d43be4eSopenharmony_ci sptr<NetSpecifier> specifier = new (std::nothrow) NetSpecifier(netSpecifier); 16402d43be4eSopenharmony_ci if (specifier == nullptr) { 16412d43be4eSopenharmony_ci std::cout << "specifier is null" << std::endl; 16422d43be4eSopenharmony_ci return; 16432d43be4eSopenharmony_ci } 16442d43be4eSopenharmony_ci int32_t result = NetConnClient::GetInstance().RegisterNetConnCallback(specifier, callback, NET_REGISTER_TIMEOUT_MS); 16452d43be4eSopenharmony_ci std::cout << "RegisterNetConnCallback result [" << result << "]" << std::endl; 16462d43be4eSopenharmony_ci auto xcapCallback = static_cast<TestCallback *>(callback.GetRefPtr()); 16472d43be4eSopenharmony_ci if (xcapCallback == nullptr) { 16482d43be4eSopenharmony_ci std::cout << "xcapCallback is null" << std::endl; 16492d43be4eSopenharmony_ci return; 16502d43be4eSopenharmony_ci } 16512d43be4eSopenharmony_ci int32_t count = 0; 16522d43be4eSopenharmony_ci while (count < MAX_TIMES) { 16532d43be4eSopenharmony_ci sleep(SLEEP_TIME); 16542d43be4eSopenharmony_ci if (xcapCallback->isCallback_ == true) { 16552d43be4eSopenharmony_ci break; 16562d43be4eSopenharmony_ci } 16572d43be4eSopenharmony_ci count++; 16582d43be4eSopenharmony_ci } 16592d43be4eSopenharmony_ci ASSERT_TRUE(xcapCallback->isCallback_); 16602d43be4eSopenharmony_ci result = NetConnClient::GetInstance().UnregisterNetConnCallback(callback); 16612d43be4eSopenharmony_ci std::cout << "UnregisterNetConnCallback result [" << result << "]" << std::endl; 16622d43be4eSopenharmony_ci} 16632d43be4eSopenharmony_ci 16642d43be4eSopenharmony_ci/** 16652d43be4eSopenharmony_ci * @tc.number XCAP_Apn_Test_02 16662d43be4eSopenharmony_ci * @tc.name Test the XCAP apn function 16672d43be4eSopenharmony_ci * @tc.desc Function test 16682d43be4eSopenharmony_ci */ 16692d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, XCAP_Apn_Test_02, TestSize.Level3) 16702d43be4eSopenharmony_ci{ 16712d43be4eSopenharmony_ci if (!HasSimCard(SIM_SLOT_ID_1)) { 16722d43be4eSopenharmony_ci return; 16732d43be4eSopenharmony_ci } 16742d43be4eSopenharmony_ci DataAccessToken token; 16752d43be4eSopenharmony_ci sptr<INetConnCallback> callback = new (std::nothrow) TestCallback(); 16762d43be4eSopenharmony_ci if (callback == nullptr) { 16772d43be4eSopenharmony_ci std::cout << "callback is null" << std::endl; 16782d43be4eSopenharmony_ci return; 16792d43be4eSopenharmony_ci } 16802d43be4eSopenharmony_ci NetSpecifier netSpecifier; 16812d43be4eSopenharmony_ci NetAllCapabilities netAllCapabilities; 16822d43be4eSopenharmony_ci netAllCapabilities.netCaps_.insert(NetCap::NET_CAPABILITY_XCAP); 16832d43be4eSopenharmony_ci netAllCapabilities.bearerTypes_.insert(NetBearType::BEARER_CELLULAR); 16842d43be4eSopenharmony_ci int32_t simId = CoreServiceClient::GetInstance().GetSimId(SIM_SLOT_ID_1); 16852d43be4eSopenharmony_ci netSpecifier.ident_ = "simId" + std::to_string(simId); 16862d43be4eSopenharmony_ci netSpecifier.netCapabilities_ = netAllCapabilities; 16872d43be4eSopenharmony_ci sptr<NetSpecifier> specifier = new (std::nothrow) NetSpecifier(netSpecifier); 16882d43be4eSopenharmony_ci if (specifier == nullptr) { 16892d43be4eSopenharmony_ci std::cout << "specifier is null" << std::endl; 16902d43be4eSopenharmony_ci return; 16912d43be4eSopenharmony_ci } 16922d43be4eSopenharmony_ci int32_t result = NetConnClient::GetInstance().RegisterNetConnCallback(specifier, callback, NET_REGISTER_TIMEOUT_MS); 16932d43be4eSopenharmony_ci std::cout << "RegisterNetConnCallback result [" << result << "]" << std::endl; 16942d43be4eSopenharmony_ci auto xcapCallback = static_cast<TestCallback *>(callback.GetRefPtr()); 16952d43be4eSopenharmony_ci if (xcapCallback == nullptr) { 16962d43be4eSopenharmony_ci std::cout << "xcapCallback is null" << std::endl; 16972d43be4eSopenharmony_ci return; 16982d43be4eSopenharmony_ci } 16992d43be4eSopenharmony_ci int32_t count = 0; 17002d43be4eSopenharmony_ci while (count < MAX_TIMES) { 17012d43be4eSopenharmony_ci sleep(SLEEP_TIME); 17022d43be4eSopenharmony_ci if (xcapCallback->isCallback_ == true) { 17032d43be4eSopenharmony_ci break; 17042d43be4eSopenharmony_ci } 17052d43be4eSopenharmony_ci count++; 17062d43be4eSopenharmony_ci } 17072d43be4eSopenharmony_ci ASSERT_TRUE(xcapCallback->isCallback_); 17082d43be4eSopenharmony_ci result = NetConnClient::GetInstance().UnregisterNetConnCallback(callback); 17092d43be4eSopenharmony_ci std::cout << "UnregisterNetConnCallback result [" << result << "]" << std::endl; 17102d43be4eSopenharmony_ci} 17112d43be4eSopenharmony_ci 17122d43be4eSopenharmony_ci/** 17132d43be4eSopenharmony_ci * @tc.number RequestNetwork_001 17142d43be4eSopenharmony_ci * @tc.name Test the function 17152d43be4eSopenharmony_ci * @tc.desc Function test 17162d43be4eSopenharmony_ci */ 17172d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, RequestNetwork_001, TestSize.Level3) 17182d43be4eSopenharmony_ci{ 17192d43be4eSopenharmony_ci std::string ident = "testIdent"; 17202d43be4eSopenharmony_ci std::set<NetCap> netCaps; 17212d43be4eSopenharmony_ci NetManagerStandard::NetRequest netrequest; 17222d43be4eSopenharmony_ci int32_t result = netAgent.callBack_->RequestNetwork(ident, netCaps, netrequest); 17232d43be4eSopenharmony_ci ASSERT_EQ(result, CELLULAR_DATA_INVALID_PARAM); 17242d43be4eSopenharmony_ci} 17252d43be4eSopenharmony_ci 17262d43be4eSopenharmony_ci/** 17272d43be4eSopenharmony_ci * @tc.number RequestNetwork_002 17282d43be4eSopenharmony_ci * @tc.name Test the function 17292d43be4eSopenharmony_ci * @tc.desc Function test 17302d43be4eSopenharmony_ci */ 17312d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, RequestNetwork_002, TestSize.Level3) 17322d43be4eSopenharmony_ci{ 17332d43be4eSopenharmony_ci std::string ident = "testIdent"; 17342d43be4eSopenharmony_ci std::set<NetCap> netCaps = { NetManagerStandard::NetCap::NET_CAPABILITY_INTERNET }; 17352d43be4eSopenharmony_ci NetManagerStandard::NetRequest netrequest; 17362d43be4eSopenharmony_ci int32_t result = netAgent.callBack_->RequestNetwork(ident, netCaps, netrequest); 17372d43be4eSopenharmony_ci ASSERT_EQ(result, CELLULAR_DATA_INVALID_PARAM); 17382d43be4eSopenharmony_ci} 17392d43be4eSopenharmony_ci 17402d43be4eSopenharmony_ci/** 17412d43be4eSopenharmony_ci * @tc.number ReleaseNetwork_001 17422d43be4eSopenharmony_ci * @tc.name Test the function 17432d43be4eSopenharmony_ci * @tc.desc Function test 17442d43be4eSopenharmony_ci */ 17452d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ReleaseNetwork_001, TestSize.Level3) 17462d43be4eSopenharmony_ci{ 17472d43be4eSopenharmony_ci std::string ident = "testIdent"; 17482d43be4eSopenharmony_ci std::set<NetCap> netCaps; 17492d43be4eSopenharmony_ci int32_t result = netAgent.callBack_->ReleaseNetwork(ident, netCaps); 17502d43be4eSopenharmony_ci ASSERT_EQ(result, CELLULAR_DATA_INVALID_PARAM); 17512d43be4eSopenharmony_ci} 17522d43be4eSopenharmony_ci 17532d43be4eSopenharmony_ci/** 17542d43be4eSopenharmony_ci * @tc.number ReleaseNetwork_002 17552d43be4eSopenharmony_ci * @tc.name Test the function 17562d43be4eSopenharmony_ci * @tc.desc Function test 17572d43be4eSopenharmony_ci */ 17582d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ReleaseNetwork_002, TestSize.Level3) 17592d43be4eSopenharmony_ci{ 17602d43be4eSopenharmony_ci std::string ident = "testIdent"; 17612d43be4eSopenharmony_ci std::set<NetCap> netCaps = { NetManagerStandard::NetCap::NET_CAPABILITY_INTERNET }; 17622d43be4eSopenharmony_ci int32_t result = netAgent.callBack_->ReleaseNetwork(ident, netCaps); 17632d43be4eSopenharmony_ci ASSERT_EQ(result, CELLULAR_DATA_INVALID_PARAM); 17642d43be4eSopenharmony_ci} 17652d43be4eSopenharmony_ci 17662d43be4eSopenharmony_ci/** 17672d43be4eSopenharmony_ci * @tc.number NetStrategySwitch_001 17682d43be4eSopenharmony_ci * @tc.name Test the function 17692d43be4eSopenharmony_ci * @tc.desc Function test 17702d43be4eSopenharmony_ci */ 17712d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, NetStrategySwitch_001, TestSize.Level3) 17722d43be4eSopenharmony_ci{ 17732d43be4eSopenharmony_ci int32_t result = netAgent.tacticsCallBack_->NetStrategySwitch("", true); 17742d43be4eSopenharmony_ci ASSERT_EQ(result, CELLULAR_DATA_INVALID_PARAM); 17752d43be4eSopenharmony_ci} 17762d43be4eSopenharmony_ci 17772d43be4eSopenharmony_ci/** 17782d43be4eSopenharmony_ci * @tc.number NetStrategySwitch_002 17792d43be4eSopenharmony_ci * @tc.name Test the function 17802d43be4eSopenharmony_ci * @tc.desc Function test 17812d43be4eSopenharmony_ci */ 17822d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, NetStrategySwitch_002, TestSize.Level3) 17832d43be4eSopenharmony_ci{ 17842d43be4eSopenharmony_ci int32_t result = netAgent.tacticsCallBack_->NetStrategySwitch("abc", true); 17852d43be4eSopenharmony_ci ASSERT_EQ(result, CELLULAR_DATA_INVALID_PARAM); 17862d43be4eSopenharmony_ci} 17872d43be4eSopenharmony_ci 17882d43be4eSopenharmony_ci/** 17892d43be4eSopenharmony_ci * @tc.number NetStrategySwitch_003 17902d43be4eSopenharmony_ci * @tc.name Test the function 17912d43be4eSopenharmony_ci * @tc.desc Function test 17922d43be4eSopenharmony_ci */ 17932d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, NetStrategySwitch_003, TestSize.Level3) 17942d43be4eSopenharmony_ci{ 17952d43be4eSopenharmony_ci int32_t result = netAgent.tacticsCallBack_->NetStrategySwitch("123", true); 17962d43be4eSopenharmony_ci ASSERT_EQ(result, CELLULAR_DATA_INVALID_PARAM); 17972d43be4eSopenharmony_ci} 17982d43be4eSopenharmony_ci 17992d43be4eSopenharmony_ci/** 18002d43be4eSopenharmony_ci * @tc.number RdbUpdate_001 18012d43be4eSopenharmony_ci * @tc.name Test the function 18022d43be4eSopenharmony_ci * @tc.desc Function test 18032d43be4eSopenharmony_ci */ 18042d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, RdbUpdate_001, TestSize.Level3) 18052d43be4eSopenharmony_ci{ 18062d43be4eSopenharmony_ci DataShare::DataShareValuesBucket values; 18072d43be4eSopenharmony_ci DataShare::DataSharePredicates predicates; 18082d43be4eSopenharmony_ci CellularDataRdbHelper cellularDataRdbHelper; 18092d43be4eSopenharmony_ci int result = cellularDataRdbHelper.Update(values, predicates); 18102d43be4eSopenharmony_ci ASSERT_EQ(result, NULL_POINTER_EXCEPTION); 18112d43be4eSopenharmony_ci} 18122d43be4eSopenharmony_ci 18132d43be4eSopenharmony_ci/** 18142d43be4eSopenharmony_ci * @tc.number RdbInsert_001 18152d43be4eSopenharmony_ci * @tc.name Test the function 18162d43be4eSopenharmony_ci * @tc.desc Function test 18172d43be4eSopenharmony_ci */ 18182d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, RdbInsert_001, TestSize.Level3) 18192d43be4eSopenharmony_ci{ 18202d43be4eSopenharmony_ci DataShare::DataShareValuesBucket values; 18212d43be4eSopenharmony_ci CellularDataRdbHelper cellularDataRdbHelper; 18222d43be4eSopenharmony_ci int result = cellularDataRdbHelper.Insert(values); 18232d43be4eSopenharmony_ci ASSERT_EQ(result, NULL_POINTER_EXCEPTION); 18242d43be4eSopenharmony_ci} 18252d43be4eSopenharmony_ci 18262d43be4eSopenharmony_ci/** 18272d43be4eSopenharmony_ci * @tc.number QueryApns_001 18282d43be4eSopenharmony_ci * @tc.name Test the function 18292d43be4eSopenharmony_ci * @tc.desc Function test 18302d43be4eSopenharmony_ci */ 18312d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, QueryApns_001, TestSize.Level3) 18322d43be4eSopenharmony_ci{ 18332d43be4eSopenharmony_ci std::string mcc = "123"; 18342d43be4eSopenharmony_ci std::string mnc = "456"; 18352d43be4eSopenharmony_ci std::vector<PdpProfile> apnVec; 18362d43be4eSopenharmony_ci int32_t slotId = 0; 18372d43be4eSopenharmony_ci CellularDataRdbHelper cellularDataRdbHelper; 18382d43be4eSopenharmony_ci bool result = cellularDataRdbHelper.QueryApns(mcc, mnc, apnVec, slotId); 18392d43be4eSopenharmony_ci ASSERT_FALSE(result); 18402d43be4eSopenharmony_ci} 18412d43be4eSopenharmony_ci 18422d43be4eSopenharmony_ci 18432d43be4eSopenharmony_ci/** 18442d43be4eSopenharmony_ci * @tc.number QueryMvnoApnsByType_001 18452d43be4eSopenharmony_ci * @tc.name Test the function 18462d43be4eSopenharmony_ci * @tc.desc Function test 18472d43be4eSopenharmony_ci */ 18482d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, QueryMvnoApnsByType_001, TestSize.Level3) 18492d43be4eSopenharmony_ci{ 18502d43be4eSopenharmony_ci std::string mcc = "123"; 18512d43be4eSopenharmony_ci std::string mnc = "456"; 18522d43be4eSopenharmony_ci std::string mvnoType = "789"; 18532d43be4eSopenharmony_ci std::string mvnoDataFromSim = ""; 18542d43be4eSopenharmony_ci std::vector<PdpProfile> mvnoApnVec; 18552d43be4eSopenharmony_ci int32_t slotId = 0; 18562d43be4eSopenharmony_ci CellularDataRdbHelper cellularDataRdbHelper; 18572d43be4eSopenharmony_ci bool result = cellularDataRdbHelper.QueryMvnoApnsByType(mcc, mnc, mvnoType, mvnoDataFromSim, mvnoApnVec, slotId); 18582d43be4eSopenharmony_ci ASSERT_TRUE(result); 18592d43be4eSopenharmony_ci} 18602d43be4eSopenharmony_ci 18612d43be4eSopenharmony_ci/** 18622d43be4eSopenharmony_ci * @tc.number QueryMvnoApnsByType_002 18632d43be4eSopenharmony_ci * @tc.name Test the function 18642d43be4eSopenharmony_ci * @tc.desc Function test 18652d43be4eSopenharmony_ci */ 18662d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, QueryMvnoApnsByType_002, TestSize.Level3) 18672d43be4eSopenharmony_ci{ 18682d43be4eSopenharmony_ci std::string mcc = "123"; 18692d43be4eSopenharmony_ci std::string mnc = "456"; 18702d43be4eSopenharmony_ci std::string mvnoType = "789"; 18712d43be4eSopenharmony_ci std::string mvnoDataFromSim = "012"; 18722d43be4eSopenharmony_ci std::vector<PdpProfile> mvnoApnVec; 18732d43be4eSopenharmony_ci int32_t slotId = 0; 18742d43be4eSopenharmony_ci CellularDataRdbHelper cellularDataRdbHelper; 18752d43be4eSopenharmony_ci bool result = cellularDataRdbHelper.QueryMvnoApnsByType(mcc, mnc, mvnoType, mvnoDataFromSim, mvnoApnVec, slotId); 18762d43be4eSopenharmony_ci ASSERT_FALSE(result); 18772d43be4eSopenharmony_ci} 18782d43be4eSopenharmony_ci 18792d43be4eSopenharmony_ci/** 18802d43be4eSopenharmony_ci * @tc.number ReadApnResult_001 18812d43be4eSopenharmony_ci * @tc.name Test the function 18822d43be4eSopenharmony_ci * @tc.desc Function test 18832d43be4eSopenharmony_ci */ 18842d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ReadApnResult_001, TestSize.Level3) 18852d43be4eSopenharmony_ci{ 18862d43be4eSopenharmony_ci std::shared_ptr<DataShare::DataShareResultSet> result = nullptr; 18872d43be4eSopenharmony_ci std::vector<PdpProfile> apnVec; 18882d43be4eSopenharmony_ci CellularDataRdbHelper cellularDataRdbHelper; 18892d43be4eSopenharmony_ci cellularDataRdbHelper.ReadApnResult(nullptr, apnVec); 18902d43be4eSopenharmony_ci ASSERT_TRUE(apnVec.empty()); 18912d43be4eSopenharmony_ci} 18922d43be4eSopenharmony_ci 18932d43be4eSopenharmony_ci/** 18942d43be4eSopenharmony_ci * @tc.number ReadApnResult_002 18952d43be4eSopenharmony_ci * @tc.name Test the function 18962d43be4eSopenharmony_ci * @tc.desc Function test 18972d43be4eSopenharmony_ci */ 18982d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ReadApnResult_002, TestSize.Level3) 18992d43be4eSopenharmony_ci{ 19002d43be4eSopenharmony_ci std::shared_ptr<DataShare::DataShareResultSet> result = std::make_shared<DataShare::DataShareResultSet>(); 19012d43be4eSopenharmony_ci std::vector<PdpProfile> apnVec; 19022d43be4eSopenharmony_ci CellularDataRdbHelper cellularDataRdbHelper; 19032d43be4eSopenharmony_ci cellularDataRdbHelper.ReadApnResult(nullptr, apnVec); 19042d43be4eSopenharmony_ci ASSERT_TRUE(apnVec.empty()); 19052d43be4eSopenharmony_ci} 19062d43be4eSopenharmony_ci 19072d43be4eSopenharmony_ci#else // TEL_TEST_UNSUPPORT 19082d43be4eSopenharmony_ci/** 19092d43be4eSopenharmony_ci * @tc.number DataMock_Test_01 19102d43be4eSopenharmony_ci * @tc.name Test for unsupport platform 19112d43be4eSopenharmony_ci * @tc.desc Function test 19122d43be4eSopenharmony_ci */ 19132d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, DataMock_Test_01, TestSize.Level3) 19142d43be4eSopenharmony_ci{ 19152d43be4eSopenharmony_ci EXPECT_TRUE(true); 19162d43be4eSopenharmony_ci} 19172d43be4eSopenharmony_ci#endif // TEL_TEST_UNSUPPORT 19182d43be4eSopenharmony_ci/** 19192d43be4eSopenharmony_ci * @tc.number CellularDataControllerAddUid_Test_01 19202d43be4eSopenharmony_ci * @tc.name Test the CellularDataControllerAddUid function 19212d43be4eSopenharmony_ci * @tc.desc Function test 19222d43be4eSopenharmony_ci */ 19232d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, CellularDataControllerAddUid_Test_01, TestSize.Level3) 19242d43be4eSopenharmony_ci{ 19252d43be4eSopenharmony_ci auto controller = std::make_shared<CellularDataController>(DEFAULT_SIM_SLOT_ID); 19262d43be4eSopenharmony_ci controller->cellularDataHandler_ = nullptr; 19272d43be4eSopenharmony_ci NetRequest request; 19282d43be4eSopenharmony_ci request.uid = 0; 19292d43be4eSopenharmony_ci ASSERT_FALSE(controller->AddUid(request)); 19302d43be4eSopenharmony_ci} 19312d43be4eSopenharmony_ci 19322d43be4eSopenharmony_ci/** 19332d43be4eSopenharmony_ci * @tc.number CellularDataControllerRemoveUid_Test_01 19342d43be4eSopenharmony_ci * @tc.name Test the CellularDataControllerRemoveUid function 19352d43be4eSopenharmony_ci * @tc.desc Function test 19362d43be4eSopenharmony_ci */ 19372d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, CellularDataControllerRemoveUid_Test_1, TestSize.Level3) 19382d43be4eSopenharmony_ci{ 19392d43be4eSopenharmony_ci auto controller = std::make_shared<CellularDataController>(DEFAULT_SIM_SLOT_ID); 19402d43be4eSopenharmony_ci controller->cellularDataHandler_ = nullptr; 19412d43be4eSopenharmony_ci NetRequest request; 19422d43be4eSopenharmony_ci request.uid = 0; 19432d43be4eSopenharmony_ci ASSERT_FALSE(controller->RemoveUid(request)); 19442d43be4eSopenharmony_ci} 19452d43be4eSopenharmony_ci 19462d43be4eSopenharmony_ci/** 19472d43be4eSopenharmony_ci * @tc.number ControllerReleaseCellularDataConnection_Test_01 19482d43be4eSopenharmony_ci * @tc.name Test the Controlle ReleaseCellularDataConnection function 19492d43be4eSopenharmony_ci * @tc.desc Function test 19502d43be4eSopenharmony_ci */ 19512d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ControllerReleaseCellularDataConnection_Test_1, TestSize.Level3) 19522d43be4eSopenharmony_ci{ 19532d43be4eSopenharmony_ci auto controller = std::make_shared<CellularDataController>(DEFAULT_SIM_SLOT_ID); 19542d43be4eSopenharmony_ci controller->cellularDataHandler_ = nullptr; 19552d43be4eSopenharmony_ci ASSERT_FALSE(controller->ReleaseCellularDataConnection()); 19562d43be4eSopenharmony_ci} 19572d43be4eSopenharmony_ci/** 19582d43be4eSopenharmony_ci * @tc.number ControllerReleaseCellularDataConnection_Test_02 19592d43be4eSopenharmony_ci * @tc.name Test the Controller ReleaseCellularDataConnection function 19602d43be4eSopenharmony_ci * @tc.desc Function test 19612d43be4eSopenharmony_ci */ 19622d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ControllerReleaseCellularDataConnection_Test_2, TestSize.Level3) 19632d43be4eSopenharmony_ci{ 19642d43be4eSopenharmony_ci auto controller = std::make_shared<CellularDataController>(DEFAULT_SIM_SLOT_ID); 19652d43be4eSopenharmony_ci controller->Init(); 19662d43be4eSopenharmony_ci ASSERT_TRUE(controller->cellularDataHandler_ != nullptr); 19672d43be4eSopenharmony_ci NetRequest request; 19682d43be4eSopenharmony_ci ASSERT_TRUE(controller->ReleaseCellularDataConnection()); 19692d43be4eSopenharmony_ci} 19702d43be4eSopenharmony_ci 19712d43be4eSopenharmony_ci/** 19722d43be4eSopenharmony_ci * @tc.number ControllerUpdateNetworkInfo_Test_01 19732d43be4eSopenharmony_ci * @tc.name Test the Controller UpdateNetworkInfo function 19742d43be4eSopenharmony_ci * @tc.desc Function test 19752d43be4eSopenharmony_ci */ 19762d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ControllerUpdateNetworkInfo_Test_01, TestSize.Level3) 19772d43be4eSopenharmony_ci{ 19782d43be4eSopenharmony_ci auto controller = std::make_shared<CellularDataController>(DEFAULT_SIM_SLOT_ID); 19792d43be4eSopenharmony_ci ASSERT_TRUE(controller->cellularDataHandler_ == nullptr); 19802d43be4eSopenharmony_ci ASSERT_FALSE(controller->UpdateNetworkInfo()); 19812d43be4eSopenharmony_ci} 19822d43be4eSopenharmony_ci 19832d43be4eSopenharmony_ci/** 19842d43be4eSopenharmony_ci * @tc.number ControllerUpdateNetworkInfo_Test_02 19852d43be4eSopenharmony_ci * @tc.name Test the Controller UpdateNetworkInfo function 19862d43be4eSopenharmony_ci * @tc.desc Function test 19872d43be4eSopenharmony_ci */ 19882d43be4eSopenharmony_ciHWTEST_F(CellularDataTest, ControllerUpdateNetworkInfo_Test_02, TestSize.Level3) 19892d43be4eSopenharmony_ci{ 19902d43be4eSopenharmony_ci auto controller = std::make_shared<CellularDataController>(DEFAULT_SIM_SLOT_ID); 19912d43be4eSopenharmony_ci EventFwk::MatchingSkills matchingSkills; 19922d43be4eSopenharmony_ci matchingSkills.AddEvent(EventFwk::CommonEventSupport::COMMON_EVENT_CALL_STATE_CHANGED); 19932d43be4eSopenharmony_ci EventFwk::CommonEventSubscribeInfo subscriberInfo(matchingSkills); 19942d43be4eSopenharmony_ci auto cellularDataHandler = std::make_shared<CellularDataHandler>(subscriberInfo, 0); 19952d43be4eSopenharmony_ci cellularDataHandler->Init(); 19962d43be4eSopenharmony_ci controller->cellularDataHandler_ = cellularDataHandler; 19972d43be4eSopenharmony_ci ASSERT_TRUE(controller->cellularDataHandler_ != nullptr); 19982d43be4eSopenharmony_ci ASSERT_TRUE(controller->UpdateNetworkInfo()); 19992d43be4eSopenharmony_ci} 20002d43be4eSopenharmony_ci 20012d43be4eSopenharmony_ci} // namespace Telephony 20022d43be4eSopenharmony_ci} // namespace OHOS 2003