* Copyright (C) 2022 Huawei Device Co., Ltd.
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#define private public
#define protected public
#include "gtest/gtest.h"
#include "cellular_call_data_struct.h"
#include "call_manager_inner_type.h"
#include "mmi_code_message.h"
namespace OHOS {
namespace Telephony {
using namespace testing::ext;
class MmiCodeMessageTest : public testing::Test {
public:
static void SetUpTestCase();
static void TearDownTestCase();
void SetUp();
void TearDown();
};
void MmiCodeMessageTest::SetUpTestCase() {}
void MmiCodeMessageTest::TearDownTestCase() {}
void MmiCodeMessageTest::SetUp() {}
void MmiCodeMessageTest::TearDown() {}
* @tc.number Telephony_MmiCodeMessageTest_0001
* @tc.name Test MmiCodeMessage CreateGetCallWaitingResultMessage
* @tc.desc Function test
*/
HWTEST_F(MmiCodeMessageTest, MmiCodeMessageTest_0001, Function | MediumTest | Level1)
{
CallWaitResponse response;
std::string resultMessage;
std::string compareMessage;
compareMessage.append("\n");
compareMessage.append(SERVICE_DISABLE);
CreateGetCallWaitingResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.status = 1;
response.classCw = ServiceClassType::VOICE;
resultMessage = "";
compareMessage = "";
compareMessage.append("\n");
compareMessage.append(SERVICE_ENABLE_FOR);
compareMessage.append("\nVoice");
CreateGetCallWaitingResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classCw = ServiceClassType::FAX;
resultMessage = "";
compareMessage = "";
compareMessage.append("\n");
compareMessage.append(SERVICE_ENABLE_FOR);
compareMessage.append("\nFax");
CreateGetCallWaitingResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classCw = ServiceClassType::SHORT_MESSAGE_SERVICE;
resultMessage = "";
compareMessage = "";
compareMessage.append("\n");
compareMessage.append(SERVICE_ENABLE_FOR);
compareMessage.append("\nMessage");
CreateGetCallWaitingResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classCw = ServiceClassType::DATA_CIRCUIT_SYNC;
resultMessage = "";
compareMessage = "";
compareMessage.append("\n");
compareMessage.append(SERVICE_ENABLE_FOR);
compareMessage.append("\nSync");
CreateGetCallWaitingResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
}
* @tc.number Telephony_MmiCodeMessageTest_0002
* @tc.name Test MmiCodeMessage CreateGetCallWaitingResultMessage
* @tc.desc Function test
*/
HWTEST_F(MmiCodeMessageTest, MmiCodeMessageTest_0002, Function | MediumTest | Level1)
{
CallWaitResponse response;
std::string resultMessage;
std::string compareMessage;
response.status = 1;
response.classCw = ServiceClassType::DATA_CIRCUIT_ASYNC;
resultMessage = "";
compareMessage = "";
compareMessage.append("\n");
compareMessage.append(SERVICE_ENABLE_FOR);
compareMessage.append("\nAsync");
CreateGetCallWaitingResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classCw = ServiceClassType::DEDICATED_PACKET_ACCESS;
resultMessage = "";
compareMessage = "";
compareMessage.append("\n");
compareMessage.append(SERVICE_ENABLE_FOR);
compareMessage.append("\nPackage");
CreateGetCallWaitingResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classCw = ServiceClassType::DEDICATED_PAD_ACCESS;
resultMessage = "";
compareMessage = "";
compareMessage.append("\n");
compareMessage.append(SERVICE_ENABLE_FOR);
compareMessage.append("\nPad");
CreateGetCallWaitingResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classCw = 256;
resultMessage = "";
compareMessage = "\nService was enabled for:";
CreateGetCallWaitingResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
}
* @tc.number Telephony_MmiCodeMessageTest_0003
* @tc.name Test MmiCodeMessage GetServiceClassName
* @tc.desc Function test
*/
HWTEST_F(MmiCodeMessageTest, MmiCodeMessageTest_0003, Function | MediumTest | Level1)
{
int32_t classex;
classex = ServiceClassType::VOICE;
EXPECT_EQ(GetServiceClassName(classex), "Voice");
classex = ServiceClassType::FAX;
EXPECT_EQ(GetServiceClassName(classex), "Fax");
classex = ServiceClassType::SHORT_MESSAGE_SERVICE;
EXPECT_EQ(GetServiceClassName(classex), "Message");
classex = ServiceClassType::DATA_CIRCUIT_SYNC;
EXPECT_EQ(GetServiceClassName(classex), "Sync");
classex = ServiceClassType::DATA_CIRCUIT_ASYNC;
EXPECT_EQ(GetServiceClassName(classex), "Async");
classex = ServiceClassType::DEDICATED_PACKET_ACCESS;
EXPECT_EQ(GetServiceClassName(classex), "Package");
classex = ServiceClassType::DEDICATED_PAD_ACCESS;
EXPECT_EQ(GetServiceClassName(classex), "Pad");
classex = 256;
EXPECT_EQ(GetServiceClassName(classex), "Unknow");
}
* @tc.number Telephony_MmiCodeMessageTest_0004
* @tc.name Test MmiCodeMessage CreateServiceClassMessage
* @tc.desc Function test
*/
HWTEST_F(MmiCodeMessageTest, MmiCodeMessageTest_0004, Function | MediumTest | Level1)
{
std::string resultMessage;
int32_t classex = ServiceClassType::VOICE;
CreateServiceClassMessage(resultMessage, classex);
EXPECT_EQ(resultMessage, "\nVoice");
classex = ServiceClassType::FAX;
resultMessage = "";
CreateServiceClassMessage(resultMessage, classex);
EXPECT_EQ(resultMessage, "\nFax");
classex = ServiceClassType::SHORT_MESSAGE_SERVICE;
resultMessage = "";
CreateServiceClassMessage(resultMessage, classex);
EXPECT_EQ(resultMessage, "\nMessage");
classex = ServiceClassType::DATA_CIRCUIT_SYNC;
resultMessage = "";
CreateServiceClassMessage(resultMessage, classex);
EXPECT_EQ(resultMessage, "\nSync");
classex = ServiceClassType::DATA_CIRCUIT_ASYNC;
resultMessage = "";
CreateServiceClassMessage(resultMessage, classex);
EXPECT_EQ(resultMessage, "\nAsync");
classex = ServiceClassType::DEDICATED_PACKET_ACCESS;
resultMessage = "";
CreateServiceClassMessage(resultMessage, classex);
EXPECT_EQ(resultMessage, "\nPackage");
classex = ServiceClassType::DEDICATED_PAD_ACCESS;
resultMessage = "";
CreateServiceClassMessage(resultMessage, classex);
EXPECT_EQ(resultMessage, "\nPad");
classex = 256;
resultMessage = "";
CreateServiceClassMessage(resultMessage, classex);
EXPECT_EQ(resultMessage, "");
}
* @tc.number Telephony_MmiCodeMessageTest_0005
* @tc.name Test MmiCodeMessage CreateSuppSvcQueryResultMessage
* @tc.desc Function test
*/
HWTEST_F(MmiCodeMessageTest, MmiCodeMessageTest_0005, Function | MediumTest | Level1)
{
std::string resultMessage;
int32_t result = TELEPHONY_SUCCESS;
int32_t status = SS_DISABLED;
std::string compareMessage;
compareMessage.append("\n");
compareMessage.append(SERVICE_DISABLE);
CreateSuppSvcQueryResultMessage(resultMessage, result, status);
EXPECT_EQ(resultMessage, compareMessage);
status = SS_ENABLED;
resultMessage = "";
compareMessage = "";
compareMessage.append("\n");
compareMessage.append(SERVICE_ENABLE);
CreateSuppSvcQueryResultMessage(resultMessage, result, status);
EXPECT_EQ(resultMessage, compareMessage);
result = TELEPHONY_ERROR;
resultMessage = "";
compareMessage = "";
CreateSuppSvcQueryResultMessage(resultMessage, result, status);
EXPECT_EQ(resultMessage, compareMessage);
}
* @tc.number Telephony_MmiCodeMessageTest_0006
* @tc.name Test MmiCodeMessage CreateGetCallTransferResultMessage
* @tc.desc Function test
*/
HWTEST_F(MmiCodeMessageTest, MmiCodeMessageTest_0006, Function | MediumTest | Level1)
{
std::string resultMessage;
std::string compareMessage;
CallTransferResponse response;
response.classx = ServiceClassType::VOICE;
response.result = TELEPHONY_ERROR;
CreateGetCallTransferResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.result = TELEPHONY_SUCCESS;
resultMessage = "";
compareMessage = "\nVoice: Not forwarded";
CreateGetCallTransferResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classx = ServiceClassType::FAX;
compareMessage = "\nFax: Not forwarded";
resultMessage = "";
CreateGetCallTransferResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classx = ServiceClassType::SHORT_MESSAGE_SERVICE;
compareMessage = "\nMessage: Not forwarded";
resultMessage = "";
CreateGetCallTransferResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classx = ServiceClassType::DATA_CIRCUIT_SYNC;
compareMessage = "\nSync: Not forwarded";
resultMessage = "";
CreateGetCallTransferResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classx = ServiceClassType::DATA_CIRCUIT_ASYNC;
compareMessage = "\nAsync: Not forwarded";
resultMessage = "";
CreateGetCallTransferResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
}
* @tc.number Telephony_MmiCodeMessageTest_0007
* @tc.name Test MmiCodeMessage CreateGetCallTransferResultMessage
* @tc.desc Function test
*/
HWTEST_F(MmiCodeMessageTest, MmiCodeMessageTest_0007, Function | MediumTest | Level1)
{
std::string resultMessage;
CallTransferResponse response;
response.classx = ServiceClassType::DEDICATED_PACKET_ACCESS;
std::string compareMessage = "\nPackage: Not forwarded";
CreateGetCallTransferResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classx = ServiceClassType::DEDICATED_PAD_ACCESS;
compareMessage = "\nPad: Not forwarded";
resultMessage = "";
CreateGetCallTransferResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
response.classx = 256;
compareMessage = "\n";
resultMessage = "";
CreateGetCallTransferResultMessage(resultMessage, response);
EXPECT_EQ(resultMessage, compareMessage);
}
* @tc.number Telephony_MmiCodeMessageTest_0008
* @tc.name Test MmiCodeMessage MakeCallTransferMessageEx
* @tc.desc Function test
*/
HWTEST_F(MmiCodeMessageTest, MmiCodeMessageTest_0008, Function | MediumTest | Level1)
{
std::string resultMessage;
CallTransferResponse response;
response.status = SS_ENABLED;
int32_t classex = ServiceClassType::VOICE;
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Voice: ");
classex = ServiceClassType::FAX;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Fax: ");
classex = ServiceClassType::SHORT_MESSAGE_SERVICE;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Message: ");
classex = ServiceClassType::DATA_CIRCUIT_SYNC;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Sync: ");
classex = ServiceClassType::DATA_CIRCUIT_ASYNC;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Async: ");
classex = ServiceClassType::DEDICATED_PACKET_ACCESS;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Package: ");
classex = ServiceClassType::DEDICATED_PAD_ACCESS;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Pad: ");
classex = 256;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Unknow: ");
}
* @tc.number Telephony_MmiCodeMessageTest_0009
* @tc.name Test MmiCodeMessage MakeCallTransferMessageEx
* @tc.desc Function test
*/
HWTEST_F(MmiCodeMessageTest, MmiCodeMessageTest_0009, Function | MediumTest | Level1)
{
std::string resultMessage;
CallTransferResponse response;
response.status = SS_ENABLED;
response.reason = TRANSFER_REASON_TYPE_NO_REPLY;
int32_t classex = ServiceClassType::VOICE;
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Voice: after 0 seconds");
classex = ServiceClassType::FAX;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Fax: after 0 seconds");
classex = ServiceClassType::SHORT_MESSAGE_SERVICE;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Message: after 0 seconds");
classex = ServiceClassType::DATA_CIRCUIT_SYNC;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Sync: after 0 seconds");
classex = ServiceClassType::DATA_CIRCUIT_ASYNC;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Async: after 0 seconds");
classex = ServiceClassType::DEDICATED_PACKET_ACCESS;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Package: after 0 seconds");
classex = ServiceClassType::DEDICATED_PAD_ACCESS;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Pad: after 0 seconds");
classex = 256;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Unknow: after 0 seconds");
}
* @tc.number Telephony_MmiCodeMessageTest_0010
* @tc.name Test MmiCodeMessage MakeCallTransferMessageEx
* @tc.desc Function test
*/
HWTEST_F(MmiCodeMessageTest, MmiCodeMessageTest_0010, Function | MediumTest | Level1)
{
std::string resultMessage;
CallTransferResponse response;
response.status = SS_DISABLED;
int32_t classex = ServiceClassType::VOICE;
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Voice: Not forwarded");
classex = ServiceClassType::FAX;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Fax: Not forwarded");
classex = ServiceClassType::SHORT_MESSAGE_SERVICE;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Message: Not forwarded");
classex = ServiceClassType::DATA_CIRCUIT_SYNC;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Sync: Not forwarded");
classex = ServiceClassType::DATA_CIRCUIT_ASYNC;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Async: Not forwarded");
classex = ServiceClassType::DEDICATED_PACKET_ACCESS;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Package: Not forwarded");
classex = ServiceClassType::DEDICATED_PAD_ACCESS;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Pad: Not forwarded");
classex = 256;
resultMessage = "";
MakeCallTransferMessageEx(resultMessage, response, classex);
EXPECT_EQ(resultMessage, "Unknow: Not forwarded");
}
}
}