17c804472Sopenharmony_ci/* 27c804472Sopenharmony_ci * Copyright (c) 2024 Huawei Device Co., Ltd. 37c804472Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 47c804472Sopenharmony_ci * you may not use this file except in compliance with the License. 57c804472Sopenharmony_ci * You may obtain a copy of the License at 67c804472Sopenharmony_ci * 77c804472Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 87c804472Sopenharmony_ci * 97c804472Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 107c804472Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 117c804472Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 127c804472Sopenharmony_ci * See the License for the specific language governing permissions and 137c804472Sopenharmony_ci * limitations under the License. 147c804472Sopenharmony_ci */ 157c804472Sopenharmony_ci#include <string> 167c804472Sopenharmony_ci#include <map> 177c804472Sopenharmony_ci#include "gtest/gtest.h" 187c804472Sopenharmony_ci#define private public 197c804472Sopenharmony_ci#define protected public 207c804472Sopenharmony_ci#include "CommandLineFactory.h" 217c804472Sopenharmony_ci#include "CommandParser.h" 227c804472Sopenharmony_ci#include "JsAppImpl.h" 237c804472Sopenharmony_ci#include "MockGlobalResult.h" 247c804472Sopenharmony_ci#include "VirtualScreenImpl.h" 257c804472Sopenharmony_ci#include "KeyInputImpl.h" 267c804472Sopenharmony_ci#include "MouseInputImpl.h" 277c804472Sopenharmony_ci#include "SharedData.h" 287c804472Sopenharmony_ci#include "MouseWheelImpl.h" 297c804472Sopenharmony_ci#include "Interrupter.h" 307c804472Sopenharmony_ci 317c804472Sopenharmony_cinamespace { 327c804472Sopenharmony_ci class CommandLineTest : public ::testing::Test { 337c804472Sopenharmony_ci public: 347c804472Sopenharmony_ci CommandLineTest() {} 357c804472Sopenharmony_ci ~CommandLineTest() {} 367c804472Sopenharmony_ci static std::unique_ptr<LocalSocket> socket; 377c804472Sopenharmony_ci protected: 387c804472Sopenharmony_ci static void SetUpTestCase() 397c804472Sopenharmony_ci { 407c804472Sopenharmony_ci socket = std::make_unique<LocalSocket>(); 417c804472Sopenharmony_ci SharedData<bool>(SharedDataType::KEEP_SCREEN_ON, true); 427c804472Sopenharmony_ci SharedData<uint8_t>(SharedDataType::BATTERY_STATUS, (uint8_t)ChargeState::NOCHARGE, 437c804472Sopenharmony_ci (uint8_t)ChargeState::NOCHARGE, (uint8_t)ChargeState::CHARGING); 447c804472Sopenharmony_ci // The brightness ranges from 1 to 255. The default value is 255. 457c804472Sopenharmony_ci SharedData<uint8_t>(SharedDataType::BRIGHTNESS_VALUE, 255, 1, 255); 467c804472Sopenharmony_ci SharedData<uint8_t>(SharedDataType::BRIGHTNESS_MODE, (uint8_t)BrightnessMode::MANUAL, 477c804472Sopenharmony_ci (uint8_t)BrightnessMode::MANUAL, (uint8_t)BrightnessMode::AUTO); 487c804472Sopenharmony_ci // The value ranges from 0 to 999999. The default value is 0. 497c804472Sopenharmony_ci SharedData<uint32_t>(SharedDataType::SUMSTEP_VALUE, 0, 0, 999999); 507c804472Sopenharmony_ci // The volume ranges from 0.0 to 1.0. The default value is 1.0. 517c804472Sopenharmony_ci SharedData<double>(SharedDataType::VOLUME_VALUE, 1.0, 0.0, 1.0); 527c804472Sopenharmony_ci // Battery level range: 0.0–1.0; default: 1.0 537c804472Sopenharmony_ci SharedData<double>(SharedDataType::BATTERY_LEVEL, 1.0, 0.0, 1.0); 547c804472Sopenharmony_ci // Heart rate range: 0 to 255. The default value is 80. 557c804472Sopenharmony_ci SharedData<uint8_t>(SharedDataType::HEARTBEAT_VALUE, 80, 0, 255); 567c804472Sopenharmony_ci SharedData<std::string>(SharedDataType::LANGUAGE, "zh-CN"); 577c804472Sopenharmony_ci // The value ranges from 180 to 180. The default value is 0. 587c804472Sopenharmony_ci SharedData<double>(SharedDataType::LONGITUDE, 0, -180, 180); 597c804472Sopenharmony_ci // The atmospheric pressure ranges from 0 to 999900. The default value is 101325. 607c804472Sopenharmony_ci SharedData<uint32_t>(SharedDataType::PRESSURE_VALUE, 101325, 0, 999900); 617c804472Sopenharmony_ci SharedData<bool>(SharedDataType::WEARING_STATE, true); 627c804472Sopenharmony_ci // The value ranges from -90 to 90. The default value is 0. 637c804472Sopenharmony_ci SharedData<double>(SharedDataType::LATITUDE, 0, -90, 90); 647c804472Sopenharmony_ci } 657c804472Sopenharmony_ci }; 667c804472Sopenharmony_ci 677c804472Sopenharmony_ci std::unique_ptr<LocalSocket> CommandLineTest::socket = nullptr; 687c804472Sopenharmony_ci 697c804472Sopenharmony_ci 707c804472Sopenharmony_ci TEST_F(CommandLineTest, BackClickedCommandTest) 717c804472Sopenharmony_ci { 727c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 737c804472Sopenharmony_ci std::string msg = "{\"args\":null}"; 747c804472Sopenharmony_ci Json2::Value args = JsonReader::ParseJsonData2(msg); 757c804472Sopenharmony_ci BackClickedCommand command(type, args, *socket); 767c804472Sopenharmony_ci g_dispatchOsBackEvent = false; 777c804472Sopenharmony_ci command.CheckAndRun(); 787c804472Sopenharmony_ci EXPECT_TRUE(g_dispatchOsBackEvent); 797c804472Sopenharmony_ci } 807c804472Sopenharmony_ci 817c804472Sopenharmony_ci TEST_F(CommandLineTest, InspectorJSONTreeTest) 827c804472Sopenharmony_ci { 837c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 847c804472Sopenharmony_ci Json2::Value args; 857c804472Sopenharmony_ci InspectorJSONTree command(type, args, *socket); 867c804472Sopenharmony_ci g_getJSONTree = false; 877c804472Sopenharmony_ci command.CheckAndRun(); 887c804472Sopenharmony_ci EXPECT_TRUE(g_getJSONTree); 897c804472Sopenharmony_ci } 907c804472Sopenharmony_ci 917c804472Sopenharmony_ci TEST_F(CommandLineTest, InspectorDefaultTest) 927c804472Sopenharmony_ci { 937c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 947c804472Sopenharmony_ci Json2::Value args; 957c804472Sopenharmony_ci InspectorDefault command(type, args, *socket); 967c804472Sopenharmony_ci g_getDefaultJSONTree = false; 977c804472Sopenharmony_ci command.CheckAndRun(); 987c804472Sopenharmony_ci EXPECT_TRUE(g_getDefaultJSONTree); 997c804472Sopenharmony_ci } 1007c804472Sopenharmony_ci 1017c804472Sopenharmony_ci TEST_F(CommandLineTest, OrientationCommandTest) 1027c804472Sopenharmony_ci { 1037c804472Sopenharmony_ci JsAppImpl::GetInstance().orientation = ""; 1047c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 1057c804472Sopenharmony_ci // args是null 1067c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 1077c804472Sopenharmony_ci OrientationCommand command1(type, args1, *socket); 1087c804472Sopenharmony_ci command1.CheckAndRun(); 1097c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().GetOrientation(), ""); 1107c804472Sopenharmony_ci // 无Orientation 1117c804472Sopenharmony_ci std::string jsonStr = "{\"aaaa\":\"landscape\"}"; 1127c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(jsonStr); 1137c804472Sopenharmony_ci OrientationCommand command2(type, args2, *socket); 1147c804472Sopenharmony_ci command2.CheckAndRun(); 1157c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().GetOrientation(), ""); 1167c804472Sopenharmony_ci // 有Orientation,但不是string类型 1177c804472Sopenharmony_ci jsonStr = "{\"Orientation\":\"aaaaa\"}"; 1187c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(jsonStr); 1197c804472Sopenharmony_ci OrientationCommand command3(type, args3, *socket); 1207c804472Sopenharmony_ci command3.CheckAndRun(); 1217c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().GetOrientation(), ""); 1227c804472Sopenharmony_ci // Orientation : landscape 1237c804472Sopenharmony_ci jsonStr = "{\"Orientation\":\"landscape\"}"; 1247c804472Sopenharmony_ci Json2::Value args4 = JsonReader::ParseJsonData2(jsonStr); 1257c804472Sopenharmony_ci OrientationCommand command4(type, args4, *socket); 1267c804472Sopenharmony_ci g_output = false; 1277c804472Sopenharmony_ci command4.CheckAndRun(); 1287c804472Sopenharmony_ci EXPECT_TRUE(g_output); 1297c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().GetOrientation(), "landscape"); 1307c804472Sopenharmony_ci // Orientation : portrait 1317c804472Sopenharmony_ci args4.Replace("Orientation", "portrait"); 1327c804472Sopenharmony_ci OrientationCommand command5(type, args4, *socket); 1337c804472Sopenharmony_ci command5.CheckAndRun(); 1347c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().GetOrientation(), "portrait"); 1357c804472Sopenharmony_ci } 1367c804472Sopenharmony_ci 1377c804472Sopenharmony_ci // 参数异常 1387c804472Sopenharmony_ci TEST_F(CommandLineTest, ResolutionSwitchCommandArgsTest) 1397c804472Sopenharmony_ci { 1407c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 1417c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 1427c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 1437c804472Sopenharmony_ci // null 1447c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 1457c804472Sopenharmony_ci ResolutionSwitchCommand command1(type, args1, *socket); 1467c804472Sopenharmony_ci command1.CheckAndRun(); 1477c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().width, 0); 1487c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().height, 0); 1497c804472Sopenharmony_ci // 缺失参数 1507c804472Sopenharmony_ci std::string jsonStr = R"({"aaaaa":1080,"originHeight":2340,"width":1080,"height":2340,"screenDensity":480})"; 1517c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(jsonStr); 1527c804472Sopenharmony_ci ResolutionSwitchCommand command3(type, args2, *socket); 1537c804472Sopenharmony_ci command3.CheckAndRun(); 1547c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().width, 1080); 1557c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().height, 2340); 1567c804472Sopenharmony_ci } 1577c804472Sopenharmony_ci 1587c804472Sopenharmony_ci // 参数类型异常 1597c804472Sopenharmony_ci TEST_F(CommandLineTest, ResolutionSwitchCommandArgsTypeTest) 1607c804472Sopenharmony_ci { 1617c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 1627c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 1637c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 1647c804472Sopenharmony_ci std::string jsonStr = R"({"originWidth":"1080","originHeight":2340,"width":1080, 1657c804472Sopenharmony_ci "height":2340,"screenDensity":480})"; 1667c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(jsonStr); 1677c804472Sopenharmony_ci ResolutionSwitchCommand command3(type, args2, *socket); 1687c804472Sopenharmony_ci command3.CheckAndRun(); 1697c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().width, 1080); 1707c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().height, 2340); 1717c804472Sopenharmony_ci 1727c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 1737c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 1747c804472Sopenharmony_ci std::string jsonStr1 = R"({"originWidth" : 1080, "originHeight" : 2340, "width" : 1080, 1757c804472Sopenharmony_ci "height" : 2340, "screenDensity" : 480, "reason" : 333})"; 1767c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(jsonStr1); 1777c804472Sopenharmony_ci ResolutionSwitchCommand command1(type, args1, *socket); 1787c804472Sopenharmony_ci command1.CheckAndRun(); 1797c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().width, 0); 1807c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().height, 0); 1817c804472Sopenharmony_ci } 1827c804472Sopenharmony_ci 1837c804472Sopenharmony_ci // 参数范围异常 1847c804472Sopenharmony_ci TEST_F(CommandLineTest, ResolutionSwitchCommandArgsRangesTest) 1857c804472Sopenharmony_ci { 1867c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 1877c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 1887c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 1897c804472Sopenharmony_ci std::string jsonStr = R"({"originWidth":5000,"originHeight":2340,"width":1080, 1907c804472Sopenharmony_ci "height":2340,"screenDensity":480})"; 1917c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(jsonStr); 1927c804472Sopenharmony_ci ResolutionSwitchCommand command3(type, args2, *socket); 1937c804472Sopenharmony_ci command3.CheckAndRun(); 1947c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().width, 1080); 1957c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().height, 2340); 1967c804472Sopenharmony_ci 1977c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 1987c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 1997c804472Sopenharmony_ci std::string jsonStr1 = R"({"originWidth" : 1080, "originHeight" : 2340, "width" : 1080, 2007c804472Sopenharmony_ci "height" : 2340, "screenDensity" : 480, "reason" : "aaa"})"; 2017c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(jsonStr1); 2027c804472Sopenharmony_ci ResolutionSwitchCommand command1(type, args1, *socket); 2037c804472Sopenharmony_ci command1.CheckAndRun(); 2047c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().width, 0); 2057c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().height, 0); 2067c804472Sopenharmony_ci 2077c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 2087c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 2097c804472Sopenharmony_ci std::string jsonStr4 = R"({"originWidth" : 1080, "originHeight" : 2340, "width" : 1080, 2107c804472Sopenharmony_ci "height" : 2340, "screenDensity" : 100, "reason" : "resize"})"; 2117c804472Sopenharmony_ci Json2::Value args4 = JsonReader::ParseJsonData2(jsonStr4); 2127c804472Sopenharmony_ci ResolutionSwitchCommand command4(type, args4, *socket); 2137c804472Sopenharmony_ci command4.CheckAndRun(); 2147c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().width, 0); 2157c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().height, 0); 2167c804472Sopenharmony_ci 2177c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 2187c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 2197c804472Sopenharmony_ci std::string jsonStr5 = R"({"originWidth" : 1080, "originHeight" : 2340, "width" : 1080, 2207c804472Sopenharmony_ci "height" : 2340, "screenDensity" : 700, "reason" : "resize"})"; 2217c804472Sopenharmony_ci Json2::Value args5 = JsonReader::ParseJsonData2(jsonStr5); 2227c804472Sopenharmony_ci ResolutionSwitchCommand command5(type, args5, *socket); 2237c804472Sopenharmony_ci command5.CheckAndRun(); 2247c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().width, 0); 2257c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().height, 0); 2267c804472Sopenharmony_ci } 2277c804472Sopenharmony_ci 2287c804472Sopenharmony_ci // 参数正常 2297c804472Sopenharmony_ci TEST_F(CommandLineTest, ResolutionSwitchCommandArgsCorrectTest) 2307c804472Sopenharmony_ci { 2317c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 2327c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 2337c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 2347c804472Sopenharmony_ci std::string jsonStr = R"({"originWidth" : 1080, "originHeight" : 2340, "width" : 1080, 2357c804472Sopenharmony_ci "height" : 2340, "screenDensity" : 480, "reason" : "resize"})"; 2367c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(jsonStr); 2377c804472Sopenharmony_ci ResolutionSwitchCommand command3(type, args2, *socket); 2387c804472Sopenharmony_ci command3.CheckAndRun(); 2397c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().width, 1080); 2407c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().height, 2340); 2417c804472Sopenharmony_ci } 2427c804472Sopenharmony_ci 2437c804472Sopenharmony_ci TEST_F(CommandLineTest, CurrentRouterCommandTest) 2447c804472Sopenharmony_ci { 2457c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 2467c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateObject(); 2477c804472Sopenharmony_ci CurrentRouterCommand command3(type, args1, *socket); 2487c804472Sopenharmony_ci g_getCurrentRouter = false; 2497c804472Sopenharmony_ci command3.CheckAndRun(); 2507c804472Sopenharmony_ci EXPECT_TRUE(g_getCurrentRouter); 2517c804472Sopenharmony_ci } 2527c804472Sopenharmony_ci 2537c804472Sopenharmony_ci TEST_F(CommandLineTest, ReloadRuntimePageCommandTest) 2547c804472Sopenharmony_ci { 2557c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 2567c804472Sopenharmony_ci std::string msg = "{\"ReloadRuntimePage\":\"aaa\"}"; 2577c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg); 2587c804472Sopenharmony_ci ReloadRuntimePageCommand command(type, args2, *socket); 2597c804472Sopenharmony_ci g_reloadRuntimePage = false; 2607c804472Sopenharmony_ci command.CheckAndRun(); 2617c804472Sopenharmony_ci EXPECT_TRUE(g_reloadRuntimePage); 2627c804472Sopenharmony_ci 2637c804472Sopenharmony_ci std::string msg2 = "{\"ReloadRuntimePage\" : 222}"; 2647c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg2); 2657c804472Sopenharmony_ci ReloadRuntimePageCommand command3(type, args3, *socket); 2667c804472Sopenharmony_ci g_reloadRuntimePage = false; 2677c804472Sopenharmony_ci command3.CheckAndRun(); 2687c804472Sopenharmony_ci EXPECT_FALSE(g_reloadRuntimePage); 2697c804472Sopenharmony_ci } 2707c804472Sopenharmony_ci 2717c804472Sopenharmony_ci TEST_F(CommandLineTest, ToUint8Test) 2727c804472Sopenharmony_ci { 2737c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 2747c804472Sopenharmony_ci // null 2757c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 2767c804472Sopenharmony_ci ResolutionSwitchCommand command1(type, args1, *socket); 2777c804472Sopenharmony_ci EXPECT_EQ(command1.ToUint8("256"), 0); 2787c804472Sopenharmony_ci } 2797c804472Sopenharmony_ci 2807c804472Sopenharmony_ci TEST_F(CommandLineTest, IsBoolTypeTest) 2817c804472Sopenharmony_ci { 2827c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 2837c804472Sopenharmony_ci // null 2847c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 2857c804472Sopenharmony_ci ResolutionSwitchCommand command1(type, args1, *socket); 2867c804472Sopenharmony_ci EXPECT_TRUE(command1.IsBoolType("true")); 2877c804472Sopenharmony_ci EXPECT_FALSE(command1.IsBoolType("XX")); 2887c804472Sopenharmony_ci } 2897c804472Sopenharmony_ci 2907c804472Sopenharmony_ci TEST_F(CommandLineTest, IsIntTypeTest) 2917c804472Sopenharmony_ci { 2927c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 2937c804472Sopenharmony_ci // null 2947c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 2957c804472Sopenharmony_ci ResolutionSwitchCommand command1(type, args1, *socket); 2967c804472Sopenharmony_ci EXPECT_TRUE(command1.IsIntType("123")); 2977c804472Sopenharmony_ci } 2987c804472Sopenharmony_ci 2997c804472Sopenharmony_ci TEST_F(CommandLineTest, IsOneDigitFloatTypeTest) 3007c804472Sopenharmony_ci { 3017c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 3027c804472Sopenharmony_ci // null 3037c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 3047c804472Sopenharmony_ci ResolutionSwitchCommand command1(type, args1, *socket); 3057c804472Sopenharmony_ci EXPECT_TRUE(command1.IsOneDigitFloatType("-6", true)); 3067c804472Sopenharmony_ci EXPECT_TRUE(command1.IsOneDigitFloatType("3", false)); 3077c804472Sopenharmony_ci } 3087c804472Sopenharmony_ci 3097c804472Sopenharmony_ci TEST_F(CommandLineTest, IsSetArgValidTest) 3107c804472Sopenharmony_ci { 3117c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 3127c804472Sopenharmony_ci // null 3137c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 3147c804472Sopenharmony_ci ColorModeCommand command1(type, args1, *socket); 3157c804472Sopenharmony_ci command1.RunSet(); 3167c804472Sopenharmony_ci EXPECT_FALSE(command1.IsSetArgValid()); 3177c804472Sopenharmony_ci } 3187c804472Sopenharmony_ci 3197c804472Sopenharmony_ci TEST_F(CommandLineTest, FontSelectCommandTest) 3207c804472Sopenharmony_ci { 3217c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 3227c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 3237c804472Sopenharmony_ci FontSelectCommand command1(type, args1, *socket); 3247c804472Sopenharmony_ci g_output = false; 3257c804472Sopenharmony_ci command1.CheckAndRun(); 3267c804472Sopenharmony_ci command1.RunSet(); 3277c804472Sopenharmony_ci EXPECT_FALSE(command1.IsSetArgValid()); 3287c804472Sopenharmony_ci EXPECT_TRUE(g_output); 3297c804472Sopenharmony_ci std::string msg = "{\"FontSelect\":true}"; 3307c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg); 3317c804472Sopenharmony_ci FontSelectCommand command3(type, args2, *socket); 3327c804472Sopenharmony_ci g_output = false; 3337c804472Sopenharmony_ci command3.CheckAndRun(); 3347c804472Sopenharmony_ci EXPECT_TRUE(g_output); 3357c804472Sopenharmony_ci } 3367c804472Sopenharmony_ci 3377c804472Sopenharmony_ci TEST_F(CommandLineTest, MemoryRefreshCommandTest) 3387c804472Sopenharmony_ci { 3397c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 3407c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 3417c804472Sopenharmony_ci MemoryRefreshCommand command1(type, args1, *socket); 3427c804472Sopenharmony_ci g_memoryRefresh = false; 3437c804472Sopenharmony_ci command1.CheckAndRun(); 3447c804472Sopenharmony_ci EXPECT_FALSE(g_memoryRefresh); 3457c804472Sopenharmony_ci std::string msg = "{\"jsCode\":\"UEFOREEAAAAAAAAAAAAAA+wDAADEAAAAFQ\"}"; 3467c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg); 3477c804472Sopenharmony_ci MemoryRefreshCommand command3(type, args2, *socket); 3487c804472Sopenharmony_ci g_memoryRefresh = false; 3497c804472Sopenharmony_ci command3.CheckAndRun(); 3507c804472Sopenharmony_ci EXPECT_TRUE(g_memoryRefresh); 3517c804472Sopenharmony_ci } 3527c804472Sopenharmony_ci 3537c804472Sopenharmony_ci TEST_F(CommandLineTest, LoadDocumentCommandArgsTest) 3547c804472Sopenharmony_ci { 3557c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 3567c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 3577c804472Sopenharmony_ci LoadDocumentCommand command(type, args2, *socket); 3587c804472Sopenharmony_ci g_loadDocument = false; 3597c804472Sopenharmony_ci command.CheckAndRun(); 3607c804472Sopenharmony_ci EXPECT_FALSE(g_loadDocument); 3617c804472Sopenharmony_ci } 3627c804472Sopenharmony_ci 3637c804472Sopenharmony_ci TEST_F(CommandLineTest, LoadDocumentCommandArgsTypeTest) 3647c804472Sopenharmony_ci { 3657c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 3667c804472Sopenharmony_ci std::string msg = R"({"url":"pages/Index","className":"Index","previewParam":{"width":1080, 3677c804472Sopenharmony_ci "height":"2340","locale":"zh_CN","colorMode":"light","orientation":"portrait", 3687c804472Sopenharmony_ci "deviceType":"phone","dpi":480}})"; 3697c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg); 3707c804472Sopenharmony_ci LoadDocumentCommand command(type, args2, *socket); 3717c804472Sopenharmony_ci g_loadDocument = false; 3727c804472Sopenharmony_ci command.CheckAndRun(); 3737c804472Sopenharmony_ci EXPECT_FALSE(g_loadDocument); 3747c804472Sopenharmony_ci } 3757c804472Sopenharmony_ci 3767c804472Sopenharmony_ci TEST_F(CommandLineTest, LoadDocumentCommandArgsNumRangeTest) 3777c804472Sopenharmony_ci { 3787c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 3797c804472Sopenharmony_ci std::string msg = R"({"url" : "pages/Index", "className" : "Index", "previewParam" : {"width" : 1080, 3807c804472Sopenharmony_ci "height" : 2340, "locale" : "zh_CN" , "colorMode" : "light", "orientation" : "portrait", 3817c804472Sopenharmony_ci "deviceType" : "phone", "dpi" : 720}})"; 3827c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg); 3837c804472Sopenharmony_ci LoadDocumentCommand command(type, args2, *socket); 3847c804472Sopenharmony_ci g_loadDocument = false; 3857c804472Sopenharmony_ci command.CheckAndRun(); 3867c804472Sopenharmony_ci EXPECT_FALSE(g_loadDocument); 3877c804472Sopenharmony_ci } 3887c804472Sopenharmony_ci 3897c804472Sopenharmony_ci TEST_F(CommandLineTest, LoadDocumentCommandArgsStrRangeTest) 3907c804472Sopenharmony_ci { 3917c804472Sopenharmony_ci CommandParser::GetInstance().deviceType = "phone"; 3927c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 3937c804472Sopenharmony_ci std::string msg = R"({"url" : "pages/Index", "className" : "Index", "previewParam" : {"width" : 1080, 3947c804472Sopenharmony_ci "height" : 2340, "locale" : "aa_PP", "colorMode" : "light", "orientation" : "portrait", 3957c804472Sopenharmony_ci "deviceType" : "phone", "dpi" : 480}})"; 3967c804472Sopenharmony_ci Json2::Value args = JsonReader::ParseJsonData2(msg); 3977c804472Sopenharmony_ci // locale error 3987c804472Sopenharmony_ci LoadDocumentCommand command(type, args, *socket); 3997c804472Sopenharmony_ci g_loadDocument = false; 4007c804472Sopenharmony_ci command.CheckAndRun(); 4017c804472Sopenharmony_ci EXPECT_FALSE(g_loadDocument); 4027c804472Sopenharmony_ci // colorMode error 4037c804472Sopenharmony_ci std::string msg1 = R"({"url" : "pages/Index", "className" : "Index", "previewParam" : {"width" : 1080, 4047c804472Sopenharmony_ci "height" : 2340, "locale" : "zh_CN", "colorMode" : "aaa", "orientation" : "portrait", 4057c804472Sopenharmony_ci "deviceType" : "phone", "dpi" : 480}})"; 4067c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 4077c804472Sopenharmony_ci LoadDocumentCommand command1(type, args1, *socket); 4087c804472Sopenharmony_ci g_loadDocument = false; 4097c804472Sopenharmony_ci command1.CheckAndRun(); 4107c804472Sopenharmony_ci EXPECT_FALSE(g_loadDocument); 4117c804472Sopenharmony_ci // colorMode error 4127c804472Sopenharmony_ci std::string msg2 = R"({"url" : "pages/Index", "className" : "Index", "previewParam" : {"width" : 1080, 4137c804472Sopenharmony_ci "height" : 2340, "locale" : "zh_CN", "colorMode" : "dark", "orientation" : "aaa", 4147c804472Sopenharmony_ci "deviceType" : "phone", "dpi" : 480}})"; 4157c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 4167c804472Sopenharmony_ci LoadDocumentCommand command2(type, args2, *socket); 4177c804472Sopenharmony_ci g_loadDocument = false; 4187c804472Sopenharmony_ci command2.CheckAndRun(); 4197c804472Sopenharmony_ci EXPECT_FALSE(g_loadDocument); 4207c804472Sopenharmony_ci // deviceType error 4217c804472Sopenharmony_ci std::string msg3 = R"({"url" : "pages/Index", "className" : "Index", "previewParam" : {"width" : 1080, 4227c804472Sopenharmony_ci "height" : 2340, "locale" : "zh_CN", "colorMode" : "dark", "orientation" : "landscape", 4237c804472Sopenharmony_ci "deviceType" : "liteWearable", "dpi" : 480}})"; 4247c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg3); 4257c804472Sopenharmony_ci LoadDocumentCommand command3(type, args3, *socket); 4267c804472Sopenharmony_ci g_loadDocument = false; 4277c804472Sopenharmony_ci command3.CheckAndRun(); 4287c804472Sopenharmony_ci EXPECT_FALSE(g_loadDocument); 4297c804472Sopenharmony_ci } 4307c804472Sopenharmony_ci 4317c804472Sopenharmony_ci TEST_F(CommandLineTest, LoadDocumentCommandArgsCorrectTest) 4327c804472Sopenharmony_ci { 4337c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 4347c804472Sopenharmony_ci CommandParser::GetInstance().deviceType = "phone"; 4357c804472Sopenharmony_ci std::string msg = R"({"url":"pages/Index","className":"Index","previewParam":{"width":1080, 4367c804472Sopenharmony_ci "height":2340,"locale":"zh_CN","colorMode":"light","orientation":"portrait", 4377c804472Sopenharmony_ci "deviceType":"phone","dpi":480}})"; 4387c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg); 4397c804472Sopenharmony_ci LoadDocumentCommand command1(type, args1, *socket); 4407c804472Sopenharmony_ci g_loadDocument = false; 4417c804472Sopenharmony_ci command1.CheckAndRun(); 4427c804472Sopenharmony_ci EXPECT_TRUE(g_loadDocument); 4437c804472Sopenharmony_ci 4447c804472Sopenharmony_ci CommandParser::GetInstance().deviceType = "liteWearable"; 4457c804472Sopenharmony_ci msg = R"({"url":"pages/Index","className":"Index","previewParam":{"width":1080, 4467c804472Sopenharmony_ci "height":2340,"locale":"zh_CN","colorMode":"light","orientation":"portrait", 4477c804472Sopenharmony_ci "deviceType":"liteWearable","dpi":480}})"; 4487c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg); 4497c804472Sopenharmony_ci LoadDocumentCommand command2(type, args2, *socket); 4507c804472Sopenharmony_ci g_loadDocument = false; 4517c804472Sopenharmony_ci command2.CheckAndRun(); 4527c804472Sopenharmony_ci EXPECT_FALSE(g_loadDocument); 4537c804472Sopenharmony_ci } 4547c804472Sopenharmony_ci 4557c804472Sopenharmony_ci TEST_F(CommandLineTest, FastPreviewMsgCommandTest) 4567c804472Sopenharmony_ci { 4577c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 4587c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 4597c804472Sopenharmony_ci FastPreviewMsgCommand command2(type, args2, *socket); 4607c804472Sopenharmony_ci g_getFastPreviewMsg = false; 4617c804472Sopenharmony_ci command2.CheckAndRun(); 4627c804472Sopenharmony_ci EXPECT_TRUE(g_getFastPreviewMsg); 4637c804472Sopenharmony_ci } 4647c804472Sopenharmony_ci 4657c804472Sopenharmony_ci TEST_F(CommandLineTest, LoadContentCommandTest) 4667c804472Sopenharmony_ci { 4677c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 4687c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 4697c804472Sopenharmony_ci LoadContentCommand command2(type, args2, *socket); 4707c804472Sopenharmony_ci g_getAbilityCurrentRouter = false; 4717c804472Sopenharmony_ci command2.CheckAndRun(); 4727c804472Sopenharmony_ci EXPECT_TRUE(g_getAbilityCurrentRouter); 4737c804472Sopenharmony_ci } 4747c804472Sopenharmony_ci 4757c804472Sopenharmony_ci TEST_F(CommandLineTest, DropFrameCommandTest) 4767c804472Sopenharmony_ci { 4777c804472Sopenharmony_ci VirtualScreenImpl::GetInstance().dropFrameFrequency = 0; 4787c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 4797c804472Sopenharmony_ci std::string msg = R"({"frequency" : 1000})"; 4807c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg); 4817c804472Sopenharmony_ci DropFrameCommand command1(type, args1, *socket); 4827c804472Sopenharmony_ci command1.CheckAndRun(); 4837c804472Sopenharmony_ci EXPECT_EQ(VirtualScreenImpl::GetInstance().dropFrameFrequency, 1000); // set value is 1000 4847c804472Sopenharmony_ci 4857c804472Sopenharmony_ci VirtualScreenImpl::GetInstance().dropFrameFrequency = 0; 4867c804472Sopenharmony_ci std::string msg2 = R"({"frequency" : "aaaa"})"; 4877c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 4887c804472Sopenharmony_ci DropFrameCommand command2(type, args2, *socket); 4897c804472Sopenharmony_ci command2.CheckAndRun(); 4907c804472Sopenharmony_ci EXPECT_EQ(VirtualScreenImpl::GetInstance().dropFrameFrequency, 0); 4917c804472Sopenharmony_ci 4927c804472Sopenharmony_ci VirtualScreenImpl::GetInstance().dropFrameFrequency = 0; 4937c804472Sopenharmony_ci std::string msg3 = R"({"frequency" : -100})"; 4947c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg3); 4957c804472Sopenharmony_ci DropFrameCommand command3(type, args3, *socket); 4967c804472Sopenharmony_ci command3.CheckAndRun(); 4977c804472Sopenharmony_ci EXPECT_EQ(VirtualScreenImpl::GetInstance().dropFrameFrequency, 0); 4987c804472Sopenharmony_ci } 4997c804472Sopenharmony_ci 5007c804472Sopenharmony_ci TEST_F(CommandLineTest, KeyPressCommandImeTest) 5017c804472Sopenharmony_ci { 5027c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 5037c804472Sopenharmony_ci int codePoint = 2033; 5047c804472Sopenharmony_ci std::string msg = R"({"isInputMethod":"aaa","codePoint":2033})"; 5057c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg); 5067c804472Sopenharmony_ci KeyPressCommand command1(type, args1, *socket); 5077c804472Sopenharmony_ci g_dispatchOsInputMethodEvent = false; 5087c804472Sopenharmony_ci command1.CheckAndRun(); 5097c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsInputMethodEvent); 5107c804472Sopenharmony_ci 5117c804472Sopenharmony_ci args1.Replace("isInputMethod", true); 5127c804472Sopenharmony_ci args1.Replace("codePoint", "aaaa"); 5137c804472Sopenharmony_ci KeyPressCommand command2(type, args1, *socket); 5147c804472Sopenharmony_ci g_dispatchOsInputMethodEvent = false; 5157c804472Sopenharmony_ci command2.CheckAndRun(); 5167c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsInputMethodEvent); 5177c804472Sopenharmony_ci 5187c804472Sopenharmony_ci args1.Replace("codePoint", codePoint); 5197c804472Sopenharmony_ci KeyPressCommand command3(type, args1, *socket); 5207c804472Sopenharmony_ci g_dispatchOsInputMethodEvent = false; 5217c804472Sopenharmony_ci KeyInputImpl::GetInstance().codePoint = 0; 5227c804472Sopenharmony_ci command3.CheckAndRun(); 5237c804472Sopenharmony_ci EXPECT_TRUE(g_dispatchOsInputMethodEvent); 5247c804472Sopenharmony_ci EXPECT_EQ(KeyInputImpl::GetInstance().codePoint, codePoint); 5257c804472Sopenharmony_ci } 5267c804472Sopenharmony_ci 5277c804472Sopenharmony_ci TEST_F(CommandLineTest, KeyPressCommandNoneImeArgsTest) 5287c804472Sopenharmony_ci { 5297c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 5307c804472Sopenharmony_ci std::string msg = R"({"isInputMethod":false,"keyCode":2033,"keyAction":0,"keyString":123, 5317c804472Sopenharmony_ci "pressedCodes":[2033]})"; 5327c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg); 5337c804472Sopenharmony_ci KeyPressCommand command1(type, args1, *socket); 5347c804472Sopenharmony_ci g_dispatchOsKeyEvent = false; 5357c804472Sopenharmony_ci command1.CheckAndRun(); 5367c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsKeyEvent); 5377c804472Sopenharmony_ci } 5387c804472Sopenharmony_ci 5397c804472Sopenharmony_ci TEST_F(CommandLineTest, KeyPressCommandNoneImeArgsTypeTest) 5407c804472Sopenharmony_ci { 5417c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 5427c804472Sopenharmony_ci std::string msg = R"({"isInputMethod":false,"keyCode":2033,"keyAction":0,"pressedCodes":["aaa"]})"; 5437c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg); 5447c804472Sopenharmony_ci KeyPressCommand command1(type, args1, *socket); 5457c804472Sopenharmony_ci g_dispatchOsKeyEvent = false; 5467c804472Sopenharmony_ci command1.CheckAndRun(); 5477c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsKeyEvent); 5487c804472Sopenharmony_ci } 5497c804472Sopenharmony_ci 5507c804472Sopenharmony_ci TEST_F(CommandLineTest, KeyPressCommandNoneImeArgsRangeTest) 5517c804472Sopenharmony_ci { 5527c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 5537c804472Sopenharmony_ci // keyAction error 5547c804472Sopenharmony_ci std::string msg = R"({"isInputMethod" : false, "keyCode" : 2033, "keyAction" : 3, "keyString" : "123", 5557c804472Sopenharmony_ci "pressedCodes" : [2033]})"; 5567c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg); 5577c804472Sopenharmony_ci KeyPressCommand command1(type, args1, *socket); 5587c804472Sopenharmony_ci g_dispatchOsKeyEvent = false; 5597c804472Sopenharmony_ci command1.CheckAndRun(); 5607c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsKeyEvent); 5617c804472Sopenharmony_ci // keyCode error 5627c804472Sopenharmony_ci args1.Replace("keyAction", 0); 5637c804472Sopenharmony_ci args1.Replace("keyCode", 1900); 5647c804472Sopenharmony_ci KeyPressCommand command2(type, args1, *socket); 5657c804472Sopenharmony_ci g_dispatchOsKeyEvent = false; 5667c804472Sopenharmony_ci command2.CheckAndRun(); 5677c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsKeyEvent); 5687c804472Sopenharmony_ci // pressedCodes error 5697c804472Sopenharmony_ci msg = R"({"isInputMethod" : false, "keyCode" : 2033, "keyAction" : 1, "keyString" : "123", 5707c804472Sopenharmony_ci "pressedCodes" : [1900]})"; 5717c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg); 5727c804472Sopenharmony_ci KeyPressCommand command3(type, args2, *socket); 5737c804472Sopenharmony_ci g_dispatchOsKeyEvent = false; 5747c804472Sopenharmony_ci command3.CheckAndRun(); 5757c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsKeyEvent); 5767c804472Sopenharmony_ci } 5777c804472Sopenharmony_ci 5787c804472Sopenharmony_ci TEST_F(CommandLineTest, KeyPressCommandNoneImeArgsCorrectTest) 5797c804472Sopenharmony_ci { 5807c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 5817c804472Sopenharmony_ci std::string msg1 = R"({"isInputMethod":false,"keyCode":2033,"keyAction":0, 5827c804472Sopenharmony_ci "keyString":"ctrl","pressedCodes":[2033]})"; 5837c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 5847c804472Sopenharmony_ci KeyPressCommand command1(type, args1, *socket); 5857c804472Sopenharmony_ci g_dispatchOsKeyEvent = false; 5867c804472Sopenharmony_ci command1.CheckAndRun(); 5877c804472Sopenharmony_ci EXPECT_TRUE(g_dispatchOsKeyEvent); 5887c804472Sopenharmony_ci EXPECT_EQ(KeyInputImpl::GetInstance().keyCode, 2033); 5897c804472Sopenharmony_ci EXPECT_EQ(KeyInputImpl::GetInstance().keyAction, 0); 5907c804472Sopenharmony_ci EXPECT_EQ(KeyInputImpl::GetInstance().keyString, "ctrl"); 5917c804472Sopenharmony_ci EXPECT_EQ(KeyInputImpl::GetInstance().pressedCodes[0], OHOS::MMI::KeyCode(2033)); 5927c804472Sopenharmony_ci 5937c804472Sopenharmony_ci std::string msg2 = R"({"isInputMethod":false,"keyCode":2033,"keyAction":0,"pressedCodes":[2033]})"; 5947c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 5957c804472Sopenharmony_ci KeyPressCommand command2(type, args2, *socket); 5967c804472Sopenharmony_ci g_dispatchOsKeyEvent = false; 5977c804472Sopenharmony_ci command2.CheckAndRun(); 5987c804472Sopenharmony_ci EXPECT_TRUE(g_dispatchOsKeyEvent); 5997c804472Sopenharmony_ci EXPECT_EQ(KeyInputImpl::GetInstance().keyString, ""); 6007c804472Sopenharmony_ci 6017c804472Sopenharmony_ci KeyPressCommand command3(type, args1, *socket); 6027c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::STATIC; 6037c804472Sopenharmony_ci g_dispatchOsKeyEvent = false; 6047c804472Sopenharmony_ci command3.CheckAndRun(); 6057c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::DYNAMIC; 6067c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsKeyEvent); 6077c804472Sopenharmony_ci } 6087c804472Sopenharmony_ci 6097c804472Sopenharmony_ci TEST_F(CommandLineTest, PointEventCommandArgTest) 6107c804472Sopenharmony_ci { 6117c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 6127c804472Sopenharmony_ci // y error 6137c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":"aaa","duration":"","button":1,"action": 2,"axisValues":[0,0,0,0], 6147c804472Sopenharmony_ci "sourceType":1,"sourceTool": 7,"pressedButtons":[0,1]})"; 6157c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 6167c804472Sopenharmony_ci PointEventCommand command1(type, args1, *socket); 6177c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 6187c804472Sopenharmony_ci command1.CheckAndRun(); 6197c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 6207c804472Sopenharmony_ci // action error 6217c804472Sopenharmony_ci args1.Replace("y", 1071); 6227c804472Sopenharmony_ci args1.Replace("action", "2"); 6237c804472Sopenharmony_ci PointEventCommand command2(type, args1, *socket); 6247c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 6257c804472Sopenharmony_ci command2.CheckAndRun(); 6267c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 6277c804472Sopenharmony_ci // sourceTool error 6287c804472Sopenharmony_ci args1.Replace("action", 2); 6297c804472Sopenharmony_ci args1.Replace("sourceTool", "7"); 6307c804472Sopenharmony_ci PointEventCommand command3(type, args1, *socket); 6317c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 6327c804472Sopenharmony_ci command3.CheckAndRun(); 6337c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 6347c804472Sopenharmony_ci // axisValues error 6357c804472Sopenharmony_ci args1.Replace("sourceTool", 7); 6367c804472Sopenharmony_ci args1.Replace("axisValues", "aaa"); 6377c804472Sopenharmony_ci PointEventCommand command4(type, args1, *socket); 6387c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 6397c804472Sopenharmony_ci command4.CheckAndRun(); 6407c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 6417c804472Sopenharmony_ci } 6427c804472Sopenharmony_ci 6437c804472Sopenharmony_ci TEST_F(CommandLineTest, PointEventCommandArgRangeTest) 6447c804472Sopenharmony_ci { 6457c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 6467c804472Sopenharmony_ci // x error 6477c804472Sopenharmony_ci std::string msg1 = R"({"x":2000,"y":1071,"duration":"","button":1,"action": 2,"axisValues":[0,0,0,0], 6487c804472Sopenharmony_ci "sourceType":1,"sourceTool": 7,"pressedButtons":[0,1]})"; 6497c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 6507c804472Sopenharmony_ci PointEventCommand command1(type, args1, *socket); 6517c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 6527c804472Sopenharmony_ci command1.CheckAndRun(); 6537c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 6547c804472Sopenharmony_ci // y error 6557c804472Sopenharmony_ci args1.Replace("x", 365); 6567c804472Sopenharmony_ci args1.Replace("y", 5000); 6577c804472Sopenharmony_ci PointEventCommand command2(type, args1, *socket); 6587c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 6597c804472Sopenharmony_ci command2.CheckAndRun(); 6607c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 6617c804472Sopenharmony_ci // sourceTool error 6627c804472Sopenharmony_ci args1.Replace("y", 1071); 6637c804472Sopenharmony_ci args1.Replace("sourceTool", -1); 6647c804472Sopenharmony_ci PointEventCommand command3(type, args1, *socket); 6657c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 6667c804472Sopenharmony_ci command3.CheckAndRun(); 6677c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 6687c804472Sopenharmony_ci // axisValues error 6697c804472Sopenharmony_ci msg1 = R"({"x" : 300, "y" : 1071, "duration" : "", "button" : 1, "action" : 2, 6707c804472Sopenharmony_ci "axisValues" : ["0", 0, 0, 0], "sourceType" : 1, "sourceTool" : 7, "pressedButtons" : [0, 1]})"; 6717c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg1); 6727c804472Sopenharmony_ci PointEventCommand command4(type, args2, *socket); 6737c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 6747c804472Sopenharmony_ci command4.CheckAndRun(); 6757c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 6767c804472Sopenharmony_ci // pressedButtons errors 6777c804472Sopenharmony_ci msg1 = R"({"x" : 300, "y" : 1071, "duration" : "", "button" : 1, "action" : 2, 6787c804472Sopenharmony_ci "axisValues" : [0, 0, 0, 0], "sourceType" : 1, "sourceTool" : 7, "pressedButtons" : [-2, 0, 1]})"; 6797c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg1); 6807c804472Sopenharmony_ci PointEventCommand command5(type, args3, *socket); 6817c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 6827c804472Sopenharmony_ci command5.CheckAndRun(); 6837c804472Sopenharmony_ci EXPECT_TRUE(g_dispatchOsTouchEvent); 6847c804472Sopenharmony_ci } 6857c804472Sopenharmony_ci 6867c804472Sopenharmony_ci TEST_F(CommandLineTest, PointEventCommandArgCorrectTest) 6877c804472Sopenharmony_ci { 6887c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 6897c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":1071,"duration":"","button":1,"action": 2,"axisValues":[0,0,0,0], 6907c804472Sopenharmony_ci "sourceType":1,"sourceTool": 7,"pressedButtons":[0,1]})"; 6917c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 6927c804472Sopenharmony_ci PointEventCommand command1(type, args1, *socket); 6937c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 6947c804472Sopenharmony_ci command1.CheckAndRun(); 6957c804472Sopenharmony_ci EXPECT_TRUE(g_dispatchOsTouchEvent); 6967c804472Sopenharmony_ci EXPECT_EQ(MouseInputImpl::GetInstance().mouseXPosition, 365); // 365 is test x 6977c804472Sopenharmony_ci EXPECT_EQ(MouseInputImpl::GetInstance().mouseYPosition, 1071); // 1071 is test y 6987c804472Sopenharmony_ci 6997c804472Sopenharmony_ci PointEventCommand command2(type, args1, *socket); 7007c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::STATIC; 7017c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 7027c804472Sopenharmony_ci command2.CheckAndRun(); 7037c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::DYNAMIC; 7047c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 7057c804472Sopenharmony_ci } 7067c804472Sopenharmony_ci 7077c804472Sopenharmony_ci TEST_F(CommandLineTest, FoldStatusCommandArgsTest) 7087c804472Sopenharmony_ci { 7097c804472Sopenharmony_ci VirtualScreenImpl::GetInstance().SetFoldStatus("unfold"); 7107c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 7117c804472Sopenharmony_ci // FoldStatus error 7127c804472Sopenharmony_ci std::string msg1 = R"({"FoldStatus":100,"width":1080,"height":2504})"; 7137c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 7147c804472Sopenharmony_ci FoldStatusCommand command1(type, args1, *socket); 7157c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 7167c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 7177c804472Sopenharmony_ci command1.CheckAndRun(); 7187c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().width, 1080); // 1080 is test width 7197c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().height, 2504); // 2504 is test height 7207c804472Sopenharmony_ci // height error 7217c804472Sopenharmony_ci args1.Replace("FoldStatus", "fold"); 7227c804472Sopenharmony_ci args1.Replace("height", "aaa"); 7237c804472Sopenharmony_ci FoldStatusCommand command2(type, args1, *socket); 7247c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 7257c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 7267c804472Sopenharmony_ci command2.CheckAndRun(); 7277c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().width, 1080); // 1080 is test width 7287c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().height, 2504); // 2504 is test height 7297c804472Sopenharmony_ci } 7307c804472Sopenharmony_ci 7317c804472Sopenharmony_ci TEST_F(CommandLineTest, FoldStatusCommandArgsRangeTest) 7327c804472Sopenharmony_ci { 7337c804472Sopenharmony_ci VirtualScreenImpl::GetInstance().SetFoldStatus("unfold"); 7347c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 7357c804472Sopenharmony_ci // FoldStatus error 7367c804472Sopenharmony_ci std::string msg1 = R"({"FoldStatus":"fold","width":1080,"height":4000})"; 7377c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 7387c804472Sopenharmony_ci FoldStatusCommand command1(type, args1, *socket); 7397c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 7407c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 7417c804472Sopenharmony_ci command1.CheckAndRun(); 7427c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().width, 1080); // 1080 is test width 7437c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().height, 4000); // 4000 is test height 7447c804472Sopenharmony_ci // height error 7457c804472Sopenharmony_ci args1.Replace("height", 2504); // 2504 is test height 7467c804472Sopenharmony_ci args1.Replace("FoldStatus", "aaaa"); 7477c804472Sopenharmony_ci FoldStatusCommand command2(type, args1, *socket); 7487c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 7497c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 7507c804472Sopenharmony_ci command2.CheckAndRun(); 7517c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().width, 1080); // 1080 is test width 7527c804472Sopenharmony_ci EXPECT_NE(JsAppImpl::GetInstance().height, 2504); // 2504 is test height 7537c804472Sopenharmony_ci } 7547c804472Sopenharmony_ci 7557c804472Sopenharmony_ci TEST_F(CommandLineTest, FoldStatusCommandArgsCorrectTest) 7567c804472Sopenharmony_ci { 7577c804472Sopenharmony_ci VirtualScreenImpl::GetInstance().SetFoldStatus("unfold"); 7587c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 7597c804472Sopenharmony_ci std::string msg1 = R"({"FoldStatus":"fold","width":1080,"height":2504})"; 7607c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 7617c804472Sopenharmony_ci FoldStatusCommand command1(type, args1, *socket); 7627c804472Sopenharmony_ci JsAppImpl::GetInstance().width = 0; 7637c804472Sopenharmony_ci JsAppImpl::GetInstance().height = 0; 7647c804472Sopenharmony_ci command1.CheckAndRun(); 7657c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().width, 1080); // 1080 is test width 7667c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().height, 2504); // 2504 is test height 7677c804472Sopenharmony_ci } 7687c804472Sopenharmony_ci 7697c804472Sopenharmony_ci TEST_F(CommandLineTest, PowerCommandArgsTest) 7707c804472Sopenharmony_ci { 7717c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 7727c804472Sopenharmony_ci std::string msg1 = R"({"Power":"abc"})"; 7737c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 7747c804472Sopenharmony_ci PowerCommand command1(type, args1, *socket); 7757c804472Sopenharmony_ci command1.CheckAndRun(); 7767c804472Sopenharmony_ci double power = SharedData<double>::GetData(SharedDataType::BATTERY_LEVEL); 7777c804472Sopenharmony_ci EXPECT_EQ(power, 1.0); // 1.0 is default Power value 7787c804472Sopenharmony_ci 7797c804472Sopenharmony_ci args1.Replace("Power", 2.0); // 2.0 is test Power value 7807c804472Sopenharmony_ci PowerCommand command2(type, args1, *socket); 7817c804472Sopenharmony_ci command2.CheckAndRun(); 7827c804472Sopenharmony_ci power = SharedData<double>::GetData(SharedDataType::BATTERY_LEVEL); 7837c804472Sopenharmony_ci EXPECT_NE(power, 2.0); // 2.0 is test Power value 7847c804472Sopenharmony_ci 7857c804472Sopenharmony_ci args1.Replace("Power", -1); 7867c804472Sopenharmony_ci PowerCommand command3(type, args1, *socket); 7877c804472Sopenharmony_ci command3.CheckAndRun(); 7887c804472Sopenharmony_ci power = SharedData<double>::GetData(SharedDataType::BATTERY_LEVEL); 7897c804472Sopenharmony_ci EXPECT_NE(power, -1); // -1 is test Power value 7907c804472Sopenharmony_ci } 7917c804472Sopenharmony_ci 7927c804472Sopenharmony_ci TEST_F(CommandLineTest, PowerCommandSetTest) 7937c804472Sopenharmony_ci { 7947c804472Sopenharmony_ci std::string msg1 = R"({"Power":0.5})"; 7957c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 7967c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 7977c804472Sopenharmony_ci PowerCommand command1(type, args1, *socket); 7987c804472Sopenharmony_ci command1.CheckAndRun(); 7997c804472Sopenharmony_ci double power = SharedData<double>::GetData(SharedDataType::BATTERY_LEVEL); 8007c804472Sopenharmony_ci EXPECT_EQ(power, 0.5); // 0.5 is test Barometer value 8017c804472Sopenharmony_ci } 8027c804472Sopenharmony_ci 8037c804472Sopenharmony_ci TEST_F(CommandLineTest, PowerCommandGetTest) 8047c804472Sopenharmony_ci { 8057c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 8067c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 8077c804472Sopenharmony_ci PowerCommand command2(type, args2, *socket); 8087c804472Sopenharmony_ci g_output = false; 8097c804472Sopenharmony_ci command2.CheckAndRun(); 8107c804472Sopenharmony_ci EXPECT_TRUE(g_output); 8117c804472Sopenharmony_ci } 8127c804472Sopenharmony_ci 8137c804472Sopenharmony_ci TEST_F(CommandLineTest, VolumeCommandTest) 8147c804472Sopenharmony_ci { 8157c804472Sopenharmony_ci std::string msg1 = R"({"Volume":90})"; 8167c804472Sopenharmony_ci CommandLine::CommandType type1 = CommandLine::CommandType::SET; 8177c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 8187c804472Sopenharmony_ci VolumeCommand command1(type1, args1, *socket); 8197c804472Sopenharmony_ci g_output = false; 8207c804472Sopenharmony_ci command1.CheckAndRun(); 8217c804472Sopenharmony_ci EXPECT_TRUE(g_output); 8227c804472Sopenharmony_ci 8237c804472Sopenharmony_ci CommandLine::CommandType type2 = CommandLine::CommandType::GET; 8247c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 8257c804472Sopenharmony_ci VolumeCommand command2(type2, args2, *socket); 8267c804472Sopenharmony_ci g_output = false; 8277c804472Sopenharmony_ci command2.CheckAndRun(); 8287c804472Sopenharmony_ci command2.RunGet(); 8297c804472Sopenharmony_ci EXPECT_TRUE(g_output); 8307c804472Sopenharmony_ci } 8317c804472Sopenharmony_ci 8327c804472Sopenharmony_ci TEST_F(CommandLineTest, BarometerCommandArgsTest) 8337c804472Sopenharmony_ci { 8347c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 8357c804472Sopenharmony_ci std::string msg1 = R"({"Barometer":"abc"})"; 8367c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 8377c804472Sopenharmony_ci BarometerCommand command1(type, args1, *socket); 8387c804472Sopenharmony_ci command1.CheckAndRun(); 8397c804472Sopenharmony_ci int barometer = static_cast<int>(SharedData<uint32_t>::GetData(SharedDataType::PRESSURE_VALUE)); 8407c804472Sopenharmony_ci EXPECT_EQ(barometer, 101325); // 101325 is default Power value 8417c804472Sopenharmony_ci 8427c804472Sopenharmony_ci args1.Replace("Barometer", 999901); // 999901 is test Power value 8437c804472Sopenharmony_ci BarometerCommand command2(type, args1, *socket); 8447c804472Sopenharmony_ci command2.CheckAndRun(); 8457c804472Sopenharmony_ci barometer = static_cast<int>(SharedData<uint32_t>::GetData(SharedDataType::PRESSURE_VALUE)); 8467c804472Sopenharmony_ci EXPECT_NE(barometer, 999901); // 999901 is test Power value 8477c804472Sopenharmony_ci 8487c804472Sopenharmony_ci args1.Replace("Barometer", -1); 8497c804472Sopenharmony_ci BarometerCommand command3(type, args1, *socket); 8507c804472Sopenharmony_ci command3.CheckAndRun(); 8517c804472Sopenharmony_ci barometer = static_cast<int>(SharedData<uint32_t>::GetData(SharedDataType::PRESSURE_VALUE)); 8527c804472Sopenharmony_ci EXPECT_NE(barometer, -1); // -1 is test Power value 8537c804472Sopenharmony_ci } 8547c804472Sopenharmony_ci 8557c804472Sopenharmony_ci TEST_F(CommandLineTest, BarometerCommandSetTest) 8567c804472Sopenharmony_ci { 8577c804472Sopenharmony_ci std::string msg1 = R"({"Barometer":999})"; 8587c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 8597c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 8607c804472Sopenharmony_ci BarometerCommand command1(type, args1, *socket); 8617c804472Sopenharmony_ci command1.CheckAndRun(); 8627c804472Sopenharmony_ci int barometer = static_cast<int>(SharedData<uint32_t>::GetData(SharedDataType::PRESSURE_VALUE)); 8637c804472Sopenharmony_ci EXPECT_EQ(barometer, 999); // 999 is test Barometer value 8647c804472Sopenharmony_ci } 8657c804472Sopenharmony_ci 8667c804472Sopenharmony_ci TEST_F(CommandLineTest, BarometerCommandGetTest) 8677c804472Sopenharmony_ci { 8687c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 8697c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 8707c804472Sopenharmony_ci BarometerCommand command2(type, args2, *socket); 8717c804472Sopenharmony_ci g_output = false; 8727c804472Sopenharmony_ci command2.CheckAndRun(); 8737c804472Sopenharmony_ci EXPECT_TRUE(g_output); 8747c804472Sopenharmony_ci } 8757c804472Sopenharmony_ci 8767c804472Sopenharmony_ci TEST_F(CommandLineTest, LocationCommandArgsTest) 8777c804472Sopenharmony_ci { 8787c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 8797c804472Sopenharmony_ci std::string msg0 = R"({"latitude":"10.0"})"; 8807c804472Sopenharmony_ci Json2::Value args0 = JsonReader::ParseJsonData2(msg0); 8817c804472Sopenharmony_ci LocationCommand command0(type, args0, *socket); 8827c804472Sopenharmony_ci command0.CheckAndRun(); 8837c804472Sopenharmony_ci double latitude = SharedData<double>::GetData(SharedDataType::LATITUDE); 8847c804472Sopenharmony_ci EXPECT_EQ(latitude, 0); 8857c804472Sopenharmony_ci std::string msg1 = R"({"latitude":"10.0","longitude":"abc"})"; 8867c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 8877c804472Sopenharmony_ci LocationCommand command1(type, args1, *socket); 8887c804472Sopenharmony_ci command1.CheckAndRun(); 8897c804472Sopenharmony_ci latitude = SharedData<double>::GetData(SharedDataType::LATITUDE); 8907c804472Sopenharmony_ci EXPECT_EQ(latitude, 0); 8917c804472Sopenharmony_ci args1.Replace("longitude", "10.0"); // 10.0 is test longitude value 8927c804472Sopenharmony_ci args1.Replace("latitude", "-91.0"); // -91 is test latitude value 8937c804472Sopenharmony_ci LocationCommand command2(type, args1, *socket); 8947c804472Sopenharmony_ci command2.CheckAndRun(); 8957c804472Sopenharmony_ci latitude = SharedData<double>::GetData(SharedDataType::LATITUDE); 8967c804472Sopenharmony_ci EXPECT_NE(latitude, -91.0); // -91 is test longitude value 8977c804472Sopenharmony_ci args1.Replace("latitude", "91.0"); // 91 is test latitude value 8987c804472Sopenharmony_ci LocationCommand command3(type, args1, *socket); 8997c804472Sopenharmony_ci command3.CheckAndRun(); 9007c804472Sopenharmony_ci latitude = SharedData<double>::GetData(SharedDataType::LATITUDE); 9017c804472Sopenharmony_ci EXPECT_NE(latitude, 91); // 91 is test longitude value 9027c804472Sopenharmony_ci args1.Replace("latitude", "10.0"); // 10.0 is test latitude value 9037c804472Sopenharmony_ci args1.Replace("longitude", "-181.0"); // -181 is test longitude value 9047c804472Sopenharmony_ci LocationCommand command4(type, args1, *socket); 9057c804472Sopenharmony_ci command4.CheckAndRun(); 9067c804472Sopenharmony_ci double longitude = SharedData<double>::GetData(SharedDataType::LONGITUDE); 9077c804472Sopenharmony_ci EXPECT_NE(longitude, -181); // -181 is test longitude value 9087c804472Sopenharmony_ci args1.Replace("longitude", "181.0"); // 181 is test longitude value 9097c804472Sopenharmony_ci LocationCommand command5(type, args1, *socket); 9107c804472Sopenharmony_ci command5.CheckAndRun(); 9117c804472Sopenharmony_ci longitude = SharedData<double>::GetData(SharedDataType::LONGITUDE); 9127c804472Sopenharmony_ci EXPECT_NE(longitude, 181); // 181 is test longitude value 9137c804472Sopenharmony_ci } 9147c804472Sopenharmony_ci 9157c804472Sopenharmony_ci TEST_F(CommandLineTest, LocationCommandSetTest) 9167c804472Sopenharmony_ci { 9177c804472Sopenharmony_ci std::string msg1 = R"({"latitude":"10.9023142","longitude":"56.3043242"})"; 9187c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 9197c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 9207c804472Sopenharmony_ci LocationCommand command1(type, args1, *socket); 9217c804472Sopenharmony_ci command1.CheckAndRun(); 9227c804472Sopenharmony_ci double longitude = SharedData<double>::GetData(SharedDataType::LONGITUDE); 9237c804472Sopenharmony_ci double latitude = SharedData<double>::GetData(SharedDataType::LATITUDE); 9247c804472Sopenharmony_ci EXPECT_EQ(latitude, 10.9023142); // 10.9023142 is test longitude value 9257c804472Sopenharmony_ci EXPECT_EQ(longitude, 56.3043242); // 56.3043242 is test latitude value 9267c804472Sopenharmony_ci } 9277c804472Sopenharmony_ci 9287c804472Sopenharmony_ci TEST_F(CommandLineTest, LocationCommandGetTest) 9297c804472Sopenharmony_ci { 9307c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 9317c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 9327c804472Sopenharmony_ci LocationCommand command2(type, args2, *socket); 9337c804472Sopenharmony_ci g_output = false; 9347c804472Sopenharmony_ci command2.CheckAndRun(); 9357c804472Sopenharmony_ci EXPECT_TRUE(g_output); 9367c804472Sopenharmony_ci } 9377c804472Sopenharmony_ci 9387c804472Sopenharmony_ci TEST_F(CommandLineTest, KeepScreenOnStateCommandArgsTest) 9397c804472Sopenharmony_ci { 9407c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 9417c804472Sopenharmony_ci std::string msg0 = R"({"KeepScreenOnState111":false})"; 9427c804472Sopenharmony_ci Json2::Value args0 = JsonReader::ParseJsonData2(msg0); 9437c804472Sopenharmony_ci KeepScreenOnStateCommand command0(type, args0, *socket); 9447c804472Sopenharmony_ci command0.CheckAndRun(); 9457c804472Sopenharmony_ci bool status = SharedData<bool>::GetData(SharedDataType::KEEP_SCREEN_ON); 9467c804472Sopenharmony_ci EXPECT_EQ(status, true); 9477c804472Sopenharmony_ci 9487c804472Sopenharmony_ci std::string msg1 = R"({"KeepScreenOnState":"abc"})"; 9497c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 9507c804472Sopenharmony_ci KeepScreenOnStateCommand command1(type, args1, *socket); 9517c804472Sopenharmony_ci command1.CheckAndRun(); 9527c804472Sopenharmony_ci status = SharedData<bool>::GetData(SharedDataType::KEEP_SCREEN_ON); 9537c804472Sopenharmony_ci EXPECT_EQ(status, true); 9547c804472Sopenharmony_ci } 9557c804472Sopenharmony_ci 9567c804472Sopenharmony_ci TEST_F(CommandLineTest, KeepScreenOnStateCommandSetTest) 9577c804472Sopenharmony_ci { 9587c804472Sopenharmony_ci std::string msg1 = R"({"KeepScreenOnState":false})"; 9597c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 9607c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 9617c804472Sopenharmony_ci KeepScreenOnStateCommand command1(type, args1, *socket); 9627c804472Sopenharmony_ci command1.CheckAndRun(); 9637c804472Sopenharmony_ci bool status = SharedData<bool>::GetData(SharedDataType::KEEP_SCREEN_ON); 9647c804472Sopenharmony_ci EXPECT_EQ(status, false); 9657c804472Sopenharmony_ci } 9667c804472Sopenharmony_ci 9677c804472Sopenharmony_ci TEST_F(CommandLineTest, KeepScreenOnStateCommandGetTest) 9687c804472Sopenharmony_ci { 9697c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 9707c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 9717c804472Sopenharmony_ci KeepScreenOnStateCommand command2(type, args2, *socket); 9727c804472Sopenharmony_ci g_output = false; 9737c804472Sopenharmony_ci command2.CheckAndRun(); 9747c804472Sopenharmony_ci EXPECT_TRUE(g_output); 9757c804472Sopenharmony_ci } 9767c804472Sopenharmony_ci 9777c804472Sopenharmony_ci TEST_F(CommandLineTest, WearingStateCommandArgsTest) 9787c804472Sopenharmony_ci { 9797c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 9807c804472Sopenharmony_ci std::string msg0 = R"({"WearingState11":false})"; 9817c804472Sopenharmony_ci Json2::Value args0 = JsonReader::ParseJsonData2(msg0); 9827c804472Sopenharmony_ci WearingStateCommand command0(type, args0, *socket); 9837c804472Sopenharmony_ci command0.CheckAndRun(); 9847c804472Sopenharmony_ci bool status = SharedData<bool>::GetData(SharedDataType::WEARING_STATE); 9857c804472Sopenharmony_ci EXPECT_EQ(status, true); 9867c804472Sopenharmony_ci 9877c804472Sopenharmony_ci std::string msg1 = R"({"WearingState":"abc"})"; 9887c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 9897c804472Sopenharmony_ci WearingStateCommand command1(type, args1, *socket); 9907c804472Sopenharmony_ci command1.CheckAndRun(); 9917c804472Sopenharmony_ci status = SharedData<bool>::GetData(SharedDataType::WEARING_STATE); 9927c804472Sopenharmony_ci EXPECT_EQ(status, true); 9937c804472Sopenharmony_ci } 9947c804472Sopenharmony_ci 9957c804472Sopenharmony_ci TEST_F(CommandLineTest, WearingStateCommandSetTest) 9967c804472Sopenharmony_ci { 9977c804472Sopenharmony_ci std::string msg1 = R"({"WearingState":false})"; 9987c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 9997c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 10007c804472Sopenharmony_ci WearingStateCommand command1(type, args1, *socket); 10017c804472Sopenharmony_ci command1.CheckAndRun(); 10027c804472Sopenharmony_ci bool status = SharedData<bool>::GetData(SharedDataType::WEARING_STATE); 10037c804472Sopenharmony_ci EXPECT_EQ(status, false); 10047c804472Sopenharmony_ci } 10057c804472Sopenharmony_ci 10067c804472Sopenharmony_ci TEST_F(CommandLineTest, WearingStateCommandGetTest) 10077c804472Sopenharmony_ci { 10087c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 10097c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 10107c804472Sopenharmony_ci WearingStateCommand command2(type, args2, *socket); 10117c804472Sopenharmony_ci g_output = false; 10127c804472Sopenharmony_ci command2.CheckAndRun(); 10137c804472Sopenharmony_ci EXPECT_TRUE(g_output); 10147c804472Sopenharmony_ci } 10157c804472Sopenharmony_ci 10167c804472Sopenharmony_ci TEST_F(CommandLineTest, BrightnessModeCommandArgsTest) 10177c804472Sopenharmony_ci { 10187c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 10197c804472Sopenharmony_ci std::string msg0 = R"({"BrightnessMode111":1})"; 10207c804472Sopenharmony_ci Json2::Value args0 = JsonReader::ParseJsonData2(msg0); 10217c804472Sopenharmony_ci BrightnessModeCommand command0(type, args0, *socket); 10227c804472Sopenharmony_ci command0.CheckAndRun(); 10237c804472Sopenharmony_ci uint8_t brightness = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_MODE); 10247c804472Sopenharmony_ci EXPECT_EQ(brightness, 0); // 0 is default brightness 10257c804472Sopenharmony_ci 10267c804472Sopenharmony_ci std::string msg1 = R"({"BrightnessMode":"abc"})"; 10277c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 10287c804472Sopenharmony_ci BrightnessModeCommand command1(type, args1, *socket); 10297c804472Sopenharmony_ci command1.CheckAndRun(); 10307c804472Sopenharmony_ci brightness = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_MODE); 10317c804472Sopenharmony_ci EXPECT_EQ(brightness, 0); // 0 is default brightness 10327c804472Sopenharmony_ci 10337c804472Sopenharmony_ci msg1 = R"({"BrightnessMode":-1})"; 10347c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg1); 10357c804472Sopenharmony_ci BrightnessModeCommand command2(type, args2, *socket); 10367c804472Sopenharmony_ci command2.CheckAndRun(); 10377c804472Sopenharmony_ci brightness = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_MODE); 10387c804472Sopenharmony_ci EXPECT_NE(brightness, -1); // -1 is test brightness value 10397c804472Sopenharmony_ci 10407c804472Sopenharmony_ci msg1 = R"({"BrightnessMode":2})"; 10417c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg1); 10427c804472Sopenharmony_ci BrightnessModeCommand command3(type, args3, *socket); 10437c804472Sopenharmony_ci command3.CheckAndRun(); 10447c804472Sopenharmony_ci brightness = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_MODE); 10457c804472Sopenharmony_ci EXPECT_NE(brightness, 2); // 2 is test brightness value 10467c804472Sopenharmony_ci } 10477c804472Sopenharmony_ci 10487c804472Sopenharmony_ci TEST_F(CommandLineTest, BrightnessModeCommandSetTest) 10497c804472Sopenharmony_ci { 10507c804472Sopenharmony_ci std::string msg1 = R"({"BrightnessMode":1})"; 10517c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 10527c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 10537c804472Sopenharmony_ci BrightnessModeCommand command1(type, args1, *socket); 10547c804472Sopenharmony_ci command1.CheckAndRun(); 10557c804472Sopenharmony_ci uint8_t brightness = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_MODE); 10567c804472Sopenharmony_ci EXPECT_EQ(brightness, 1); // 1 is default brightness 10577c804472Sopenharmony_ci } 10587c804472Sopenharmony_ci 10597c804472Sopenharmony_ci TEST_F(CommandLineTest, BrightnessModeCommandGetTest) 10607c804472Sopenharmony_ci { 10617c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 10627c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 10637c804472Sopenharmony_ci BrightnessModeCommand command2(type, args2, *socket); 10647c804472Sopenharmony_ci g_output = false; 10657c804472Sopenharmony_ci command2.CheckAndRun(); 10667c804472Sopenharmony_ci EXPECT_TRUE(g_output); 10677c804472Sopenharmony_ci } 10687c804472Sopenharmony_ci 10697c804472Sopenharmony_ci TEST_F(CommandLineTest, ChargeModeCommandArgsTest) 10707c804472Sopenharmony_ci { 10717c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 10727c804472Sopenharmony_ci std::string msg0 = R"({"ChargeMode111":1})"; 10737c804472Sopenharmony_ci Json2::Value args0 = JsonReader::ParseJsonData2(msg0); 10747c804472Sopenharmony_ci ChargeModeCommand command0(type, args0, *socket); 10757c804472Sopenharmony_ci command0.CheckAndRun(); 10767c804472Sopenharmony_ci uint8_t mode = SharedData<uint8_t>::GetData(SharedDataType::BATTERY_STATUS); 10777c804472Sopenharmony_ci EXPECT_EQ(mode, 0); // 0 is default mode 10787c804472Sopenharmony_ci 10797c804472Sopenharmony_ci std::string msg1 = R"({"ChargeMode":"abc"})"; 10807c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 10817c804472Sopenharmony_ci ChargeModeCommand command1(type, args1, *socket); 10827c804472Sopenharmony_ci command1.CheckAndRun(); 10837c804472Sopenharmony_ci mode = SharedData<uint8_t>::GetData(SharedDataType::BATTERY_STATUS); 10847c804472Sopenharmony_ci EXPECT_EQ(mode, 0); // 0 is default mode 10857c804472Sopenharmony_ci 10867c804472Sopenharmony_ci msg1 = R"({"ChargeMode":-1})"; 10877c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg1); 10887c804472Sopenharmony_ci ChargeModeCommand command2(type, args2, *socket); 10897c804472Sopenharmony_ci command2.CheckAndRun(); 10907c804472Sopenharmony_ci mode = SharedData<uint8_t>::GetData(SharedDataType::BATTERY_STATUS); 10917c804472Sopenharmony_ci EXPECT_NE(mode, -1); // -1 is test mode value 10927c804472Sopenharmony_ci 10937c804472Sopenharmony_ci msg1 = R"({"ChargeMode":2})"; 10947c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg1); 10957c804472Sopenharmony_ci ChargeModeCommand command3(type, args3, *socket); 10967c804472Sopenharmony_ci command3.CheckAndRun(); 10977c804472Sopenharmony_ci mode = SharedData<uint8_t>::GetData(SharedDataType::BATTERY_STATUS); 10987c804472Sopenharmony_ci EXPECT_NE(mode, 2); // 2 is test mode value 10997c804472Sopenharmony_ci } 11007c804472Sopenharmony_ci 11017c804472Sopenharmony_ci TEST_F(CommandLineTest, ChargeModeCommandSetTest) 11027c804472Sopenharmony_ci { 11037c804472Sopenharmony_ci std::string msg1 = R"({"ChargeMode":1})"; 11047c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 11057c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 11067c804472Sopenharmony_ci ChargeModeCommand command1(type, args1, *socket); 11077c804472Sopenharmony_ci command1.CheckAndRun(); 11087c804472Sopenharmony_ci uint8_t mode = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_MODE); 11097c804472Sopenharmony_ci EXPECT_EQ(mode, 1); // 1 is default mode 11107c804472Sopenharmony_ci } 11117c804472Sopenharmony_ci 11127c804472Sopenharmony_ci TEST_F(CommandLineTest, ChargeModeCommandGetTest) 11137c804472Sopenharmony_ci { 11147c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 11157c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 11167c804472Sopenharmony_ci ChargeModeCommand command2(type, args2, *socket); 11177c804472Sopenharmony_ci g_output = false; 11187c804472Sopenharmony_ci command2.CheckAndRun(); 11197c804472Sopenharmony_ci EXPECT_TRUE(g_output); 11207c804472Sopenharmony_ci } 11217c804472Sopenharmony_ci 11227c804472Sopenharmony_ci TEST_F(CommandLineTest, BrightnessCommandArgsTest) 11237c804472Sopenharmony_ci { 11247c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 11257c804472Sopenharmony_ci std::string msg0 = R"({"Brightness111":100})"; 11267c804472Sopenharmony_ci Json2::Value args0 = JsonReader::ParseJsonData2(msg0); 11277c804472Sopenharmony_ci BrightnessCommand command0(type, args0, *socket); 11287c804472Sopenharmony_ci command0.CheckAndRun(); 11297c804472Sopenharmony_ci uint8_t mode = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_VALUE); 11307c804472Sopenharmony_ci EXPECT_EQ(mode, 255); // 255 is default mode 11317c804472Sopenharmony_ci 11327c804472Sopenharmony_ci std::string msg1 = R"({"Brightness":"abc"})"; 11337c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 11347c804472Sopenharmony_ci BrightnessCommand command1(type, args1, *socket); 11357c804472Sopenharmony_ci command1.CheckAndRun(); 11367c804472Sopenharmony_ci mode = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_VALUE); 11377c804472Sopenharmony_ci EXPECT_EQ(mode, 255); // 255 is default mode 11387c804472Sopenharmony_ci 11397c804472Sopenharmony_ci msg1 = R"({"Brightness":256})"; 11407c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg1); 11417c804472Sopenharmony_ci BrightnessCommand command2(type, args2, *socket); 11427c804472Sopenharmony_ci command2.CheckAndRun(); 11437c804472Sopenharmony_ci mode = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_VALUE); 11447c804472Sopenharmony_ci EXPECT_NE(mode, 256); // 256 is test mode value 11457c804472Sopenharmony_ci 11467c804472Sopenharmony_ci msg1 = R"({"Brightness":0})"; 11477c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg1); 11487c804472Sopenharmony_ci BrightnessCommand command3(type, args3, *socket); 11497c804472Sopenharmony_ci command3.CheckAndRun(); 11507c804472Sopenharmony_ci mode = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_VALUE); 11517c804472Sopenharmony_ci EXPECT_NE(mode, 0); // 0 is test mode value 11527c804472Sopenharmony_ci } 11537c804472Sopenharmony_ci 11547c804472Sopenharmony_ci TEST_F(CommandLineTest, BrightnessCommandSetTest) 11557c804472Sopenharmony_ci { 11567c804472Sopenharmony_ci std::string msg1 = R"({"Brightness":100})"; 11577c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 11587c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 11597c804472Sopenharmony_ci BrightnessCommand command1(type, args1, *socket); 11607c804472Sopenharmony_ci command1.CheckAndRun(); 11617c804472Sopenharmony_ci uint8_t mode = SharedData<uint8_t>::GetData(SharedDataType::BRIGHTNESS_VALUE); 11627c804472Sopenharmony_ci EXPECT_EQ(mode, 100); // 100 is test mode 11637c804472Sopenharmony_ci } 11647c804472Sopenharmony_ci 11657c804472Sopenharmony_ci TEST_F(CommandLineTest, BrightnessCommandGetTest) 11667c804472Sopenharmony_ci { 11677c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 11687c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 11697c804472Sopenharmony_ci BrightnessCommand command2(type, args2, *socket); 11707c804472Sopenharmony_ci g_output = false; 11717c804472Sopenharmony_ci command2.CheckAndRun(); 11727c804472Sopenharmony_ci EXPECT_TRUE(g_output); 11737c804472Sopenharmony_ci } 11747c804472Sopenharmony_ci 11757c804472Sopenharmony_ci TEST_F(CommandLineTest, HeartRateCommandArgsTest) 11767c804472Sopenharmony_ci { 11777c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 11787c804472Sopenharmony_ci std::string msg0 = R"({"HeartRate111":100})"; 11797c804472Sopenharmony_ci Json2::Value args0 = JsonReader::ParseJsonData2(msg0); 11807c804472Sopenharmony_ci HeartRateCommand command0(type, args0, *socket); 11817c804472Sopenharmony_ci command0.CheckAndRun(); 11827c804472Sopenharmony_ci uint8_t mode = SharedData<uint8_t>::GetData(SharedDataType::HEARTBEAT_VALUE); 11837c804472Sopenharmony_ci EXPECT_EQ(mode, 80); // 80 is default mode 11847c804472Sopenharmony_ci 11857c804472Sopenharmony_ci std::string msg1 = R"({"HeartRate":"abc"})"; 11867c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 11877c804472Sopenharmony_ci HeartRateCommand command1(type, args1, *socket); 11887c804472Sopenharmony_ci command1.CheckAndRun(); 11897c804472Sopenharmony_ci mode = SharedData<uint8_t>::GetData(SharedDataType::HEARTBEAT_VALUE); 11907c804472Sopenharmony_ci EXPECT_EQ(mode, 80); // 80 is default mode 11917c804472Sopenharmony_ci 11927c804472Sopenharmony_ci msg1 = R"({"HeartRate":256})"; 11937c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg1); 11947c804472Sopenharmony_ci HeartRateCommand command2(type, args2, *socket); 11957c804472Sopenharmony_ci command2.CheckAndRun(); 11967c804472Sopenharmony_ci mode = SharedData<uint8_t>::GetData(SharedDataType::HEARTBEAT_VALUE); 11977c804472Sopenharmony_ci EXPECT_NE(mode, 256); // 256 is test mode value 11987c804472Sopenharmony_ci 11997c804472Sopenharmony_ci msg1 = R"({"HeartRate":-1})"; 12007c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg1); 12017c804472Sopenharmony_ci HeartRateCommand command3(type, args3, *socket); 12027c804472Sopenharmony_ci command3.CheckAndRun(); 12037c804472Sopenharmony_ci mode = SharedData<uint8_t>::GetData(SharedDataType::HEARTBEAT_VALUE); 12047c804472Sopenharmony_ci EXPECT_NE(mode, -1); // -1 is test mode value 12057c804472Sopenharmony_ci } 12067c804472Sopenharmony_ci 12077c804472Sopenharmony_ci TEST_F(CommandLineTest, HeartRateCommandSetTest) 12087c804472Sopenharmony_ci { 12097c804472Sopenharmony_ci std::string msg1 = R"({"HeartRate":100})"; 12107c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 12117c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 12127c804472Sopenharmony_ci HeartRateCommand command1(type, args1, *socket); 12137c804472Sopenharmony_ci command1.CheckAndRun(); 12147c804472Sopenharmony_ci uint8_t mode = SharedData<uint8_t>::GetData(SharedDataType::HEARTBEAT_VALUE); 12157c804472Sopenharmony_ci EXPECT_EQ(mode, 100); // 100 is test mode 12167c804472Sopenharmony_ci } 12177c804472Sopenharmony_ci 12187c804472Sopenharmony_ci TEST_F(CommandLineTest, HeartRateCommandGetTest) 12197c804472Sopenharmony_ci { 12207c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 12217c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 12227c804472Sopenharmony_ci HeartRateCommand command2(type, args2, *socket); 12237c804472Sopenharmony_ci g_output = false; 12247c804472Sopenharmony_ci command2.CheckAndRun(); 12257c804472Sopenharmony_ci EXPECT_TRUE(g_output); 12267c804472Sopenharmony_ci } 12277c804472Sopenharmony_ci 12287c804472Sopenharmony_ci TEST_F(CommandLineTest, StepCountCommandArgsTest) 12297c804472Sopenharmony_ci { 12307c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 12317c804472Sopenharmony_ci std::string msg0 = R"({"StepCount111":100})"; 12327c804472Sopenharmony_ci Json2::Value args0 = JsonReader::ParseJsonData2(msg0); 12337c804472Sopenharmony_ci StepCountCommand command0(type, args0, *socket); 12347c804472Sopenharmony_ci command0.CheckAndRun(); 12357c804472Sopenharmony_ci uint32_t mode = SharedData<uint32_t>::GetData(SharedDataType::SUMSTEP_VALUE); 12367c804472Sopenharmony_ci EXPECT_EQ(mode, 0); // 0 is default mode 12377c804472Sopenharmony_ci 12387c804472Sopenharmony_ci std::string msg1 = R"({"StepCount":"abc"})"; 12397c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 12407c804472Sopenharmony_ci StepCountCommand command1(type, args1, *socket); 12417c804472Sopenharmony_ci command1.CheckAndRun(); 12427c804472Sopenharmony_ci mode = SharedData<uint32_t>::GetData(SharedDataType::SUMSTEP_VALUE); 12437c804472Sopenharmony_ci EXPECT_EQ(mode, 0); // 0 is default mode 12447c804472Sopenharmony_ci 12457c804472Sopenharmony_ci msg1 = R"({"StepCount":10000000})"; 12467c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg1); 12477c804472Sopenharmony_ci StepCountCommand command2(type, args2, *socket); 12487c804472Sopenharmony_ci command2.CheckAndRun(); 12497c804472Sopenharmony_ci mode = SharedData<uint32_t>::GetData(SharedDataType::SUMSTEP_VALUE); 12507c804472Sopenharmony_ci EXPECT_NE(mode, 10000000); // 10000000 is test mode value 12517c804472Sopenharmony_ci 12527c804472Sopenharmony_ci msg1 = R"({"StepCount":-1})"; 12537c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg1); 12547c804472Sopenharmony_ci StepCountCommand command3(type, args3, *socket); 12557c804472Sopenharmony_ci command3.CheckAndRun(); 12567c804472Sopenharmony_ci mode = SharedData<uint32_t>::GetData(SharedDataType::SUMSTEP_VALUE); 12577c804472Sopenharmony_ci EXPECT_NE(mode, -1); // -1 is test mode value 12587c804472Sopenharmony_ci } 12597c804472Sopenharmony_ci 12607c804472Sopenharmony_ci TEST_F(CommandLineTest, StepCountCommandSetTest) 12617c804472Sopenharmony_ci { 12627c804472Sopenharmony_ci std::string msg1 = R"({"StepCount":100})"; 12637c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 12647c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 12657c804472Sopenharmony_ci StepCountCommand command1(type, args1, *socket); 12667c804472Sopenharmony_ci command1.CheckAndRun(); 12677c804472Sopenharmony_ci uint8_t mode = SharedData<uint32_t>::GetData(SharedDataType::SUMSTEP_VALUE); 12687c804472Sopenharmony_ci EXPECT_EQ(mode, 100); // 100 is test mode 12697c804472Sopenharmony_ci } 12707c804472Sopenharmony_ci 12717c804472Sopenharmony_ci TEST_F(CommandLineTest, StepCountCommandGetTest) 12727c804472Sopenharmony_ci { 12737c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 12747c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 12757c804472Sopenharmony_ci StepCountCommand command2(type, args2, *socket); 12767c804472Sopenharmony_ci g_output = false; 12777c804472Sopenharmony_ci command2.CheckAndRun(); 12787c804472Sopenharmony_ci EXPECT_TRUE(g_output); 12797c804472Sopenharmony_ci } 12807c804472Sopenharmony_ci 12817c804472Sopenharmony_ci TEST_F(CommandLineTest, DistributedCommunicationsCommandTest) 12827c804472Sopenharmony_ci { 12837c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 12847c804472Sopenharmony_ci std::string msg1 = R"({"DeviceId":"68-05-CA-90-9A-66","bundleName":"abc", 12857c804472Sopenharmony_ci "abilityName":"hello"})"; 12867c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 12877c804472Sopenharmony_ci DistributedCommunicationsCommand command1(type, args1, *socket); 12887c804472Sopenharmony_ci g_sendVirtualMessage = false; 12897c804472Sopenharmony_ci command1.CheckAndRun(); 12907c804472Sopenharmony_ci EXPECT_FALSE(g_sendVirtualMessage); 12917c804472Sopenharmony_ci 12927c804472Sopenharmony_ci std::string msg2 = R"({"DeviceId":"68-05-CA-90-9A-66","bundleName":"abc", 12937c804472Sopenharmony_ci "abilityName":"hello"},"message":"")"; 12947c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 12957c804472Sopenharmony_ci DistributedCommunicationsCommand command2(type, args2, *socket); 12967c804472Sopenharmony_ci g_sendVirtualMessage = false; 12977c804472Sopenharmony_ci command2.CheckAndRun(); 12987c804472Sopenharmony_ci EXPECT_FALSE(g_sendVirtualMessage); 12997c804472Sopenharmony_ci 13007c804472Sopenharmony_ci std::string msg3 = R"({"DeviceId":"68-05-CA-90-9A-66","bundleName":"abc", 13017c804472Sopenharmony_ci "abilityName":"hello","message":"{ action:'GET_WEATHER',city:'HangZhou' }"})"; 13027c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg3); 13037c804472Sopenharmony_ci DistributedCommunicationsCommand command3(type, args3, *socket); 13047c804472Sopenharmony_ci g_sendVirtualMessage = false; 13057c804472Sopenharmony_ci command3.CheckAndRun(); 13067c804472Sopenharmony_ci EXPECT_TRUE(g_sendVirtualMessage); 13077c804472Sopenharmony_ci 13087c804472Sopenharmony_ci std::string msg4 = R"({"DeviceId" : "68-05-CA-90-9A-66", "bundleName" : "abc", 13097c804472Sopenharmony_ci "abilityName" : "hello", "message" : ""})"; 13107c804472Sopenharmony_ci Json2::Value args4 = JsonReader::ParseJsonData2(msg4); 13117c804472Sopenharmony_ci DistributedCommunicationsCommand command4(type, args4, *socket); 13127c804472Sopenharmony_ci g_sendVirtualMessage = false; 13137c804472Sopenharmony_ci command4.CheckAndRun(); 13147c804472Sopenharmony_ci EXPECT_FALSE(g_sendVirtualMessage); 13157c804472Sopenharmony_ci } 13167c804472Sopenharmony_ci 13177c804472Sopenharmony_ci TEST_F(CommandLineTest, DistributedCommunicationsCommandTest2) 13187c804472Sopenharmony_ci { 13197c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 13207c804472Sopenharmony_ci std::string msg = R"({"DeviceId" : "68-05-CA-90-9A-66", "bundleName" : "abc", 13217c804472Sopenharmony_ci "abilityName" : "hello", "message" : "{ action : 'GET_WEATHER', city : 'HangZhou' }"})"; 13227c804472Sopenharmony_ci Json2::Value args = JsonReader::ParseJsonData2(msg); 13237c804472Sopenharmony_ci DistributedCommunicationsCommand command(type, args, *socket); 13247c804472Sopenharmony_ci std::vector<char> vec = command.StringToCharVector("123"); 13257c804472Sopenharmony_ci int size = 4; 13267c804472Sopenharmony_ci EXPECT_EQ(vec.size(), size); 13277c804472Sopenharmony_ci } 13287c804472Sopenharmony_ci 13297c804472Sopenharmony_ci TEST_F(CommandLineTest, MouseWheelCommandTest) 13307c804472Sopenharmony_ci { 13317c804472Sopenharmony_ci std::string msg1 = R"({"rotate":"aaa"})"; 13327c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 13337c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 13347c804472Sopenharmony_ci MouseWheelCommand command1(type, args1, *socket); 13357c804472Sopenharmony_ci command1.CheckAndRun(); 13367c804472Sopenharmony_ci EXPECT_EQ(MouseWheelImpl::GetInstance().rotate, 0); // 0 is default value 13377c804472Sopenharmony_ci 13387c804472Sopenharmony_ci std::string msg2 = R"({"rotate":100})"; 13397c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 13407c804472Sopenharmony_ci MouseWheelCommand command2(type, args2, *socket); 13417c804472Sopenharmony_ci command2.CheckAndRun(); 13427c804472Sopenharmony_ci EXPECT_EQ(MouseWheelImpl::GetInstance().GetRotate(), 100); // 100 is test mode 13437c804472Sopenharmony_ci 13447c804472Sopenharmony_ci msg2 = R"({"rotate":150})"; 13457c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg2); 13467c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::STATIC; 13477c804472Sopenharmony_ci MouseWheelCommand command3(type, args3, *socket); 13487c804472Sopenharmony_ci command3.CheckAndRun(); 13497c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::DYNAMIC; 13507c804472Sopenharmony_ci EXPECT_NE(MouseWheelImpl::GetInstance().GetRotate(), 150); // 100 is test mode 13517c804472Sopenharmony_ci } 13527c804472Sopenharmony_ci 13537c804472Sopenharmony_ci TEST_F(CommandLineTest, TouchPressCommandArgsTest) 13547c804472Sopenharmony_ci { 13557c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 13567c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":"abc","duration":""})"; 13577c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 13587c804472Sopenharmony_ci TouchPressCommand command1(type, args1, *socket); 13597c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 13607c804472Sopenharmony_ci command1.CheckAndRun(); 13617c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 13627c804472Sopenharmony_ci } 13637c804472Sopenharmony_ci 13647c804472Sopenharmony_ci TEST_F(CommandLineTest, TouchPressCommandArgsRangeTest) 13657c804472Sopenharmony_ci { 13667c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 13677c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":15000,"duration":""})"; 13687c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 13697c804472Sopenharmony_ci TouchPressCommand command1(type, args1, *socket); 13707c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 13717c804472Sopenharmony_ci command1.CheckAndRun(); 13727c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 13737c804472Sopenharmony_ci 13747c804472Sopenharmony_ci std::string msg2 = R"({"x":-1,"y":15000,"duration":""})"; 13757c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 13767c804472Sopenharmony_ci TouchPressCommand command2(type, args2, *socket); 13777c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 13787c804472Sopenharmony_ci command2.CheckAndRun(); 13797c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 13807c804472Sopenharmony_ci 13817c804472Sopenharmony_ci std::string msg3 = R"({"x":15000,"y":365,"duration":""})"; 13827c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg3); 13837c804472Sopenharmony_ci TouchPressCommand command3(type, args3, *socket); 13847c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 13857c804472Sopenharmony_ci command3.CheckAndRun(); 13867c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 13877c804472Sopenharmony_ci 13887c804472Sopenharmony_ci std::string msg4 = R"({"x":15000,"y":-1,"duration":""})"; 13897c804472Sopenharmony_ci Json2::Value args4 = JsonReader::ParseJsonData2(msg4); 13907c804472Sopenharmony_ci TouchPressCommand command4(type, args4, *socket); 13917c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 13927c804472Sopenharmony_ci command4.CheckAndRun(); 13937c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 13947c804472Sopenharmony_ci } 13957c804472Sopenharmony_ci 13967c804472Sopenharmony_ci TEST_F(CommandLineTest, TouchPressCommandArgsCorrectTest) 13977c804472Sopenharmony_ci { 13987c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 13997c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":1076,"duration":""})"; 14007c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 14017c804472Sopenharmony_ci TouchPressCommand command1(type, args1, *socket); 14027c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14037c804472Sopenharmony_ci command1.CheckAndRun(); 14047c804472Sopenharmony_ci EXPECT_TRUE(g_dispatchOsTouchEvent); 14057c804472Sopenharmony_ci 14067c804472Sopenharmony_ci TouchPressCommand command2(type, args1, *socket); 14077c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::STATIC; 14087c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14097c804472Sopenharmony_ci command2.CheckAndRun(); 14107c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::DYNAMIC; 14117c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 14127c804472Sopenharmony_ci } 14137c804472Sopenharmony_ci 14147c804472Sopenharmony_ci TEST_F(CommandLineTest, TouchReleaseCommandArgsTest) 14157c804472Sopenharmony_ci { 14167c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 14177c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":"abc"})"; 14187c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 14197c804472Sopenharmony_ci TouchReleaseCommand command1(type, args1, *socket); 14207c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14217c804472Sopenharmony_ci command1.CheckAndRun(); 14227c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 14237c804472Sopenharmony_ci } 14247c804472Sopenharmony_ci 14257c804472Sopenharmony_ci TEST_F(CommandLineTest, TouchReleaseCommandArgsRangeTest) 14267c804472Sopenharmony_ci { 14277c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 14287c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":15000})"; 14297c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 14307c804472Sopenharmony_ci TouchReleaseCommand command1(type, args1, *socket); 14317c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14327c804472Sopenharmony_ci command1.CheckAndRun(); 14337c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 14347c804472Sopenharmony_ci 14357c804472Sopenharmony_ci std::string msg2 = R"({"x":-1,"y":15000})"; 14367c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 14377c804472Sopenharmony_ci TouchReleaseCommand command2(type, args2, *socket); 14387c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14397c804472Sopenharmony_ci command2.CheckAndRun(); 14407c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 14417c804472Sopenharmony_ci 14427c804472Sopenharmony_ci std::string msg3 = R"({"x":15000,"y":365})"; 14437c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg3); 14447c804472Sopenharmony_ci TouchReleaseCommand command3(type, args3, *socket); 14457c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14467c804472Sopenharmony_ci command3.CheckAndRun(); 14477c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 14487c804472Sopenharmony_ci 14497c804472Sopenharmony_ci std::string msg4 = R"({"x":15000,"y":-1})"; 14507c804472Sopenharmony_ci Json2::Value args4 = JsonReader::ParseJsonData2(msg4); 14517c804472Sopenharmony_ci TouchReleaseCommand command4(type, args4, *socket); 14527c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14537c804472Sopenharmony_ci command4.CheckAndRun(); 14547c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 14557c804472Sopenharmony_ci } 14567c804472Sopenharmony_ci 14577c804472Sopenharmony_ci TEST_F(CommandLineTest, TouchReleaseCommandArgsCorrectTest) 14587c804472Sopenharmony_ci { 14597c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 14607c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":1076})"; 14617c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 14627c804472Sopenharmony_ci TouchReleaseCommand command1(type, args1, *socket); 14637c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14647c804472Sopenharmony_ci command1.CheckAndRun(); 14657c804472Sopenharmony_ci EXPECT_TRUE(g_dispatchOsTouchEvent); 14667c804472Sopenharmony_ci 14677c804472Sopenharmony_ci TouchReleaseCommand command2(type, args1, *socket); 14687c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::STATIC; 14697c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14707c804472Sopenharmony_ci command2.CheckAndRun(); 14717c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::DYNAMIC; 14727c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 14737c804472Sopenharmony_ci } 14747c804472Sopenharmony_ci 14757c804472Sopenharmony_ci TEST_F(CommandLineTest, TouchMoveCommandArgsTest) 14767c804472Sopenharmony_ci { 14777c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 14787c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":"abc"})"; 14797c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 14807c804472Sopenharmony_ci TouchMoveCommand command1(type, args1, *socket); 14817c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14827c804472Sopenharmony_ci command1.CheckAndRun(); 14837c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 14847c804472Sopenharmony_ci } 14857c804472Sopenharmony_ci 14867c804472Sopenharmony_ci TEST_F(CommandLineTest, TouchMoveCommandArgsRangeTest) 14877c804472Sopenharmony_ci { 14887c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 14897c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":15000})"; 14907c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 14917c804472Sopenharmony_ci TouchMoveCommand command1(type, args1, *socket); 14927c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 14937c804472Sopenharmony_ci command1.CheckAndRun(); 14947c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 14957c804472Sopenharmony_ci 14967c804472Sopenharmony_ci std::string msg2 = R"({"x":-1,"y":15000})"; 14977c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 14987c804472Sopenharmony_ci TouchMoveCommand command2(type, args2, *socket); 14997c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 15007c804472Sopenharmony_ci command2.CheckAndRun(); 15017c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 15027c804472Sopenharmony_ci 15037c804472Sopenharmony_ci std::string msg3 = R"({"x":15000,"y":365})"; 15047c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg3); 15057c804472Sopenharmony_ci TouchMoveCommand command3(type, args3, *socket); 15067c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 15077c804472Sopenharmony_ci command3.CheckAndRun(); 15087c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 15097c804472Sopenharmony_ci 15107c804472Sopenharmony_ci std::string msg4 = R"({"x":15000,"y":-1})"; 15117c804472Sopenharmony_ci Json2::Value args4 = JsonReader::ParseJsonData2(msg4); 15127c804472Sopenharmony_ci TouchMoveCommand command4(type, args4, *socket); 15137c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 15147c804472Sopenharmony_ci command4.CheckAndRun(); 15157c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 15167c804472Sopenharmony_ci } 15177c804472Sopenharmony_ci 15187c804472Sopenharmony_ci TEST_F(CommandLineTest, TouchMoveCommandArgsCorrectTest) 15197c804472Sopenharmony_ci { 15207c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 15217c804472Sopenharmony_ci std::string msg1 = R"({"x":365,"y":1076})"; 15227c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 15237c804472Sopenharmony_ci TouchMoveCommand command1(type, args1, *socket); 15247c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 15257c804472Sopenharmony_ci command1.CheckAndRun(); 15267c804472Sopenharmony_ci EXPECT_TRUE(g_dispatchOsTouchEvent); 15277c804472Sopenharmony_ci 15287c804472Sopenharmony_ci TouchMoveCommand command2(type, args1, *socket); 15297c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::STATIC; 15307c804472Sopenharmony_ci g_dispatchOsTouchEvent = false; 15317c804472Sopenharmony_ci command2.CheckAndRun(); 15327c804472Sopenharmony_ci CommandParser::GetInstance().screenMode = CommandParser::ScreenMode::DYNAMIC; 15337c804472Sopenharmony_ci EXPECT_FALSE(g_dispatchOsTouchEvent); 15347c804472Sopenharmony_ci } 15357c804472Sopenharmony_ci 15367c804472Sopenharmony_ci TEST_F(CommandLineTest, LanguageCommandArgsTest) 15377c804472Sopenharmony_ci { 15387c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 15397c804472Sopenharmony_ci std::string msg1 = R"({"Language":111})"; 15407c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 15417c804472Sopenharmony_ci LanguageCommand command1(type, args1, *socket); 15427c804472Sopenharmony_ci command1.CheckAndRun(); 15437c804472Sopenharmony_ci std::string language = SharedData<std::string>::GetData(SharedDataType::LANGUAGE); 15447c804472Sopenharmony_ci EXPECT_EQ(language, "zh-CN"); // zh-CN is default value 15457c804472Sopenharmony_ci 15467c804472Sopenharmony_ci CommandParser::GetInstance().deviceType = "liteWearable"; 15477c804472Sopenharmony_ci std::string msg2 = R"({"Language":"ar_AE"})"; 15487c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 15497c804472Sopenharmony_ci LanguageCommand command2(type, args2, *socket); 15507c804472Sopenharmony_ci command2.CheckAndRun(); 15517c804472Sopenharmony_ci language = SharedData<std::string>::GetData(SharedDataType::LANGUAGE); 15527c804472Sopenharmony_ci EXPECT_NE(language, "ar_AE"); 15537c804472Sopenharmony_ci 15547c804472Sopenharmony_ci CommandParser::GetInstance().deviceType = "phone"; 15557c804472Sopenharmony_ci std::string msg3 = R"({"Language":"aa_BB"})"; 15567c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg3); 15577c804472Sopenharmony_ci LanguageCommand command3(type, args3, *socket); 15587c804472Sopenharmony_ci command3.CheckAndRun(); 15597c804472Sopenharmony_ci language = SharedData<std::string>::GetData(SharedDataType::LANGUAGE); 15607c804472Sopenharmony_ci EXPECT_NE(language, "aa_BB"); 15617c804472Sopenharmony_ci } 15627c804472Sopenharmony_ci 15637c804472Sopenharmony_ci TEST_F(CommandLineTest, LanguageCommandSetTest) 15647c804472Sopenharmony_ci { 15657c804472Sopenharmony_ci CommandParser::GetInstance().deviceType = "liteWearable"; 15667c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 15677c804472Sopenharmony_ci std::string msg1 = R"({"Language":"en-US"})"; 15687c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 15697c804472Sopenharmony_ci LanguageCommand command1(type, args1, *socket); 15707c804472Sopenharmony_ci command1.CheckAndRun(); 15717c804472Sopenharmony_ci std::string language = SharedData<std::string>::GetData(SharedDataType::LANGUAGE); 15727c804472Sopenharmony_ci EXPECT_EQ(language, "en-US"); 15737c804472Sopenharmony_ci 15747c804472Sopenharmony_ci CommandParser::GetInstance().deviceType = "phone"; 15757c804472Sopenharmony_ci std::string msg2 = R"({"Language":"en_US"})"; 15767c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 15777c804472Sopenharmony_ci LanguageCommand command2(type, args2, *socket); 15787c804472Sopenharmony_ci command2.CheckAndRun(); 15797c804472Sopenharmony_ci language = SharedData<std::string>::GetData(SharedDataType::LANGUAGE); 15807c804472Sopenharmony_ci EXPECT_EQ(language, "en_US"); 15817c804472Sopenharmony_ci } 15827c804472Sopenharmony_ci 15837c804472Sopenharmony_ci TEST_F(CommandLineTest, LanguageCommandGetTest) 15847c804472Sopenharmony_ci { 15857c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 15867c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 15877c804472Sopenharmony_ci LanguageCommand command2(type, args2, *socket); 15887c804472Sopenharmony_ci g_output = false; 15897c804472Sopenharmony_ci command2.CheckAndRun(); 15907c804472Sopenharmony_ci EXPECT_TRUE(g_output); 15917c804472Sopenharmony_ci } 15927c804472Sopenharmony_ci 15937c804472Sopenharmony_ci TEST_F(CommandLineTest, SupportedLanguagesCommandTest) 15947c804472Sopenharmony_ci { 15957c804472Sopenharmony_ci CommandParser::GetInstance().deviceType = "liteWearable"; 15967c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 15977c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 15987c804472Sopenharmony_ci SupportedLanguagesCommand command1(type, args1, *socket); 15997c804472Sopenharmony_ci g_output = false; 16007c804472Sopenharmony_ci command1.CheckAndRun(); 16017c804472Sopenharmony_ci EXPECT_TRUE(g_output); 16027c804472Sopenharmony_ci 16037c804472Sopenharmony_ci CommandParser::GetInstance().deviceType = "phone"; 16047c804472Sopenharmony_ci SupportedLanguagesCommand command2(type, args1, *socket); 16057c804472Sopenharmony_ci command2.CheckAndRun(); 16067c804472Sopenharmony_ci g_output = false; 16077c804472Sopenharmony_ci command2.CheckAndRun(); 16087c804472Sopenharmony_ci EXPECT_TRUE(g_output); 16097c804472Sopenharmony_ci } 16107c804472Sopenharmony_ci 16117c804472Sopenharmony_ci TEST_F(CommandLineTest, ExitCommandTest) 16127c804472Sopenharmony_ci { 16137c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::ACTION; 16147c804472Sopenharmony_ci Interrupter::isInterrupt = false; 16157c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 16167c804472Sopenharmony_ci ExitCommand command1(type, args1, *socket); 16177c804472Sopenharmony_ci g_output = false; 16187c804472Sopenharmony_ci command1.CheckAndRun(); 16197c804472Sopenharmony_ci EXPECT_TRUE(Interrupter::isInterrupt); 16207c804472Sopenharmony_ci EXPECT_TRUE(g_output); 16217c804472Sopenharmony_ci } 16227c804472Sopenharmony_ci 16237c804472Sopenharmony_ci TEST_F(CommandLineTest, RestartCommandTest) 16247c804472Sopenharmony_ci { 16257c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 16267c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 16277c804472Sopenharmony_ci RestartCommand command2(type, args2, *socket); 16287c804472Sopenharmony_ci command2.RunAction(); 16297c804472Sopenharmony_ci } 16307c804472Sopenharmony_ci 16317c804472Sopenharmony_ci TEST_F(CommandLineTest, ResolutionCommandTest) 16327c804472Sopenharmony_ci { 16337c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 16347c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 16357c804472Sopenharmony_ci ResolutionCommand command1(type, args1, *socket); 16367c804472Sopenharmony_ci g_output = false; 16377c804472Sopenharmony_ci command1.CheckAndRun(); 16387c804472Sopenharmony_ci EXPECT_TRUE(g_output); 16397c804472Sopenharmony_ci } 16407c804472Sopenharmony_ci 16417c804472Sopenharmony_ci TEST_F(CommandLineTest, DeviceTypeCommandTest) 16427c804472Sopenharmony_ci { 16437c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 16447c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateNull(); 16457c804472Sopenharmony_ci DeviceTypeCommand command1(type, args1, *socket); 16467c804472Sopenharmony_ci g_output = false; 16477c804472Sopenharmony_ci command1.CheckAndRun(); 16487c804472Sopenharmony_ci EXPECT_TRUE(g_output); 16497c804472Sopenharmony_ci } 16507c804472Sopenharmony_ci 16517c804472Sopenharmony_ci TEST_F(CommandLineTest, AvoidAreaCommandTest) 16527c804472Sopenharmony_ci { 16537c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 16547c804472Sopenharmony_ci std::string msg1 = R"({"topRect":{"posX":0,"posY":0,"width":2340,"height":117},"bottomRect": 16557c804472Sopenharmony_ci {"bottomRect":0,"posY":0,"width":0,"height":0},"leftRect":{"posX":0,"posY":0,"width":0,"height":0}})"; 16567c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 16577c804472Sopenharmony_ci AvoidAreaCommand command1(type, args1, *socket); 16587c804472Sopenharmony_ci g_output = false; 16597c804472Sopenharmony_ci command1.CheckAndRun(); 16607c804472Sopenharmony_ci command1.RunSet(); 16617c804472Sopenharmony_ci EXPECT_TRUE(g_output); 16627c804472Sopenharmony_ci std::string msg2 = R"({"topRect":{"posX":0,"posY":0,"width":2340,"height":117},"bottomRect":{"bottomRect": 16637c804472Sopenharmony_ci 0,"posY":0,"width":0,"height":0},"leftRect":{"posX":0,"posY":0,"width":0,"height":0},"rightRect":0})"; 16647c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 16657c804472Sopenharmony_ci AvoidAreaCommand command2(type, args2, *socket); 16667c804472Sopenharmony_ci g_output = false; 16677c804472Sopenharmony_ci command2.CheckAndRun(); 16687c804472Sopenharmony_ci EXPECT_TRUE(g_output); 16697c804472Sopenharmony_ci std::string msg3 = R"({"topRect":{"posX":0,"posY":0,"width":2340,"height":117},"bottomRect": 16707c804472Sopenharmony_ci {"bottomRect":0,"posY":0,"width":0,"height":0},"leftRect":{"posX":0,"posY":0,"width":0,"height":0}, 16717c804472Sopenharmony_ci "rightRect":{"posX":0,"posY":0,"width":0}})"; 16727c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg3); 16737c804472Sopenharmony_ci AvoidAreaCommand command3(type, args3, *socket); 16747c804472Sopenharmony_ci g_output = false; 16757c804472Sopenharmony_ci command3.CheckAndRun(); 16767c804472Sopenharmony_ci EXPECT_TRUE(g_output); 16777c804472Sopenharmony_ci std::string msg4 = R"({"topRect":{"posX":0,"posY":0,"width":2340,"height":117},"bottomRect": 16787c804472Sopenharmony_ci {"bottomRect":0,"posY":0,"width":0,"height":0},"leftRect":{"posX":0,"posY":0,"width":0,"height":0}, 16797c804472Sopenharmony_ci "rightRect":{"posX":0,"posY":0,"width":0,"height":"350"}})"; 16807c804472Sopenharmony_ci Json2::Value args4 = JsonReader::ParseJsonData2(msg4); 16817c804472Sopenharmony_ci AvoidAreaCommand command4(type, args4, *socket); 16827c804472Sopenharmony_ci g_output = false; 16837c804472Sopenharmony_ci command4.CheckAndRun(); 16847c804472Sopenharmony_ci EXPECT_TRUE(g_output); 16857c804472Sopenharmony_ci std::string msg5 = R"({"topRect":{"posX":0,"posY":0,"width":2340,"height":117},"bottomRect":{"bottomRect": 16867c804472Sopenharmony_ci 0,"posY":0,"width":0,"height":0},"leftRect":{"posX":0,"posY":0,"width":0,"height":0}, 16877c804472Sopenharmony_ci "rightRect":{"posX":0,"posY":0,"width":-1,"height":-1}})"; 16887c804472Sopenharmony_ci Json2::Value args5 = JsonReader::ParseJsonData2(msg5); 16897c804472Sopenharmony_ci AvoidAreaCommand command5(type, args5, *socket); 16907c804472Sopenharmony_ci g_output = false; 16917c804472Sopenharmony_ci command5.CheckAndRun(); 16927c804472Sopenharmony_ci EXPECT_TRUE(g_output); 16937c804472Sopenharmony_ci std::string msg6 = R"({"topRect":{"posX":0,"posY":0,"width":2340,"height":117},"bottomRect":{"bottomRect": 16947c804472Sopenharmony_ci 0,"posY":0,"width":0,"height":0},"leftRect":{"posX":0,"posY":0,"width":0,"height":0}, 16957c804472Sopenharmony_ci "rightRect":{"posX":0,"posY":0,"width":2340,"height":84}})"; 16967c804472Sopenharmony_ci Json2::Value args6 = JsonReader::ParseJsonData2(msg6); 16977c804472Sopenharmony_ci AvoidAreaCommand command6(type, args6, *socket); 16987c804472Sopenharmony_ci g_output = false; 16997c804472Sopenharmony_ci command6.CheckAndRun(); 17007c804472Sopenharmony_ci EXPECT_TRUE(g_output); 17017c804472Sopenharmony_ci } 17027c804472Sopenharmony_ci 17037c804472Sopenharmony_ci TEST_F(CommandLineTest, AvoidAreaCommandArgsRangeTest) 17047c804472Sopenharmony_ci { 17057c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 17067c804472Sopenharmony_ci std::string msg1 = R"({"topRect" : {"posX" :0, "posY" : 0, "width" : 2340, "height" : 117}, 17077c804472Sopenharmony_ci "bottomRect" : {"posX" : 0, "posY" : 0, "width" : 0, "height" : 0}, "leftRect" : {"posX" : 0, 17087c804472Sopenharmony_ci "posY" : 0, "width" : 0, "height" : 0}, "rightRect" : {"posX" : 0, "posY" : 0, "width" : 2340, 17097c804472Sopenharmony_ci "height" : "84"}})"; 17107c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 17117c804472Sopenharmony_ci AvoidAreaCommand command1(type, args1, *socket); 17127c804472Sopenharmony_ci g_output = false; 17137c804472Sopenharmony_ci command1.CheckAndRun(); 17147c804472Sopenharmony_ci EXPECT_TRUE(g_output); 17157c804472Sopenharmony_ci 17167c804472Sopenharmony_ci std::string msg2 = R"({"topRect" : {"posX" :0, "posY" : 0, "width" : 2340, "height" : 117}, 17177c804472Sopenharmony_ci "bottomRect" : {"posX" : 0, "posY" : 0, "width" : 0, "height" : 0}, "leftRect" : {"posX" : 0, 17187c804472Sopenharmony_ci "posY" : 0, "width" : 0, "height" : 0}, "rightRect" : {"posX" : 0, "posY" : -2, "width" : 2340, 17197c804472Sopenharmony_ci "height" : 84}})"; 17207c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 17217c804472Sopenharmony_ci AvoidAreaCommand command2(type, args2, *socket); 17227c804472Sopenharmony_ci g_output = false; 17237c804472Sopenharmony_ci command2.CheckAndRun(); 17247c804472Sopenharmony_ci EXPECT_TRUE(g_output); 17257c804472Sopenharmony_ci 17267c804472Sopenharmony_ci 17277c804472Sopenharmony_ci std::string msg3 = R"({"topRect" : {"posX" :0, "posY" : 0, "width" : 2340, "height" : 117}, 17287c804472Sopenharmony_ci "bottomRect" : {"posX" : 0, "posY" : 0, "width" : 0, "height" : 0}, "leftRect" : {"posX" : 0, 17297c804472Sopenharmony_ci "posY" : 0, "width" : 0, "height" : 0}, "rightRect" : {"posX" : 0, "posY" : 0, "width" : 2340, 17307c804472Sopenharmony_ci "height" : 84}})"; 17317c804472Sopenharmony_ci Json2::Value args3 = JsonReader::ParseJsonData2(msg3); 17327c804472Sopenharmony_ci AvoidAreaCommand command3(type, args3, *socket); 17337c804472Sopenharmony_ci g_output = false; 17347c804472Sopenharmony_ci command3.CheckAndRun(); 17357c804472Sopenharmony_ci EXPECT_TRUE(g_output); 17367c804472Sopenharmony_ci } 17377c804472Sopenharmony_ci 17387c804472Sopenharmony_ci TEST_F(CommandLineTest, AvoidAreaChangedCommandTest) 17397c804472Sopenharmony_ci { 17407c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 17417c804472Sopenharmony_ci Json2::Value args2 = JsonReader::CreateNull(); 17427c804472Sopenharmony_ci AvoidAreaChangedCommand command2(type, args2, *socket); 17437c804472Sopenharmony_ci g_output = false; 17447c804472Sopenharmony_ci command2.CheckAndRun(); 17457c804472Sopenharmony_ci EXPECT_TRUE(g_output); 17467c804472Sopenharmony_ci } 17477c804472Sopenharmony_ci 17487c804472Sopenharmony_ci TEST_F(CommandLineTest, IsArgValidTest_Err) 17497c804472Sopenharmony_ci { 17507c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::GET; 17517c804472Sopenharmony_ci Json2::Value args1 = JsonReader::CreateObject(); 17527c804472Sopenharmony_ci CurrentRouterCommand command2(type, args1, *socket); 17537c804472Sopenharmony_ci command2.type = CommandLine::CommandType::INVALID; 17547c804472Sopenharmony_ci EXPECT_TRUE(command2.IsArgValid()); 17557c804472Sopenharmony_ci } 17567c804472Sopenharmony_ci 17577c804472Sopenharmony_ci TEST_F(CommandLineTest, ColorModeCommandArgsCorrectTest) 17587c804472Sopenharmony_ci { 17597c804472Sopenharmony_ci JsAppImpl::GetInstance().colorMode = "light"; 17607c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 17617c804472Sopenharmony_ci std::string msg = R"({"ColorMode" : "dark"})"; 17627c804472Sopenharmony_ci Json2::Value args = JsonReader::ParseJsonData2(msg); 17637c804472Sopenharmony_ci ColorModeCommand command(type, args, *socket); 17647c804472Sopenharmony_ci command.CheckAndRun(); 17657c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().colorMode, "dark"); 17667c804472Sopenharmony_ci } 17677c804472Sopenharmony_ci 17687c804472Sopenharmony_ci TEST_F(CommandLineTest, ColorModeCommandArgsTypeTest) 17697c804472Sopenharmony_ci { 17707c804472Sopenharmony_ci JsAppImpl::GetInstance().colorMode = "light"; 17717c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 17727c804472Sopenharmony_ci Json2::Value args = JsonReader::CreateNull(); 17737c804472Sopenharmony_ci ColorModeCommand command(type, args, *socket); 17747c804472Sopenharmony_ci command.CheckAndRun(); 17757c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().colorMode, "light"); 17767c804472Sopenharmony_ci 17777c804472Sopenharmony_ci JsAppImpl::GetInstance().colorMode = "light"; 17787c804472Sopenharmony_ci std::string msg1 = R"({"aaa" : "dark"})"; 17797c804472Sopenharmony_ci Json2::Value args1 = JsonReader::ParseJsonData2(msg1); 17807c804472Sopenharmony_ci ColorModeCommand command1(type, args1, *socket); 17817c804472Sopenharmony_ci command1.CheckAndRun(); 17827c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().colorMode, "light"); 17837c804472Sopenharmony_ci 17847c804472Sopenharmony_ci JsAppImpl::GetInstance().colorMode = "light"; 17857c804472Sopenharmony_ci std::string msg2 = R"({"ColorMode" : 123})"; 17867c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 17877c804472Sopenharmony_ci ColorModeCommand command2(type, args2, *socket); 17887c804472Sopenharmony_ci command2.CheckAndRun(); 17897c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().colorMode, "light"); 17907c804472Sopenharmony_ci } 17917c804472Sopenharmony_ci 17927c804472Sopenharmony_ci TEST_F(CommandLineTest, ColorModeCommandArgsRangeTest) 17937c804472Sopenharmony_ci { 17947c804472Sopenharmony_ci CommandLine::CommandType type = CommandLine::CommandType::SET; 17957c804472Sopenharmony_ci JsAppImpl::GetInstance().colorMode = "light"; 17967c804472Sopenharmony_ci std::string msg2 = R"({"ColorMode" : "aaa"})"; 17977c804472Sopenharmony_ci Json2::Value args2 = JsonReader::ParseJsonData2(msg2); 17987c804472Sopenharmony_ci ColorModeCommand command2(type, args2, *socket); 17997c804472Sopenharmony_ci command2.CheckAndRun(); 18007c804472Sopenharmony_ci EXPECT_EQ(JsAppImpl::GetInstance().colorMode, "light"); 18017c804472Sopenharmony_ci } 18027c804472Sopenharmony_ci} 1803