1e5d0e473Sopenharmony_ci/*
2e5d0e473Sopenharmony_ci * Copyright (C) 2023 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 "sms_gsm_message_test.h"
17e5d0e473Sopenharmony_ci
18e5d0e473Sopenharmony_ci#include <iostream>
19e5d0e473Sopenharmony_ci
20e5d0e473Sopenharmony_ci#include "access_mms_token.h"
21e5d0e473Sopenharmony_ci#include "cdma_sms_message.h"
22e5d0e473Sopenharmony_ci#include "gsm_cb_codec.h"
23e5d0e473Sopenharmony_ci
24e5d0e473Sopenharmony_cinamespace OHOS {
25e5d0e473Sopenharmony_cinamespace Telephony {
26e5d0e473Sopenharmony_ciusing namespace OHOS::Telephony;
27e5d0e473Sopenharmony_cistd::unique_ptr<ShortMessage> SmsGsmMessageTest::gsmMessage_ = nullptr;
28e5d0e473Sopenharmony_ci
29e5d0e473Sopenharmony_civoid SmsGsmMessageTest::ProcessInput(int inputCMD, bool &loopFlag) const
30e5d0e473Sopenharmony_ci{
31e5d0e473Sopenharmony_ci    std::cout << "inputCMD is:" << inputCMD << std::endl;
32e5d0e473Sopenharmony_ci    switch (inputCMD) {
33e5d0e473Sopenharmony_ci        case 0x00:
34e5d0e473Sopenharmony_ci            Test7BitSubmitSms();
35e5d0e473Sopenharmony_ci            break;
36e5d0e473Sopenharmony_ci        case 0x01:
37e5d0e473Sopenharmony_ci            TestUcs2SubmitSms();
38e5d0e473Sopenharmony_ci            break;
39e5d0e473Sopenharmony_ci        case 0x02:
40e5d0e473Sopenharmony_ci            Test7BitDeliverySms();
41e5d0e473Sopenharmony_ci            break;
42e5d0e473Sopenharmony_ci        case 0x03:
43e5d0e473Sopenharmony_ci            TestUcs2DeliverySms();
44e5d0e473Sopenharmony_ci            break;
45e5d0e473Sopenharmony_ci        case 0x04:
46e5d0e473Sopenharmony_ci            TestStatusReportSms();
47e5d0e473Sopenharmony_ci            break;
48e5d0e473Sopenharmony_ci        case 0x05:
49e5d0e473Sopenharmony_ci            TestMultiPageUcs2Sms();
50e5d0e473Sopenharmony_ci            break;
51e5d0e473Sopenharmony_ci        case 0x06:
52e5d0e473Sopenharmony_ci            TestWapPushSms();
53e5d0e473Sopenharmony_ci            break;
54e5d0e473Sopenharmony_ci        case 0x07:
55e5d0e473Sopenharmony_ci            TestDataSmsDeliverySms();
56e5d0e473Sopenharmony_ci            break;
57e5d0e473Sopenharmony_ci        case 0x08:
58e5d0e473Sopenharmony_ci            TestSmsc00DeliverySms();
59e5d0e473Sopenharmony_ci            break;
60e5d0e473Sopenharmony_ci        case 0x09:
61e5d0e473Sopenharmony_ci            TestMultiPage7bitSms();
62e5d0e473Sopenharmony_ci            break;
63e5d0e473Sopenharmony_ci        case 0x0a:
64e5d0e473Sopenharmony_ci            Test7BitOtherSubmitSms();
65e5d0e473Sopenharmony_ci            break;
66e5d0e473Sopenharmony_ci        case 0x0b:
67e5d0e473Sopenharmony_ci            Test7BitDeliverySms2();
68e5d0e473Sopenharmony_ci            break;
69e5d0e473Sopenharmony_ci        case 0x0c:
70e5d0e473Sopenharmony_ci            Test7BitDeliverySms3();
71e5d0e473Sopenharmony_ci            break;
72e5d0e473Sopenharmony_ci        case 0x0d:
73e5d0e473Sopenharmony_ci            Test7BitDeliverySms4();
74e5d0e473Sopenharmony_ci            break;
75e5d0e473Sopenharmony_ci        default:
76e5d0e473Sopenharmony_ci            loopFlag = false;
77e5d0e473Sopenharmony_ci            break;
78e5d0e473Sopenharmony_ci    }
79e5d0e473Sopenharmony_ci}
80e5d0e473Sopenharmony_ci
81e5d0e473Sopenharmony_civoid SmsGsmMessageTest::ProcessTest() const
82e5d0e473Sopenharmony_ci{
83e5d0e473Sopenharmony_ci    bool loopFlag = true;
84e5d0e473Sopenharmony_ci    while (loopFlag) {
85e5d0e473Sopenharmony_ci        std::cout << "\nusage:please input a cmd num:\n"
86e5d0e473Sopenharmony_ci                     "0:Test7BitSubmitSms\n"
87e5d0e473Sopenharmony_ci                     "1:TestUcs2SubmitSms\n"
88e5d0e473Sopenharmony_ci                     "2:Test7BitDeliverySms\r\n"
89e5d0e473Sopenharmony_ci                     "3:TestUcs2DeliverySms\r\n"
90e5d0e473Sopenharmony_ci                     "4:TestStatusReportSms\r\n"
91e5d0e473Sopenharmony_ci                     "5:TestMultiPageUcs2Sms\r\n"
92e5d0e473Sopenharmony_ci                     "6:TestWapPushSms\r\n"
93e5d0e473Sopenharmony_ci                     "7:TestDataSmsDeliverySms\r\n"
94e5d0e473Sopenharmony_ci                     "8:TestSmsc00DeliverySms\r\n"
95e5d0e473Sopenharmony_ci                     "9:TestMultiPage7bitSms\r\n"
96e5d0e473Sopenharmony_ci                     "10:Test7BitOtherSubmitSms\r\n"
97e5d0e473Sopenharmony_ci                     "11:Test7BitDeliverySms2\r\n"
98e5d0e473Sopenharmony_ci                     "12:Test7BitDeliverySms3\r\n"
99e5d0e473Sopenharmony_ci                     "13:Test7BitDeliverySms4\r\n"
100e5d0e473Sopenharmony_ci                     "Other key:exit \n\n";
101e5d0e473Sopenharmony_ci
102e5d0e473Sopenharmony_ci        int inputCMD = 0;
103e5d0e473Sopenharmony_ci        std::cin >> inputCMD;
104e5d0e473Sopenharmony_ci        while (std::cin.fail()) {
105e5d0e473Sopenharmony_ci            std::cin.clear();
106e5d0e473Sopenharmony_ci            std::cin.ignore();
107e5d0e473Sopenharmony_ci            std::cin >> inputCMD;
108e5d0e473Sopenharmony_ci        }
109e5d0e473Sopenharmony_ci        ProcessInput(inputCMD, loopFlag);
110e5d0e473Sopenharmony_ci    }
111e5d0e473Sopenharmony_ci}
112e5d0e473Sopenharmony_ci
113e5d0e473Sopenharmony_civoid SmsGsmMessageTest::Test7BitSubmitSms() const
114e5d0e473Sopenharmony_ci{
115e5d0e473Sopenharmony_ci    AccessMmsToken token;
116e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector("21010B818176251308F4000002C130");
117e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
118e5d0e473Sopenharmony_ci    if (message == nullptr) {
119e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
120e5d0e473Sopenharmony_ci        return;
121e5d0e473Sopenharmony_ci    }
122e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
123e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
124e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
125e5d0e473Sopenharmony_ci        std::cout << "Test7BitSubmitSms fail!!!" << std::endl;
126e5d0e473Sopenharmony_ci    } else {
127e5d0e473Sopenharmony_ci        std::cout << "Test7BitSubmitSms success!!!" << std::endl;
128e5d0e473Sopenharmony_ci    }
129e5d0e473Sopenharmony_ci}
130e5d0e473Sopenharmony_ci
131e5d0e473Sopenharmony_civoid SmsGsmMessageTest::TestUcs2SubmitSms() const
132e5d0e473Sopenharmony_ci{
133e5d0e473Sopenharmony_ci    AccessMmsToken token;
134e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector("21020B818176251308F40008046D4B8BD5");
135e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
136e5d0e473Sopenharmony_ci    if (message == nullptr) {
137e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
138e5d0e473Sopenharmony_ci        return;
139e5d0e473Sopenharmony_ci    }
140e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
141e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
142e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
143e5d0e473Sopenharmony_ci        std::cout << "TestUcs2SubmitSms fail!!!" << std::endl;
144e5d0e473Sopenharmony_ci    } else {
145e5d0e473Sopenharmony_ci        std::cout << "TestUcs2SubmitSms success!!!" << std::endl;
146e5d0e473Sopenharmony_ci    }
147e5d0e473Sopenharmony_ci}
148e5d0e473Sopenharmony_ci
149e5d0e473Sopenharmony_civoid SmsGsmMessageTest::Test7BitDeliverySms() const
150e5d0e473Sopenharmony_ci{
151e5d0e473Sopenharmony_ci    AccessMmsToken token;
152e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu =
153e5d0e473Sopenharmony_ci        StringUtils::HexToByteVector("0891683108200075F4240D91688129562983F600001240800102142302C130");
154e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
155e5d0e473Sopenharmony_ci    if (message == nullptr) {
156e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
157e5d0e473Sopenharmony_ci        return;
158e5d0e473Sopenharmony_ci    }
159e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
160e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
161e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
162e5d0e473Sopenharmony_ci        std::cout << "Test7BitDeliverySms fail!!!" << std::endl;
163e5d0e473Sopenharmony_ci    } else {
164e5d0e473Sopenharmony_ci        std::cout << "Test7BitDeliverySms success!!!" << std::endl;
165e5d0e473Sopenharmony_ci    }
166e5d0e473Sopenharmony_ci}
167e5d0e473Sopenharmony_ci
168e5d0e473Sopenharmony_civoid SmsGsmMessageTest::TestUcs2DeliverySms() const
169e5d0e473Sopenharmony_ci{
170e5d0e473Sopenharmony_ci    AccessMmsToken token;
171e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu =
172e5d0e473Sopenharmony_ci        StringUtils::HexToByteVector("0891683110206005F0240DA1688176251308F4000832500381459323044F60597D");
173e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
174e5d0e473Sopenharmony_ci    if (message == nullptr) {
175e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
176e5d0e473Sopenharmony_ci        return;
177e5d0e473Sopenharmony_ci    }
178e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
179e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
180e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
181e5d0e473Sopenharmony_ci        std::cout << "TestUcs2DeliverySms fail!!!" << std::endl;
182e5d0e473Sopenharmony_ci    } else {
183e5d0e473Sopenharmony_ci        std::cout << "TestUcs2DeliverySms success!!!" << std::endl;
184e5d0e473Sopenharmony_ci    }
185e5d0e473Sopenharmony_ci}
186e5d0e473Sopenharmony_ci
187e5d0e473Sopenharmony_civoid SmsGsmMessageTest::TestStatusReportSms() const
188e5d0e473Sopenharmony_ci{
189e5d0e473Sopenharmony_ci    AccessMmsToken token;
190e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu =
191e5d0e473Sopenharmony_ci        StringUtils::HexToByteVector("0891683110808805F006510B818176251308F4325013113382233250131143802300");
192e5d0e473Sopenharmony_ci
193e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
194e5d0e473Sopenharmony_ci    if (message == nullptr) {
195e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
196e5d0e473Sopenharmony_ci        return;
197e5d0e473Sopenharmony_ci    }
198e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
199e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
200e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
201e5d0e473Sopenharmony_ci        std::cout << "TestStatusReportSms fail!!!" << std::endl;
202e5d0e473Sopenharmony_ci    } else {
203e5d0e473Sopenharmony_ci        std::cout << "TestStatusReportSms success!!!" << std::endl;
204e5d0e473Sopenharmony_ci    }
205e5d0e473Sopenharmony_ci}
206e5d0e473Sopenharmony_ci
207e5d0e473Sopenharmony_civoid SmsGsmMessageTest::TestMultiPageUcs2Sms() const
208e5d0e473Sopenharmony_ci{
209e5d0e473Sopenharmony_ci    AccessMmsToken token;
210e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector(
211e5d0e473Sopenharmony_ci        "0891683110205005F06005A00110F00008325052214182238C050003D3030200310030002E0063006E002F007100410053004B00380020"
212e5d0e473Sopenharmony_ci        "FF0C4EE5514D6B216708521D6263966476F851738D397528540E5F7154CD60A876846B635E384F7F752830024E2D56FD"
213e5d0e473Sopenharmony_ci        "8054901A0041005000507545723D65B04F539A8CFF0C70B951FB0020002000680074007400700073003A002F002F0075002E0031003000"
214e5d0e473Sopenharmony_ci        "3000310030002E");
215e5d0e473Sopenharmony_ci
216e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
217e5d0e473Sopenharmony_ci    if (message == nullptr) {
218e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
219e5d0e473Sopenharmony_ci        return;
220e5d0e473Sopenharmony_ci    }
221e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
222e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
223e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
224e5d0e473Sopenharmony_ci        std::cout << "TestMultiPageUcs2Sms fail!!!" << std::endl;
225e5d0e473Sopenharmony_ci    } else {
226e5d0e473Sopenharmony_ci        std::cout << "TestMultiPageUcs2Sms success!!!" << std::endl;
227e5d0e473Sopenharmony_ci    }
228e5d0e473Sopenharmony_ci}
229e5d0e473Sopenharmony_ci
230e5d0e473Sopenharmony_civoid SmsGsmMessageTest::TestWapPushSms() const
231e5d0e473Sopenharmony_ci{
232e5d0e473Sopenharmony_ci    AccessMmsToken token;
233e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector(
234e5d0e473Sopenharmony_ci        "0891683110205005F0640BA10156455102F1000432109261715023880605040B8423F04C06246170706C69636174696F6E2F766E642E77"
235e5d0e473Sopenharmony_ci        "61702E6D6D732D6D65737361676500B487AF848C829850765030303031365A645430008D9089178031363630373532313930382F545950"
236e5d0e473Sopenharmony_ci        "453D504C4D4E008A808E040001298D"
237e5d0e473Sopenharmony_ci        "8805810303F47B83687474703A2F2F31302E3132332E31382E38303A3138302F76564F455F3000");
238e5d0e473Sopenharmony_ci
239e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
240e5d0e473Sopenharmony_ci    if (message == nullptr) {
241e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
242e5d0e473Sopenharmony_ci        return;
243e5d0e473Sopenharmony_ci    }
244e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
245e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
246e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
247e5d0e473Sopenharmony_ci        std::cout << "TestWapPushSms fail!!!" << std::endl;
248e5d0e473Sopenharmony_ci    } else {
249e5d0e473Sopenharmony_ci        std::cout << "TestWapPushSms success!!!" << std::endl;
250e5d0e473Sopenharmony_ci    }
251e5d0e473Sopenharmony_ci}
252e5d0e473Sopenharmony_ci
253e5d0e473Sopenharmony_civoid SmsGsmMessageTest::TestDataSmsDeliverySms() const
254e5d0e473Sopenharmony_ci{
255e5d0e473Sopenharmony_ci    AccessMmsToken token;
256e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector(
257e5d0e473Sopenharmony_ci        "0891683110808805F0640D91686106571209F80000327030021205231306050400640000E8329BFD06DDDF723619");
258e5d0e473Sopenharmony_ci
259e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
260e5d0e473Sopenharmony_ci    if (message == nullptr) {
261e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
262e5d0e473Sopenharmony_ci        return;
263e5d0e473Sopenharmony_ci    }
264e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
265e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
266e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
267e5d0e473Sopenharmony_ci        std::cout << "TestDataSmsDeliverySms fail!!!" << std::endl;
268e5d0e473Sopenharmony_ci    } else {
269e5d0e473Sopenharmony_ci        std::cout << "TestDataSmsDeliverySms success!!!" << std::endl;
270e5d0e473Sopenharmony_ci    }
271e5d0e473Sopenharmony_ci}
272e5d0e473Sopenharmony_ci
273e5d0e473Sopenharmony_civoid SmsGsmMessageTest::TestSmsc00DeliverySms() const
274e5d0e473Sopenharmony_ci{
275e5d0e473Sopenharmony_ci    AccessMmsToken token;
276e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector("00240D91689141468496F600001270721142432302B319");
277e5d0e473Sopenharmony_ci
278e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
279e5d0e473Sopenharmony_ci    if (message == nullptr) {
280e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
281e5d0e473Sopenharmony_ci        return;
282e5d0e473Sopenharmony_ci    }
283e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
284e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
285e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
286e5d0e473Sopenharmony_ci        std::cout << "TestSmsc00DeliverySms fail!!!" << std::endl;
287e5d0e473Sopenharmony_ci    } else {
288e5d0e473Sopenharmony_ci        std::cout << "TestSmsc00DeliverySms success!!!" << std::endl;
289e5d0e473Sopenharmony_ci    }
290e5d0e473Sopenharmony_ci}
291e5d0e473Sopenharmony_ci
292e5d0e473Sopenharmony_civoid SmsGsmMessageTest::TestMultiPage7bitSms() const
293e5d0e473Sopenharmony_ci{
294e5d0e473Sopenharmony_ci    AccessMmsToken token;
295e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector(
296e5d0e473Sopenharmony_ci        "0891683110206005F0640DA1688176251308F4000032806190051123A00500030F020162B1582C168BC562B1582C168BC562B2198D369B"
297e5d0e473Sopenharmony_ci        "CD68B5582C269BCD62B1582C168BC562B1582C168BC562B1582C168BC562B1582C168BC562B1582C168BC562B1582C168BC562B1582C16"
298e5d0e473Sopenharmony_ci        "8BC562B1582C168BC562B1582C168BC562B1582C168BC562B1582C168BC562B1582C168BC540B1582C168BC562B1582C168BC56231D98C"
299e5d0e473Sopenharmony_ci        "469BCD66");
300e5d0e473Sopenharmony_ci
301e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
302e5d0e473Sopenharmony_ci    if (message == nullptr) {
303e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
304e5d0e473Sopenharmony_ci        return;
305e5d0e473Sopenharmony_ci    }
306e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
307e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
308e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
309e5d0e473Sopenharmony_ci        std::cout << "TestMultiPage7bitSms fail!!!" << std::endl;
310e5d0e473Sopenharmony_ci    } else {
311e5d0e473Sopenharmony_ci        std::cout << "TestMultiPage7bitSms success!!!" << std::endl;
312e5d0e473Sopenharmony_ci    }
313e5d0e473Sopenharmony_ci}
314e5d0e473Sopenharmony_ci
315e5d0e473Sopenharmony_civoid SmsGsmMessageTest::Test7BitOtherSubmitSms() const
316e5d0e473Sopenharmony_ci{
317e5d0e473Sopenharmony_ci    AccessMmsToken token;
318e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector("00010005910110F0000003E17018");
319e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
320e5d0e473Sopenharmony_ci    if (message == nullptr) {
321e5d0e473Sopenharmony_ci        std::cout << "message is nullptr!" << std::endl;
322e5d0e473Sopenharmony_ci        return;
323e5d0e473Sopenharmony_ci    }
324e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
325e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
326e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
327e5d0e473Sopenharmony_ci        std::cout << "Test7BitOtherSubmitSms fail!!!" << std::endl;
328e5d0e473Sopenharmony_ci    } else {
329e5d0e473Sopenharmony_ci        std::cout << "Test7BitOtherSubmitSms success!!!" << std::endl;
330e5d0e473Sopenharmony_ci    }
331e5d0e473Sopenharmony_ci}
332e5d0e473Sopenharmony_ci
333e5d0e473Sopenharmony_civoid SmsGsmMessageTest::Test7BitDeliverySms2() const
334e5d0e473Sopenharmony_ci{
335e5d0e473Sopenharmony_ci    AccessMmsToken token;
336e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector("07915892208800F0040ED0A3F19CDD7A52A100084"
337e5d0e473Sopenharmony_ci       "24011119582235C4F60768400630073006C00200041007000704E006B2160275BC678BC70BA00340038003700330032003730025"
338e5d0e473Sopenharmony_ci       "98267097591554FFF0C8ACB806F7D6100630073006C670D52D971B17DDA003200350031003200330031003200333002");
339e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
340e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
341e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
342e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
343e5d0e473Sopenharmony_ci        std::cout << "Test7BitDeliverySms2 fail!!!" << std::endl;
344e5d0e473Sopenharmony_ci    } else {
345e5d0e473Sopenharmony_ci        std::cout << "Test7BitDeliverySms2 success!!!" << std::endl;
346e5d0e473Sopenharmony_ci    }
347e5d0e473Sopenharmony_ci}
348e5d0e473Sopenharmony_ci
349e5d0e473Sopenharmony_civoid SmsGsmMessageTest::Test7BitDeliverySms3() const
350e5d0e473Sopenharmony_ci{
351e5d0e473Sopenharmony_ci    AccessMmsToken token;
352e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector("07915892208800F00410D0A3F19CDD7A52A13400084"
353e5d0e473Sopenharmony_ci        "24011119582235C4F60768400630073006C00200041007000704E006B2160275BC678BC70BA003400380037003300320037300259"
354e5d0e473Sopenharmony_ci        "8267097591554FFF0C8ACB806F7D6100630073006C670D52D971B17DDA003200350031003200330031003200333002");
355e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
356e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
357e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
358e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
359e5d0e473Sopenharmony_ci        std::cout << "Test7BitDeliverySms3 fail!!!" << std::endl;
360e5d0e473Sopenharmony_ci    } else {
361e5d0e473Sopenharmony_ci        std::cout << "Test7BitDeliverySms3 success!!!" << std::endl;
362e5d0e473Sopenharmony_ci    }
363e5d0e473Sopenharmony_ci}
364e5d0e473Sopenharmony_ci
365e5d0e473Sopenharmony_civoid SmsGsmMessageTest::Test7BitDeliverySms4() const
366e5d0e473Sopenharmony_ci{
367e5d0e473Sopenharmony_ci    AccessMmsToken token;
368e5d0e473Sopenharmony_ci    std::vector<unsigned char> pdu = StringUtils::HexToByteVector("07915892208800F0040DD0A3F19CDD7A520100084"
369e5d0e473Sopenharmony_ci        "24011119582235C4F60768400630073006C00200041007000704E006B2160275BC678BC70BA0034003800370033003200373002"
370e5d0e473Sopenharmony_ci        "598267097591554FFF0C8ACB806F7D6100630073006C670D52D971B17DDA003200350031003200330031003200333002");
371e5d0e473Sopenharmony_ci    ShortMessage *message = new ShortMessage();
372e5d0e473Sopenharmony_ci    ShortMessage::CreateMessage(pdu, u"3gpp", *message);
373e5d0e473Sopenharmony_ci    gsmMessage_ = std::unique_ptr<ShortMessage>(message);
374e5d0e473Sopenharmony_ci    if (gsmMessage_ == nullptr) {
375e5d0e473Sopenharmony_ci        std::cout << "Test7BitDeliverySms4 fail!!!" << std::endl;
376e5d0e473Sopenharmony_ci    } else {
377e5d0e473Sopenharmony_ci        std::cout << "Test7BitDeliverySms4 success!!!" << std::endl;
378e5d0e473Sopenharmony_ci    }
379e5d0e473Sopenharmony_ci}
380e5d0e473Sopenharmony_ci} // namespace Telephony
381e5d0e473Sopenharmony_ci} // namespace OHOS