1e5d0e473Sopenharmony_ci/* 2e5d0e473Sopenharmony_ci * Copyright (C) 2023-2024 Huawei Device Co., Ltd. 3e5d0e473Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4e5d0e473Sopenharmony_ci * you may not use this file except in compliance with the License. 5e5d0e473Sopenharmony_ci * You may obtain a copy of the License at 6e5d0e473Sopenharmony_ci * 7e5d0e473Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8e5d0e473Sopenharmony_ci * 9e5d0e473Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10e5d0e473Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11e5d0e473Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12e5d0e473Sopenharmony_ci * See the License for the specific language governing permissions and 13e5d0e473Sopenharmony_ci * limitations under the License. 14e5d0e473Sopenharmony_ci */ 15e5d0e473Sopenharmony_ci 16e5d0e473Sopenharmony_ci#include "core_service_client.h" 17e5d0e473Sopenharmony_ci#include "gtest/gtest.h" 18e5d0e473Sopenharmony_ci#include "i_sms_service_interface.h" 19e5d0e473Sopenharmony_ci#include "if_system_ability_manager.h" 20e5d0e473Sopenharmony_ci#include "iservice_registry.h" 21e5d0e473Sopenharmony_ci#include "radio_event.h" 22e5d0e473Sopenharmony_ci#include "sms_broadcast_subscriber_gtest.h" 23e5d0e473Sopenharmony_ci#include "sms_mms_gtest.h" 24e5d0e473Sopenharmony_ci#include "sms_mms_test_helper.h" 25e5d0e473Sopenharmony_ci#include "sms_service.h" 26e5d0e473Sopenharmony_ci#include "sms_service_manager_client.h" 27e5d0e473Sopenharmony_ci#include "telephony_log_wrapper.h" 28e5d0e473Sopenharmony_ci#include "telephony_types.h" 29e5d0e473Sopenharmony_ci 30e5d0e473Sopenharmony_cinamespace OHOS { 31e5d0e473Sopenharmony_cinamespace Telephony { 32e5d0e473Sopenharmony_cinamespace { 33e5d0e473Sopenharmony_cisptr<ISmsServiceInterface> g_telephonyService = nullptr; 34e5d0e473Sopenharmony_ci} // namespace 35e5d0e473Sopenharmony_ciusing namespace testing::ext; 36e5d0e473Sopenharmony_ci 37e5d0e473Sopenharmony_ciclass CbGtest : public testing::Test { 38e5d0e473Sopenharmony_cipublic: 39e5d0e473Sopenharmony_ci static void SetUpTestCase(); 40e5d0e473Sopenharmony_ci static void TearDownTestCase(); 41e5d0e473Sopenharmony_ci void SetUp(); 42e5d0e473Sopenharmony_ci void TearDown(); 43e5d0e473Sopenharmony_ci static sptr<ISmsServiceInterface> GetProxy(); 44e5d0e473Sopenharmony_ci static bool HasSimCard(int32_t slotId) 45e5d0e473Sopenharmony_ci { 46e5d0e473Sopenharmony_ci bool hasSimCard = false; 47e5d0e473Sopenharmony_ci if (CoreServiceClient::GetInstance().GetProxy() == nullptr) { 48e5d0e473Sopenharmony_ci return hasSimCard; 49e5d0e473Sopenharmony_ci } 50e5d0e473Sopenharmony_ci CoreServiceClient::GetInstance().HasSimCard(slotId, hasSimCard); 51e5d0e473Sopenharmony_ci return hasSimCard; 52e5d0e473Sopenharmony_ci } 53e5d0e473Sopenharmony_ci}; 54e5d0e473Sopenharmony_ci 55e5d0e473Sopenharmony_civoid CbGtest::TearDownTestCase() {} 56e5d0e473Sopenharmony_ci 57e5d0e473Sopenharmony_civoid CbGtest::SetUp() {} 58e5d0e473Sopenharmony_ci 59e5d0e473Sopenharmony_civoid CbGtest::TearDown() {} 60e5d0e473Sopenharmony_ci 61e5d0e473Sopenharmony_ciconst int32_t DEFAULT_SIM_SLOT_ID_1 = 1; 62e5d0e473Sopenharmony_ciconst uint16_t MESSAGE_TYPE = 4; 63e5d0e473Sopenharmony_ciconst uint16_t CB_PDU_LEN = 100; 64e5d0e473Sopenharmony_ci 65e5d0e473Sopenharmony_civoid CbGtest::SetUpTestCase() 66e5d0e473Sopenharmony_ci{ 67e5d0e473Sopenharmony_ci TELEPHONY_LOGI("SetUpTestCase slotId%{public}d", DEFAULT_SIM_SLOT_ID_1); 68e5d0e473Sopenharmony_ci g_telephonyService = GetProxy(); 69e5d0e473Sopenharmony_ci if (g_telephonyService == nullptr) { 70e5d0e473Sopenharmony_ci return; 71e5d0e473Sopenharmony_ci } 72e5d0e473Sopenharmony_ci Singleton<SmsServiceManagerClient>::GetInstance().ResetSmsServiceProxy(); 73e5d0e473Sopenharmony_ci Singleton<SmsServiceManagerClient>::GetInstance().InitSmsServiceProxy(); 74e5d0e473Sopenharmony_ci} 75e5d0e473Sopenharmony_ci 76e5d0e473Sopenharmony_cisptr<ISmsServiceInterface> CbGtest::GetProxy() 77e5d0e473Sopenharmony_ci{ 78e5d0e473Sopenharmony_ci auto systemAbilityMgr = SystemAbilityManagerClient::GetInstance().GetSystemAbilityManager(); 79e5d0e473Sopenharmony_ci if (systemAbilityMgr == nullptr) { 80e5d0e473Sopenharmony_ci return nullptr; 81e5d0e473Sopenharmony_ci } 82e5d0e473Sopenharmony_ci sptr<IRemoteObject> remote = systemAbilityMgr->CheckSystemAbility(TELEPHONY_SMS_MMS_SYS_ABILITY_ID); 83e5d0e473Sopenharmony_ci if (remote) { 84e5d0e473Sopenharmony_ci sptr<ISmsServiceInterface> smsService = iface_cast<ISmsServiceInterface>(remote); 85e5d0e473Sopenharmony_ci return smsService; 86e5d0e473Sopenharmony_ci } 87e5d0e473Sopenharmony_ci return nullptr; 88e5d0e473Sopenharmony_ci} 89e5d0e473Sopenharmony_ci 90e5d0e473Sopenharmony_ci#ifndef TEL_TEST_UNSUPPORT 91e5d0e473Sopenharmony_civoid OpenCellBroadcastTestFuc(SmsMmsTestHelper &helper) 92e5d0e473Sopenharmony_ci{ 93e5d0e473Sopenharmony_ci AccessMmsToken token; 94e5d0e473Sopenharmony_ci bool enable = true; 95e5d0e473Sopenharmony_ci uint32_t fromMsgId = 0; 96e5d0e473Sopenharmony_ci uint32_t toMsgId = 10; 97e5d0e473Sopenharmony_ci uint8_t netType = 1; 98e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 99e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 100e5d0e473Sopenharmony_ci helper.SetIntResult(result); 101e5d0e473Sopenharmony_ci helper.NotifyAll(); 102e5d0e473Sopenharmony_ci} 103e5d0e473Sopenharmony_ci 104e5d0e473Sopenharmony_ci/** 105e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0001 106e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast slotId is -1 107e5d0e473Sopenharmony_ci * @tc.desc Function test 108e5d0e473Sopenharmony_ci */ 109e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_0001, Function | MediumTest | Level3) 110e5d0e473Sopenharmony_ci{ 111e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0001 -->"); 112e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 113e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 114e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 115e5d0e473Sopenharmony_ci return; 116e5d0e473Sopenharmony_ci } 117e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 118e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_REMOVE; 119e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc, std::ref(helper))) { 120e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc out of time"); 121e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc, std::ref(helper))); 122e5d0e473Sopenharmony_ci } 123e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0001 -->finished"); 124e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 125e5d0e473Sopenharmony_ci} 126e5d0e473Sopenharmony_ci 127e5d0e473Sopenharmony_civoid OpenCellBroadcastTestFuc2(SmsMmsTestHelper &helper) 128e5d0e473Sopenharmony_ci{ 129e5d0e473Sopenharmony_ci AccessMmsToken token; 130e5d0e473Sopenharmony_ci bool enable = true; 131e5d0e473Sopenharmony_ci uint32_t fromMsgId = 20; 132e5d0e473Sopenharmony_ci uint32_t toMsgId = 10; 133e5d0e473Sopenharmony_ci uint8_t netType = 1; 134e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 135e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 136e5d0e473Sopenharmony_ci helper.SetIntResult(result); 137e5d0e473Sopenharmony_ci helper.NotifyAll(); 138e5d0e473Sopenharmony_ci} 139e5d0e473Sopenharmony_ci 140e5d0e473Sopenharmony_civoid OpenCellBroadcastTestFuc3(SmsMmsTestHelper &helper) 141e5d0e473Sopenharmony_ci{ 142e5d0e473Sopenharmony_ci AccessMmsToken token; 143e5d0e473Sopenharmony_ci bool enable = true; 144e5d0e473Sopenharmony_ci uint32_t fromMsgId = 0; 145e5d0e473Sopenharmony_ci uint32_t toMsgId = 10; 146e5d0e473Sopenharmony_ci uint8_t netType = 3; 147e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 148e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 149e5d0e473Sopenharmony_ci helper.SetIntResult(result); 150e5d0e473Sopenharmony_ci helper.NotifyAll(); 151e5d0e473Sopenharmony_ci} 152e5d0e473Sopenharmony_ci 153e5d0e473Sopenharmony_ci/** 154e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0003 155e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast netType is unknown. 156e5d0e473Sopenharmony_ci * @tc.desc Function test 157e5d0e473Sopenharmony_ci */ 158e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_0003, Function | MediumTest | Level3) 159e5d0e473Sopenharmony_ci{ 160e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0003 -->"); 161e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 162e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 163e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 164e5d0e473Sopenharmony_ci return; 165e5d0e473Sopenharmony_ci } 166e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 167e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 168e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc3, std::ref(helper))) { 169e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc3 out of time"); 170e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc3, std::ref(helper))); 171e5d0e473Sopenharmony_ci } 172e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0003 -->finished"); 173e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 174e5d0e473Sopenharmony_ci} 175e5d0e473Sopenharmony_ci 176e5d0e473Sopenharmony_civoid OpenCellBroadcastTestFuc4(SmsMmsTestHelper &helper) 177e5d0e473Sopenharmony_ci{ 178e5d0e473Sopenharmony_ci AccessMmsToken token; 179e5d0e473Sopenharmony_ci bool enable = true; 180e5d0e473Sopenharmony_ci uint32_t fromMsgId = 0; 181e5d0e473Sopenharmony_ci uint32_t toMsgId = 10; 182e5d0e473Sopenharmony_ci uint8_t netType = 1; 183e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 184e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 185e5d0e473Sopenharmony_ci helper.SetIntResult(result); 186e5d0e473Sopenharmony_ci helper.NotifyAll(); 187e5d0e473Sopenharmony_ci} 188e5d0e473Sopenharmony_ci 189e5d0e473Sopenharmony_ci/** 190e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0004 191e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast parameter is valid. 192e5d0e473Sopenharmony_ci * @tc.desc Function test 193e5d0e473Sopenharmony_ci */ 194e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_0004, Function | MediumTest | Level3) 195e5d0e473Sopenharmony_ci{ 196e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0004 -->"); 197e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 198e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 199e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 200e5d0e473Sopenharmony_ci return; 201e5d0e473Sopenharmony_ci } 202e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 203e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 204e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc4, std::ref(helper))) { 205e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc4 out of time"); 206e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc4, std::ref(helper))); 207e5d0e473Sopenharmony_ci } 208e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0004 -->finished"); 209e5d0e473Sopenharmony_ci ASSERT_GE(helper.GetIntResult(), 0); 210e5d0e473Sopenharmony_ci} 211e5d0e473Sopenharmony_ci 212e5d0e473Sopenharmony_civoid OpenCellBroadcastTestFuc5(SmsMmsTestHelper &helper) 213e5d0e473Sopenharmony_ci{ 214e5d0e473Sopenharmony_ci AccessMmsToken token; 215e5d0e473Sopenharmony_ci bool enable = true; 216e5d0e473Sopenharmony_ci uint32_t fromMsgId = 0; 217e5d0e473Sopenharmony_ci uint32_t toMsgId = 1000; 218e5d0e473Sopenharmony_ci uint8_t netType = 1; 219e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 220e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 221e5d0e473Sopenharmony_ci helper.SetIntResult(result); 222e5d0e473Sopenharmony_ci helper.NotifyAll(); 223e5d0e473Sopenharmony_ci} 224e5d0e473Sopenharmony_ci 225e5d0e473Sopenharmony_ci/** 226e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0005 227e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast parameter is valid 228e5d0e473Sopenharmony_ci * @tc.desc Function test 229e5d0e473Sopenharmony_ci */ 230e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_0005, Function | MediumTest | Level3) 231e5d0e473Sopenharmony_ci{ 232e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0005 -->"); 233e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 234e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 235e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 236e5d0e473Sopenharmony_ci return; 237e5d0e473Sopenharmony_ci } 238e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 239e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 240e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc5, std::ref(helper))) { 241e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc5 out of time"); 242e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc5, std::ref(helper))); 243e5d0e473Sopenharmony_ci } 244e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0005 -->finished"); 245e5d0e473Sopenharmony_ci ASSERT_GE(helper.GetIntResult(), 0); 246e5d0e473Sopenharmony_ci} 247e5d0e473Sopenharmony_ci 248e5d0e473Sopenharmony_civoid OpenCellBroadcastTestFuc6(SmsMmsTestHelper &helper) 249e5d0e473Sopenharmony_ci{ 250e5d0e473Sopenharmony_ci bool enable = true; 251e5d0e473Sopenharmony_ci uint32_t fromMsgId = 0; 252e5d0e473Sopenharmony_ci uint32_t toMsgId = 0; 253e5d0e473Sopenharmony_ci uint8_t netType = 1; 254e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 255e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 256e5d0e473Sopenharmony_ci helper.SetIntResult(result); 257e5d0e473Sopenharmony_ci helper.NotifyAll(); 258e5d0e473Sopenharmony_ci} 259e5d0e473Sopenharmony_ci 260e5d0e473Sopenharmony_civoid OpenCellBroadcastTestFuc6WithToken(SmsMmsTestHelper &helper) 261e5d0e473Sopenharmony_ci{ 262e5d0e473Sopenharmony_ci AccessMmsToken token; 263e5d0e473Sopenharmony_ci OpenCellBroadcastTestFuc6(helper); 264e5d0e473Sopenharmony_ci} 265e5d0e473Sopenharmony_ci 266e5d0e473Sopenharmony_ci/** 267e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0006 268e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast parameter is valid 269e5d0e473Sopenharmony_ci * @tc.desc Function test 270e5d0e473Sopenharmony_ci */ 271e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_0006, Function | MediumTest | Level3) 272e5d0e473Sopenharmony_ci{ 273e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0006 -->"); 274e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 275e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 276e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 277e5d0e473Sopenharmony_ci return; 278e5d0e473Sopenharmony_ci } 279e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 280e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 281e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc6WithToken, std::ref(helper))) { 282e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc6WithToken out of time"); 283e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc6WithToken, std::ref(helper))); 284e5d0e473Sopenharmony_ci } 285e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0006 -->finished"); 286e5d0e473Sopenharmony_ci ASSERT_GE(helper.GetIntResult(), 0); 287e5d0e473Sopenharmony_ci} 288e5d0e473Sopenharmony_ci 289e5d0e473Sopenharmony_ci/** 290e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0007 291e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast fromMsgId less than toMsgId 292e5d0e473Sopenharmony_ci * @tc.desc Function test 293e5d0e473Sopenharmony_ci */ 294e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_0007, Function | MediumTest | Level3) 295e5d0e473Sopenharmony_ci{ 296e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0007 -->"); 297e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1))) { 298e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 299e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 300e5d0e473Sopenharmony_ci return; 301e5d0e473Sopenharmony_ci } 302e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 303e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_1; 304e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc2, std::ref(helper))) { 305e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc2 out of time"); 306e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc2, std::ref(helper))); 307e5d0e473Sopenharmony_ci } 308e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0007 -->finished"); 309e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 310e5d0e473Sopenharmony_ci} 311e5d0e473Sopenharmony_ci 312e5d0e473Sopenharmony_ci/** 313e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0008 314e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast netType is unknown. 315e5d0e473Sopenharmony_ci * @tc.desc Function test 316e5d0e473Sopenharmony_ci */ 317e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_0008, Function | MediumTest | Level3) 318e5d0e473Sopenharmony_ci{ 319e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0008 -->"); 320e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1))) { 321e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 322e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 323e5d0e473Sopenharmony_ci return; 324e5d0e473Sopenharmony_ci } 325e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 326e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_1; 327e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc3, std::ref(helper))) { 328e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc3 out of time"); 329e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc3, std::ref(helper))); 330e5d0e473Sopenharmony_ci } 331e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0008 -->finished"); 332e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 333e5d0e473Sopenharmony_ci} 334e5d0e473Sopenharmony_ci 335e5d0e473Sopenharmony_ci/** 336e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0009 337e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast parameter is valid. 338e5d0e473Sopenharmony_ci * @tc.desc Function test 339e5d0e473Sopenharmony_ci */ 340e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_0009, Function | MediumTest | Level3) 341e5d0e473Sopenharmony_ci{ 342e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0009 -->"); 343e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1))) { 344e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 345e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 346e5d0e473Sopenharmony_ci return; 347e5d0e473Sopenharmony_ci } 348e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 349e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_1; 350e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc4, std::ref(helper))) { 351e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc4 out of time"); 352e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc4, std::ref(helper))); 353e5d0e473Sopenharmony_ci } 354e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0009 -->finished"); 355e5d0e473Sopenharmony_ci ASSERT_EQ(helper.GetIntResult(), 0); 356e5d0e473Sopenharmony_ci} 357e5d0e473Sopenharmony_ci 358e5d0e473Sopenharmony_ci/** 359e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0010 360e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast parameter is valid 361e5d0e473Sopenharmony_ci * @tc.desc Function test 362e5d0e473Sopenharmony_ci */ 363e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_00010, Function | MediumTest | Level3) 364e5d0e473Sopenharmony_ci{ 365e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0010 -->"); 366e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1))) { 367e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 368e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 369e5d0e473Sopenharmony_ci return; 370e5d0e473Sopenharmony_ci } 371e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 372e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_1; 373e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc5, std::ref(helper))) { 374e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc5 out of time"); 375e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc5, std::ref(helper))); 376e5d0e473Sopenharmony_ci } 377e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0010 -->finished"); 378e5d0e473Sopenharmony_ci ASSERT_EQ(helper.GetIntResult(), 0); 379e5d0e473Sopenharmony_ci} 380e5d0e473Sopenharmony_ci 381e5d0e473Sopenharmony_ci/** 382e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0011 383e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast parameter is valid 384e5d0e473Sopenharmony_ci * @tc.desc Function test 385e5d0e473Sopenharmony_ci */ 386e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_0011, Function | MediumTest | Level3) 387e5d0e473Sopenharmony_ci{ 388e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0011 -->"); 389e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1))) { 390e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 391e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 392e5d0e473Sopenharmony_ci return; 393e5d0e473Sopenharmony_ci } 394e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 395e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_1; 396e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc6WithToken, std::ref(helper))) { 397e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc6WithToken out of time"); 398e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc6WithToken, std::ref(helper))); 399e5d0e473Sopenharmony_ci } 400e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0011 -->finished"); 401e5d0e473Sopenharmony_ci ASSERT_EQ(helper.GetIntResult(), 0); 402e5d0e473Sopenharmony_ci} 403e5d0e473Sopenharmony_ci 404e5d0e473Sopenharmony_ci/** 405e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_OpenCellBroadcast_0012 406e5d0e473Sopenharmony_ci * @tc.name Open cellBroadcast parameter is valid 407e5d0e473Sopenharmony_ci * @tc.desc Function test 408e5d0e473Sopenharmony_ci */ 409e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, OpenCellBroadcast_0012, Function | MediumTest | Level3) 410e5d0e473Sopenharmony_ci{ 411e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0012 -->"); 412e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 413e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 414e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 415e5d0e473Sopenharmony_ci return; 416e5d0e473Sopenharmony_ci } 417e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 418e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 419e5d0e473Sopenharmony_ci if (!helper.Run(OpenCellBroadcastTestFuc6, std::ref(helper))) { 420e5d0e473Sopenharmony_ci TELEPHONY_LOGI("OpenCellBroadcastTestFuc6 out of time"); 421e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(OpenCellBroadcastTestFuc6, std::ref(helper))); 422e5d0e473Sopenharmony_ci } 423e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::OpenCellBroadcast_0012 -->finished"); 424e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 425e5d0e473Sopenharmony_ci} 426e5d0e473Sopenharmony_ci 427e5d0e473Sopenharmony_civoid CloseCellBroadcastTestFuc(SmsMmsTestHelper &helper) 428e5d0e473Sopenharmony_ci{ 429e5d0e473Sopenharmony_ci AccessMmsToken token; 430e5d0e473Sopenharmony_ci bool enable = false; 431e5d0e473Sopenharmony_ci uint32_t fromMsgId = 0; 432e5d0e473Sopenharmony_ci uint32_t toMsgId = 10; 433e5d0e473Sopenharmony_ci uint8_t netType = 1; 434e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 435e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 436e5d0e473Sopenharmony_ci helper.SetIntResult(result); 437e5d0e473Sopenharmony_ci helper.NotifyAll(); 438e5d0e473Sopenharmony_ci} 439e5d0e473Sopenharmony_ci 440e5d0e473Sopenharmony_ci/** 441e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0001 442e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast slotId is -1 443e5d0e473Sopenharmony_ci * @tc.desc Function test 444e5d0e473Sopenharmony_ci */ 445e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0001, Function | MediumTest | Level3) 446e5d0e473Sopenharmony_ci{ 447e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0001 -->"); 448e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 449e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 450e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 451e5d0e473Sopenharmony_ci return; 452e5d0e473Sopenharmony_ci } 453e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 454e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_REMOVE; 455e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc, std::ref(helper))) { 456e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc out of time"); 457e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc, std::ref(helper))); 458e5d0e473Sopenharmony_ci } 459e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0001 -->finished"); 460e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 461e5d0e473Sopenharmony_ci} 462e5d0e473Sopenharmony_ci 463e5d0e473Sopenharmony_civoid CloseCellBroadcastTestFuc2(SmsMmsTestHelper &helper) 464e5d0e473Sopenharmony_ci{ 465e5d0e473Sopenharmony_ci AccessMmsToken token; 466e5d0e473Sopenharmony_ci bool enable = false; 467e5d0e473Sopenharmony_ci uint32_t fromMsgId = 20; 468e5d0e473Sopenharmony_ci uint32_t toMsgId = 10; 469e5d0e473Sopenharmony_ci uint8_t netType = 1; 470e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 471e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 472e5d0e473Sopenharmony_ci helper.SetIntResult(result); 473e5d0e473Sopenharmony_ci helper.NotifyAll(); 474e5d0e473Sopenharmony_ci} 475e5d0e473Sopenharmony_ci 476e5d0e473Sopenharmony_ci/** 477e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0002 478e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast fromMsgId less than toMsgId 479e5d0e473Sopenharmony_ci * @tc.desc Function test 480e5d0e473Sopenharmony_ci */ 481e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0002, Function | MediumTest | Level3) 482e5d0e473Sopenharmony_ci{ 483e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0002 -->"); 484e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 485e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 486e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 487e5d0e473Sopenharmony_ci return; 488e5d0e473Sopenharmony_ci } 489e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 490e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 491e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc2, std::ref(helper))) { 492e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc2 out of time"); 493e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc2, std::ref(helper))); 494e5d0e473Sopenharmony_ci } 495e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0002 -->finished"); 496e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 497e5d0e473Sopenharmony_ci} 498e5d0e473Sopenharmony_ci 499e5d0e473Sopenharmony_civoid CloseCellBroadcastTestFuc3(SmsMmsTestHelper &helper) 500e5d0e473Sopenharmony_ci{ 501e5d0e473Sopenharmony_ci AccessMmsToken token; 502e5d0e473Sopenharmony_ci bool enable = false; 503e5d0e473Sopenharmony_ci uint32_t fromMsgId = 0; 504e5d0e473Sopenharmony_ci uint32_t toMsgId = 10; 505e5d0e473Sopenharmony_ci uint8_t netType = 3; 506e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 507e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 508e5d0e473Sopenharmony_ci helper.SetIntResult(result); 509e5d0e473Sopenharmony_ci helper.NotifyAll(); 510e5d0e473Sopenharmony_ci} 511e5d0e473Sopenharmony_ci 512e5d0e473Sopenharmony_ci/** 513e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0003 514e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast netType is unknown 515e5d0e473Sopenharmony_ci * @tc.desc Function test 516e5d0e473Sopenharmony_ci */ 517e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0003, Function | MediumTest | Level3) 518e5d0e473Sopenharmony_ci{ 519e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0003 -->"); 520e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 521e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 522e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 523e5d0e473Sopenharmony_ci return; 524e5d0e473Sopenharmony_ci } 525e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 526e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 527e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc3, std::ref(helper))) { 528e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc3 out of time"); 529e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc3, std::ref(helper))); 530e5d0e473Sopenharmony_ci } 531e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0003-->finished"); 532e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 533e5d0e473Sopenharmony_ci} 534e5d0e473Sopenharmony_ci 535e5d0e473Sopenharmony_civoid CloseCellBroadcastTestFuc4(SmsMmsTestHelper &helper) 536e5d0e473Sopenharmony_ci{ 537e5d0e473Sopenharmony_ci AccessMmsToken token; 538e5d0e473Sopenharmony_ci bool enable = false; 539e5d0e473Sopenharmony_ci uint32_t fromMsgId = 0; 540e5d0e473Sopenharmony_ci uint32_t toMsgId = 10; 541e5d0e473Sopenharmony_ci uint8_t netType = 1; 542e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 543e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 544e5d0e473Sopenharmony_ci helper.SetIntResult(result); 545e5d0e473Sopenharmony_ci helper.NotifyAll(); 546e5d0e473Sopenharmony_ci} 547e5d0e473Sopenharmony_ci 548e5d0e473Sopenharmony_ci/** 549e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0004 550e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast parameter is valid 551e5d0e473Sopenharmony_ci * @tc.desc Function test 552e5d0e473Sopenharmony_ci */ 553e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0004, Function | MediumTest | Level3) 554e5d0e473Sopenharmony_ci{ 555e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0004 -->"); 556e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 557e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 558e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 559e5d0e473Sopenharmony_ci return; 560e5d0e473Sopenharmony_ci } 561e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 562e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 563e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc4, std::ref(helper))) { 564e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc4 out of time"); 565e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc4, std::ref(helper))); 566e5d0e473Sopenharmony_ci } 567e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0004 -->finished"); 568e5d0e473Sopenharmony_ci ASSERT_GE(helper.GetIntResult(), 0); 569e5d0e473Sopenharmony_ci} 570e5d0e473Sopenharmony_ci 571e5d0e473Sopenharmony_civoid CloseCellBroadcastTestFuc5(SmsMmsTestHelper &helper) 572e5d0e473Sopenharmony_ci{ 573e5d0e473Sopenharmony_ci AccessMmsToken token; 574e5d0e473Sopenharmony_ci bool enable = false; 575e5d0e473Sopenharmony_ci uint32_t fromMsgId = 0; 576e5d0e473Sopenharmony_ci uint32_t toMsgId = 1000; 577e5d0e473Sopenharmony_ci uint8_t netType = 1; 578e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 579e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 580e5d0e473Sopenharmony_ci helper.SetIntResult(result); 581e5d0e473Sopenharmony_ci helper.NotifyAll(); 582e5d0e473Sopenharmony_ci} 583e5d0e473Sopenharmony_ci 584e5d0e473Sopenharmony_ci/** 585e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0005 586e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast parameter is valid 587e5d0e473Sopenharmony_ci * @tc.desc Function test 588e5d0e473Sopenharmony_ci */ 589e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0005, Function | MediumTest | Level3) 590e5d0e473Sopenharmony_ci{ 591e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0005 -->"); 592e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 593e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 594e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 595e5d0e473Sopenharmony_ci return; 596e5d0e473Sopenharmony_ci } 597e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 598e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 599e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc5, std::ref(helper))) { 600e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc5 out of time"); 601e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc5, std::ref(helper))); 602e5d0e473Sopenharmony_ci } 603e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0005 -->finished"); 604e5d0e473Sopenharmony_ci ASSERT_GE(helper.GetIntResult(), 0); 605e5d0e473Sopenharmony_ci} 606e5d0e473Sopenharmony_ci 607e5d0e473Sopenharmony_civoid CloseCellBroadcastTestFuc6(SmsMmsTestHelper &helper) 608e5d0e473Sopenharmony_ci{ 609e5d0e473Sopenharmony_ci bool enable = false; 610e5d0e473Sopenharmony_ci uint32_t fromMsgId = 0; 611e5d0e473Sopenharmony_ci uint32_t toMsgId = 0; 612e5d0e473Sopenharmony_ci uint8_t netType = 1; 613e5d0e473Sopenharmony_ci int32_t result = Singleton<SmsServiceManagerClient>::GetInstance().SetCBConfig( 614e5d0e473Sopenharmony_ci helper.slotId, enable, fromMsgId, toMsgId, netType); 615e5d0e473Sopenharmony_ci helper.SetIntResult(result); 616e5d0e473Sopenharmony_ci helper.NotifyAll(); 617e5d0e473Sopenharmony_ci} 618e5d0e473Sopenharmony_ci 619e5d0e473Sopenharmony_civoid CloseCellBroadcastTestFuc6WithToken(SmsMmsTestHelper &helper) 620e5d0e473Sopenharmony_ci{ 621e5d0e473Sopenharmony_ci AccessMmsToken token; 622e5d0e473Sopenharmony_ci CloseCellBroadcastTestFuc6(helper); 623e5d0e473Sopenharmony_ci} 624e5d0e473Sopenharmony_ci 625e5d0e473Sopenharmony_ci/** 626e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0006 627e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast parameter is valid 628e5d0e473Sopenharmony_ci * @tc.desc Function test 629e5d0e473Sopenharmony_ci */ 630e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0006, Function | MediumTest | Level3) 631e5d0e473Sopenharmony_ci{ 632e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0006 -->"); 633e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 634e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 635e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID)); 636e5d0e473Sopenharmony_ci return; 637e5d0e473Sopenharmony_ci } 638e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 639e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 640e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc6WithToken, std::ref(helper))) { 641e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc6WithToken out of time"); 642e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc6WithToken, std::ref(helper))); 643e5d0e473Sopenharmony_ci } 644e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0006 -->finished"); 645e5d0e473Sopenharmony_ci ASSERT_GE(helper.GetIntResult(), 0); 646e5d0e473Sopenharmony_ci} 647e5d0e473Sopenharmony_ci 648e5d0e473Sopenharmony_ci/** 649e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0007 650e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast fromMsgId less than toMsgId 651e5d0e473Sopenharmony_ci * @tc.desc Function test 652e5d0e473Sopenharmony_ci */ 653e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0007, Function | MediumTest | Level3) 654e5d0e473Sopenharmony_ci{ 655e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0007 -->"); 656e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1))) { 657e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 658e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 659e5d0e473Sopenharmony_ci return; 660e5d0e473Sopenharmony_ci } 661e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 662e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_1; 663e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc2, std::ref(helper))) { 664e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc7 out of time"); 665e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc2, std::ref(helper))); 666e5d0e473Sopenharmony_ci } 667e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0007 -->finished"); 668e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 669e5d0e473Sopenharmony_ci} 670e5d0e473Sopenharmony_ci 671e5d0e473Sopenharmony_ci/** 672e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0008 673e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast netType is unknown 674e5d0e473Sopenharmony_ci * @tc.desc Function test 675e5d0e473Sopenharmony_ci */ 676e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0008, Function | MediumTest | Level3) 677e5d0e473Sopenharmony_ci{ 678e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0008 -->"); 679e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1))) { 680e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 681e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 682e5d0e473Sopenharmony_ci return; 683e5d0e473Sopenharmony_ci } 684e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 685e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_1; 686e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc3, std::ref(helper))) { 687e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc8 out of time"); 688e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc3, std::ref(helper))); 689e5d0e473Sopenharmony_ci } 690e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0008-->finished"); 691e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 692e5d0e473Sopenharmony_ci} 693e5d0e473Sopenharmony_ci 694e5d0e473Sopenharmony_ci/** 695e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0009 696e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast parameter is valid 697e5d0e473Sopenharmony_ci * @tc.desc Function test 698e5d0e473Sopenharmony_ci */ 699e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0009, Function | MediumTest | Level3) 700e5d0e473Sopenharmony_ci{ 701e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0009 -->"); 702e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1))) { 703e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 704e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 705e5d0e473Sopenharmony_ci return; 706e5d0e473Sopenharmony_ci } 707e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 708e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_1; 709e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc4, std::ref(helper))) { 710e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc9 out of time"); 711e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc4, std::ref(helper))); 712e5d0e473Sopenharmony_ci } 713e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0009 -->finished"); 714e5d0e473Sopenharmony_ci ASSERT_GE(helper.GetIntResult(), 0); 715e5d0e473Sopenharmony_ci} 716e5d0e473Sopenharmony_ci 717e5d0e473Sopenharmony_ci/** 718e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0010 719e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast parameter is valid 720e5d0e473Sopenharmony_ci * @tc.desc Function test 721e5d0e473Sopenharmony_ci */ 722e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0010, Function | MediumTest | Level3) 723e5d0e473Sopenharmony_ci{ 724e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0010 -->"); 725e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1))) { 726e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 727e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 728e5d0e473Sopenharmony_ci return; 729e5d0e473Sopenharmony_ci } 730e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 731e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_1; 732e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc5, std::ref(helper))) { 733e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc10 out of time"); 734e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc5, std::ref(helper))); 735e5d0e473Sopenharmony_ci } 736e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0010 -->finished"); 737e5d0e473Sopenharmony_ci ASSERT_GE(helper.GetIntResult(), 0); 738e5d0e473Sopenharmony_ci} 739e5d0e473Sopenharmony_ci 740e5d0e473Sopenharmony_ci/** 741e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0011 742e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast parameter is valid 743e5d0e473Sopenharmony_ci * @tc.desc Function test 744e5d0e473Sopenharmony_ci */ 745e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_00011, Function | MediumTest | Level3) 746e5d0e473Sopenharmony_ci{ 747e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0011 -->"); 748e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1))) { 749e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 750e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 751e5d0e473Sopenharmony_ci return; 752e5d0e473Sopenharmony_ci } 753e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 754e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID_1; 755e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc6WithToken, std::ref(helper))) { 756e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc6WithToken out of time"); 757e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc6WithToken, std::ref(helper))); 758e5d0e473Sopenharmony_ci } 759e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0011 -->finished"); 760e5d0e473Sopenharmony_ci ASSERT_GE(helper.GetIntResult(), 0); 761e5d0e473Sopenharmony_ci} 762e5d0e473Sopenharmony_ci 763e5d0e473Sopenharmony_ci/** 764e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_CloseCellBroadcast_0012 765e5d0e473Sopenharmony_ci * @tc.name Close cellBroadcast parameter is valid 766e5d0e473Sopenharmony_ci * @tc.desc Function test 767e5d0e473Sopenharmony_ci */ 768e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, CloseCellBroadcast_0012, Function | MediumTest | Level3) 769e5d0e473Sopenharmony_ci{ 770e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0012 -->"); 771e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID))) { 772e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 773e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(DEFAULT_SIM_SLOT_ID_1)); 774e5d0e473Sopenharmony_ci return; 775e5d0e473Sopenharmony_ci } 776e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 777e5d0e473Sopenharmony_ci helper.slotId = DEFAULT_SIM_SLOT_ID; 778e5d0e473Sopenharmony_ci if (!helper.Run(CloseCellBroadcastTestFuc6, std::ref(helper))) { 779e5d0e473Sopenharmony_ci TELEPHONY_LOGI("CloseCellBroadcastTestFuc6 out of time"); 780e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(CloseCellBroadcastTestFuc6, std::ref(helper))); 781e5d0e473Sopenharmony_ci } 782e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::CloseCellBroadcast_0012 -->finished"); 783e5d0e473Sopenharmony_ci EXPECT_NE(helper.GetIntResult(), 0); 784e5d0e473Sopenharmony_ci} 785e5d0e473Sopenharmony_ci 786e5d0e473Sopenharmony_civoid ReceiveCellBroadCastTestFunc(SmsMmsTestHelper &helper) 787e5d0e473Sopenharmony_ci{ 788e5d0e473Sopenharmony_ci AccessMmsToken token; 789e5d0e473Sopenharmony_ci auto gsmSmsCbHandler = std::make_shared<GsmSmsCbHandler>(helper.slotId); 790e5d0e473Sopenharmony_ci auto message = std::make_shared<CBConfigReportInfo>(); 791e5d0e473Sopenharmony_ci message->indicationType = MESSAGE_TYPE; 792e5d0e473Sopenharmony_ci message->sn = 0; 793e5d0e473Sopenharmony_ci message->mid = 0; 794e5d0e473Sopenharmony_ci message->page = 0; 795e5d0e473Sopenharmony_ci message->pages = 0; 796e5d0e473Sopenharmony_ci message->dcs = ""; 797e5d0e473Sopenharmony_ci message->data = ""; 798e5d0e473Sopenharmony_ci message->length = CB_PDU_LEN; 799e5d0e473Sopenharmony_ci message->pdu = "01a41f51101102ea3030a830ea30a230e130fc30eb914d4fe130c630b930c8000d000a3053308c306f8a669a137528306e3" 800e5d0e473Sopenharmony_ci "0e130c330bb30fc30b8306730593002000d000aff080032003000310033002f00310031002f003252ea3000370020003100" 801e5d0e473Sopenharmony_ci "35003a00340034ff09000d000aff0830a830ea30a25e02ff090000000000000000000000000000000000000000000000000" 802e5d0e473Sopenharmony_ci "0000000000000000000000000000000000000000000000022"; 803e5d0e473Sopenharmony_ci AppExecFwk::InnerEvent::Pointer event = AppExecFwk::InnerEvent::Get(RadioEvent::RADIO_CELL_BROADCAST, message); 804e5d0e473Sopenharmony_ci gsmSmsCbHandler->ProcessEvent(event); 805e5d0e473Sopenharmony_ci} 806e5d0e473Sopenharmony_ci 807e5d0e473Sopenharmony_civoid ReceiveCellBroadCastTestFunc2(SmsMmsTestHelper &helper) 808e5d0e473Sopenharmony_ci{ 809e5d0e473Sopenharmony_ci AccessMmsToken token; 810e5d0e473Sopenharmony_ci auto gsmSmsCbHandler = std::make_shared<GsmSmsCbHandler>(helper.slotId); 811e5d0e473Sopenharmony_ci auto message = std::make_shared<CBConfigReportInfo>(); 812e5d0e473Sopenharmony_ci message->indicationType = MESSAGE_TYPE; 813e5d0e473Sopenharmony_ci message->sn = 0; 814e5d0e473Sopenharmony_ci message->mid = 0; 815e5d0e473Sopenharmony_ci message->page = 0; 816e5d0e473Sopenharmony_ci message->pages = 0; 817e5d0e473Sopenharmony_ci message->dcs = ""; 818e5d0e473Sopenharmony_ci message->data = ""; 819e5d0e473Sopenharmony_ci message->length = CB_PDU_LEN; 820e5d0e473Sopenharmony_ci message->pdu = "C0000032401174747A0E4ACF41E8B0BCFD76E741EF39685C66B34162F93B4C1E87E77410BD3CA7836EC2341D440ED3C321"; 821e5d0e473Sopenharmony_ci AppExecFwk::InnerEvent::Pointer event = AppExecFwk::InnerEvent::Get(RadioEvent::RADIO_CELL_BROADCAST, message); 822e5d0e473Sopenharmony_ci gsmSmsCbHandler->ProcessEvent(event); 823e5d0e473Sopenharmony_ci} 824e5d0e473Sopenharmony_ci 825e5d0e473Sopenharmony_ci/** 826e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_Receive_Cell_BroadCast_0001 827e5d0e473Sopenharmony_ci * @tc.name Receive a 3g Cell Broadcast 828e5d0e473Sopenharmony_ci * @tc.desc Function test 829e5d0e473Sopenharmony_ci */ 830e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, Receive_Cell_BroadCast_0001, Function | MediumTest | Level2) 831e5d0e473Sopenharmony_ci{ 832e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::Receive_Cell_BroadCast_0001 -->"); 833e5d0e473Sopenharmony_ci int32_t slotId = DEFAULT_SIM_SLOT_ID; 834e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(slotId))) { 835e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 836e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(slotId)); 837e5d0e473Sopenharmony_ci return; 838e5d0e473Sopenharmony_ci } 839e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 840e5d0e473Sopenharmony_ci helper.slotId = slotId; 841e5d0e473Sopenharmony_ci 842e5d0e473Sopenharmony_ci EventFwk::MatchingSkills matchingSkills; 843e5d0e473Sopenharmony_ci matchingSkills.AddEvent(EventFwk::CommonEventSupport::COMMON_EVENT_SMS_EMERGENCY_CB_RECEIVE_COMPLETED); 844e5d0e473Sopenharmony_ci matchingSkills.AddEvent(EventFwk::CommonEventSupport::COMMON_EVENT_SMS_CB_RECEIVE_COMPLETED); 845e5d0e473Sopenharmony_ci EventFwk::CommonEventSubscribeInfo subscriberInfo(matchingSkills); 846e5d0e473Sopenharmony_ci std::shared_ptr<SmsBroadcastSubscriberGtest> subscriberTest = 847e5d0e473Sopenharmony_ci std::make_shared<SmsBroadcastSubscriberGtest>(subscriberInfo, helper); 848e5d0e473Sopenharmony_ci ASSERT_NE(subscriberTest, nullptr); 849e5d0e473Sopenharmony_ci bool subscribeResult = EventFwk::CommonEventManager::SubscribeCommonEvent(subscriberTest); 850e5d0e473Sopenharmony_ci TELEPHONY_LOGI("subscribeResult is : %{public}d", subscribeResult); 851e5d0e473Sopenharmony_ci 852e5d0e473Sopenharmony_ci if (!helper.Run(ReceiveCellBroadCastTestFunc, helper)) { 853e5d0e473Sopenharmony_ci TELEPHONY_LOGI("ReceiveCellBroadCastTestFunc out of time"); 854e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(ReceiveCellBroadCastTestFunc, helper)); 855e5d0e473Sopenharmony_ci return; 856e5d0e473Sopenharmony_ci } 857e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::Receive_Cell_BroadCast_0001 -->finished"); 858e5d0e473Sopenharmony_ci EXPECT_TRUE(helper.GetBoolResult()); 859e5d0e473Sopenharmony_ci} 860e5d0e473Sopenharmony_ci 861e5d0e473Sopenharmony_ci/** 862e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_Receive_Cell_BroadCast_0002 863e5d0e473Sopenharmony_ci * @tc.name Receive a 2g Cell Broadcast 864e5d0e473Sopenharmony_ci * @tc.desc Function test 865e5d0e473Sopenharmony_ci */ 866e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, Receive_Cell_BroadCast_0002, Function | MediumTest | Level2) 867e5d0e473Sopenharmony_ci{ 868e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::Receive_Cell_BroadCast_0002 -->"); 869e5d0e473Sopenharmony_ci int32_t slotId = DEFAULT_SIM_SLOT_ID; 870e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(slotId))) { 871e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 872e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(slotId)); 873e5d0e473Sopenharmony_ci return; 874e5d0e473Sopenharmony_ci } 875e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 876e5d0e473Sopenharmony_ci helper.slotId = slotId; 877e5d0e473Sopenharmony_ci 878e5d0e473Sopenharmony_ci EventFwk::MatchingSkills matchingSkills; 879e5d0e473Sopenharmony_ci matchingSkills.AddEvent(EventFwk::CommonEventSupport::COMMON_EVENT_SMS_EMERGENCY_CB_RECEIVE_COMPLETED); 880e5d0e473Sopenharmony_ci matchingSkills.AddEvent(EventFwk::CommonEventSupport::COMMON_EVENT_SMS_CB_RECEIVE_COMPLETED); 881e5d0e473Sopenharmony_ci EventFwk::CommonEventSubscribeInfo subscriberInfo(matchingSkills); 882e5d0e473Sopenharmony_ci std::shared_ptr<SmsBroadcastSubscriberGtest> subscriberTest = 883e5d0e473Sopenharmony_ci std::make_shared<SmsBroadcastSubscriberGtest>(subscriberInfo, helper); 884e5d0e473Sopenharmony_ci ASSERT_NE(subscriberTest, nullptr); 885e5d0e473Sopenharmony_ci bool subscribeResult = EventFwk::CommonEventManager::SubscribeCommonEvent(subscriberTest); 886e5d0e473Sopenharmony_ci TELEPHONY_LOGI("subscribeResult is : %{public}d", subscribeResult); 887e5d0e473Sopenharmony_ci 888e5d0e473Sopenharmony_ci if (!helper.Run(ReceiveCellBroadCastTestFunc2, helper)) { 889e5d0e473Sopenharmony_ci TELEPHONY_LOGI("ReceiveCellBroadCastTestFunc2 out of time"); 890e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(ReceiveCellBroadCastTestFunc2, helper)); 891e5d0e473Sopenharmony_ci return; 892e5d0e473Sopenharmony_ci } 893e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::Receive_Cell_BroadCast_0002 -->finished"); 894e5d0e473Sopenharmony_ci EXPECT_TRUE(helper.GetBoolResult()); 895e5d0e473Sopenharmony_ci} 896e5d0e473Sopenharmony_ci 897e5d0e473Sopenharmony_ci/** 898e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_Receive_Cell_BroadCast_0003 899e5d0e473Sopenharmony_ci * @tc.name Receive a 3g Cell Broadcast 900e5d0e473Sopenharmony_ci * @tc.desc Function test 901e5d0e473Sopenharmony_ci */ 902e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, Receive_Cell_BroadCast_0003, Function | MediumTest | Level2) 903e5d0e473Sopenharmony_ci{ 904e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::Receive_Cell_BroadCast_0003 -->"); 905e5d0e473Sopenharmony_ci int32_t slotId = DEFAULT_SIM_SLOT_ID_1; 906e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(slotId))) { 907e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 908e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(slotId)); 909e5d0e473Sopenharmony_ci return; 910e5d0e473Sopenharmony_ci } 911e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 912e5d0e473Sopenharmony_ci helper.slotId = slotId; 913e5d0e473Sopenharmony_ci 914e5d0e473Sopenharmony_ci EventFwk::MatchingSkills matchingSkills; 915e5d0e473Sopenharmony_ci matchingSkills.AddEvent(EventFwk::CommonEventSupport::COMMON_EVENT_SMS_EMERGENCY_CB_RECEIVE_COMPLETED); 916e5d0e473Sopenharmony_ci matchingSkills.AddEvent(EventFwk::CommonEventSupport::COMMON_EVENT_SMS_CB_RECEIVE_COMPLETED); 917e5d0e473Sopenharmony_ci EventFwk::CommonEventSubscribeInfo subscriberInfo(matchingSkills); 918e5d0e473Sopenharmony_ci std::shared_ptr<SmsBroadcastSubscriberGtest> subscriberTest = 919e5d0e473Sopenharmony_ci std::make_shared<SmsBroadcastSubscriberGtest>(subscriberInfo, helper); 920e5d0e473Sopenharmony_ci ASSERT_NE(subscriberTest, nullptr); 921e5d0e473Sopenharmony_ci bool subscribeResult = EventFwk::CommonEventManager::SubscribeCommonEvent(subscriberTest); 922e5d0e473Sopenharmony_ci TELEPHONY_LOGI("subscribeResult is : %{public}d", subscribeResult); 923e5d0e473Sopenharmony_ci 924e5d0e473Sopenharmony_ci if (!helper.Run(ReceiveCellBroadCastTestFunc, helper)) { 925e5d0e473Sopenharmony_ci TELEPHONY_LOGI("ReceiveCellBroadCastTestFunc out of time"); 926e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(ReceiveCellBroadCastTestFunc, helper)); 927e5d0e473Sopenharmony_ci return; 928e5d0e473Sopenharmony_ci } 929e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::Receive_Cell_BroadCast_0003 -->finished"); 930e5d0e473Sopenharmony_ci EXPECT_TRUE(helper.GetBoolResult()); 931e5d0e473Sopenharmony_ci} 932e5d0e473Sopenharmony_ci 933e5d0e473Sopenharmony_ci/** 934e5d0e473Sopenharmony_ci * @tc.number Telephony_SmsMmsGtest_Receive_Cell_BroadCast_0004 935e5d0e473Sopenharmony_ci * @tc.name Receive a 2g Cell Broadcast 936e5d0e473Sopenharmony_ci * @tc.desc Function test 937e5d0e473Sopenharmony_ci */ 938e5d0e473Sopenharmony_ciHWTEST_F(CbGtest, Receive_Cell_BroadCast_0004, Function | MediumTest | Level2) 939e5d0e473Sopenharmony_ci{ 940e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::Receive_Cell_BroadCast_0004 -->"); 941e5d0e473Sopenharmony_ci int32_t slotId = DEFAULT_SIM_SLOT_ID_1; 942e5d0e473Sopenharmony_ci if (!(CbGtest::HasSimCard(slotId))) { 943e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelephonyTestService has no sim card"); 944e5d0e473Sopenharmony_ci ASSERT_FALSE(CbGtest::HasSimCard(slotId)); 945e5d0e473Sopenharmony_ci return; 946e5d0e473Sopenharmony_ci } 947e5d0e473Sopenharmony_ci SmsMmsTestHelper helper; 948e5d0e473Sopenharmony_ci helper.slotId = slotId; 949e5d0e473Sopenharmony_ci 950e5d0e473Sopenharmony_ci EventFwk::MatchingSkills matchingSkills; 951e5d0e473Sopenharmony_ci matchingSkills.AddEvent(EventFwk::CommonEventSupport::COMMON_EVENT_SMS_EMERGENCY_CB_RECEIVE_COMPLETED); 952e5d0e473Sopenharmony_ci matchingSkills.AddEvent(EventFwk::CommonEventSupport::COMMON_EVENT_SMS_CB_RECEIVE_COMPLETED); 953e5d0e473Sopenharmony_ci EventFwk::CommonEventSubscribeInfo subscriberInfo(matchingSkills); 954e5d0e473Sopenharmony_ci std::shared_ptr<SmsBroadcastSubscriberGtest> subscriberTest = 955e5d0e473Sopenharmony_ci std::make_shared<SmsBroadcastSubscriberGtest>(subscriberInfo, helper); 956e5d0e473Sopenharmony_ci ASSERT_NE(subscriberTest, nullptr); 957e5d0e473Sopenharmony_ci bool subscribeResult = EventFwk::CommonEventManager::SubscribeCommonEvent(subscriberTest); 958e5d0e473Sopenharmony_ci TELEPHONY_LOGI("subscribeResult is : %{public}d", subscribeResult); 959e5d0e473Sopenharmony_ci 960e5d0e473Sopenharmony_ci if (!helper.Run(ReceiveCellBroadCastTestFunc2, helper)) { 961e5d0e473Sopenharmony_ci TELEPHONY_LOGI("ReceiveCellBroadCastTestFunc2 out of time"); 962e5d0e473Sopenharmony_ci ASSERT_TRUE(helper.Run(ReceiveCellBroadCastTestFunc2, helper)); 963e5d0e473Sopenharmony_ci return; 964e5d0e473Sopenharmony_ci } 965e5d0e473Sopenharmony_ci TELEPHONY_LOGI("TelSMSMMSTest::Receive_Cell_BroadCast_0004 -->finished"); 966e5d0e473Sopenharmony_ci EXPECT_TRUE(helper.GetBoolResult()); 967e5d0e473Sopenharmony_ci} 968e5d0e473Sopenharmony_ci#endif // TEL_TEST_UNSUPPORT 969e5d0e473Sopenharmony_ci} // namespace Telephony 970e5d0e473Sopenharmony_ci} // namespace OHOS