1e509ee18Sopenharmony_ci/* 2e509ee18Sopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd. 3e509ee18Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4e509ee18Sopenharmony_ci * you may not use this file except in compliance with the License. 5e509ee18Sopenharmony_ci * You may obtain a copy of the License at 6e509ee18Sopenharmony_ci * 7e509ee18Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8e509ee18Sopenharmony_ci * 9e509ee18Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10e509ee18Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11e509ee18Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12e509ee18Sopenharmony_ci * See the License for the specific language governing permissions and 13e509ee18Sopenharmony_ci * limitations under the License. 14e509ee18Sopenharmony_ci */ 15e509ee18Sopenharmony_ci 16e509ee18Sopenharmony_ci#ifndef ECMASCRIPT_TOOLING_TEST_TESTCASES_JS_MODULE_VARIABLE_TEST_H 17e509ee18Sopenharmony_ci#define ECMASCRIPT_TOOLING_TEST_TESTCASES_JS_MODULE_VARIABLE_TEST_H 18e509ee18Sopenharmony_ci 19e509ee18Sopenharmony_ci#include "tooling/test/client_utils/test_util.h" 20e509ee18Sopenharmony_ci 21e509ee18Sopenharmony_cinamespace panda::ecmascript::tooling::test { 22e509ee18Sopenharmony_ciclass JsModuleVariableTest : public TestActions { 23e509ee18Sopenharmony_cipublic: 24e509ee18Sopenharmony_ci JsModuleVariableTest() 25e509ee18Sopenharmony_ci { 26e509ee18Sopenharmony_ci testAction = { 27e509ee18Sopenharmony_ci {SocketAction::SEND, "enable"}, 28e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, MatchRule::replySuccess}, 29e509ee18Sopenharmony_ci {SocketAction::SEND, "runtime-enable"}, 30e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, MatchRule::replySuccess}, 31e509ee18Sopenharmony_ci {SocketAction::SEND, "run"}, 32e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, MatchRule::replySuccess}, 33e509ee18Sopenharmony_ci // load export_variable_second.js 34e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.scriptParsed", ActionRule::STRING_CONTAIN}, 35e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.paused", ActionRule::STRING_CONTAIN}, 36e509ee18Sopenharmony_ci {SocketAction::SEND, "resume"}, 37e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.resumed", ActionRule::STRING_CONTAIN}, 38e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, MatchRule::replySuccess}, 39e509ee18Sopenharmony_ci // load export_variable_first.js 40e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.scriptParsed", ActionRule::STRING_CONTAIN}, 41e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.paused", ActionRule::STRING_CONTAIN}, 42e509ee18Sopenharmony_ci {SocketAction::SEND, "resume"}, 43e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.resumed", ActionRule::STRING_CONTAIN}, 44e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, MatchRule::replySuccess}, 45e509ee18Sopenharmony_ci // load module_variable.js 46e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.scriptParsed", ActionRule::STRING_CONTAIN}, 47e509ee18Sopenharmony_ci // break on start 48e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.paused", ActionRule::STRING_CONTAIN}, 49e509ee18Sopenharmony_ci // set breakpoint 50e509ee18Sopenharmony_ci {SocketAction::SEND, "b " DEBUGGER_JS_DIR"module_variable.js 247"}, 51e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, MatchRule::replySuccess}, 52e509ee18Sopenharmony_ci 53e509ee18Sopenharmony_ci {SocketAction::SEND, "resume"}, 54e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.resumed", ActionRule::STRING_CONTAIN}, 55e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, MatchRule::replySuccess}, 56e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.paused", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 57e509ee18Sopenharmony_ci std::unique_ptr<PtJson> json = PtJson::Parse(recv); 58e509ee18Sopenharmony_ci Result ret; 59e509ee18Sopenharmony_ci std::string method; 60e509ee18Sopenharmony_ci ret = json->GetString("method", &method); 61e509ee18Sopenharmony_ci if (ret != Result::SUCCESS || method != "Debugger.paused") { 62e509ee18Sopenharmony_ci return false; 63e509ee18Sopenharmony_ci } 64e509ee18Sopenharmony_ci 65e509ee18Sopenharmony_ci std::unique_ptr<PtJson> params = nullptr; 66e509ee18Sopenharmony_ci ret = json->GetObject("params", ¶ms); 67e509ee18Sopenharmony_ci if (ret != Result::SUCCESS) { 68e509ee18Sopenharmony_ci return false; 69e509ee18Sopenharmony_ci } 70e509ee18Sopenharmony_ci 71e509ee18Sopenharmony_ci std::unique_ptr<PtJson> hitBreakpoints = nullptr; 72e509ee18Sopenharmony_ci ret = params->GetArray("hitBreakpoints", &hitBreakpoints); 73e509ee18Sopenharmony_ci if (ret != Result::SUCCESS) { 74e509ee18Sopenharmony_ci return false; 75e509ee18Sopenharmony_ci } 76e509ee18Sopenharmony_ci 77e509ee18Sopenharmony_ci std::string breakpoint; 78e509ee18Sopenharmony_ci breakpoint = hitBreakpoints->Get(0)->GetString(); 79e509ee18Sopenharmony_ci if (ret != Result::SUCCESS || breakpoint.find(sourceFile_) == std::string::npos || 80e509ee18Sopenharmony_ci breakpoint.find("246") == std::string::npos) { 81e509ee18Sopenharmony_ci return false; 82e509ee18Sopenharmony_ci } 83e509ee18Sopenharmony_ci 84e509ee18Sopenharmony_ci DebuggerClient debuggerClient(0); 85e509ee18Sopenharmony_ci debuggerClient.PausedReply(std::move(json)); 86e509ee18Sopenharmony_ci return true; 87e509ee18Sopenharmony_ci }}, 88e509ee18Sopenharmony_ci 89e509ee18Sopenharmony_ci {SocketAction::SEND, "p"}, 90e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [] (auto recv, auto, auto) -> bool { 91e509ee18Sopenharmony_ci std::unique_ptr<PtJson> json = PtJson::Parse(recv); 92e509ee18Sopenharmony_ci std::unique_ptr<PtJson> result; 93e509ee18Sopenharmony_ci 94e509ee18Sopenharmony_ci int id; 95e509ee18Sopenharmony_ci Result ret = json->GetInt("id", &id); 96e509ee18Sopenharmony_ci if (ret != Result::SUCCESS) { 97e509ee18Sopenharmony_ci return false; 98e509ee18Sopenharmony_ci } 99e509ee18Sopenharmony_ci 100e509ee18Sopenharmony_ci ret = json->GetObject("result", &result); 101e509ee18Sopenharmony_ci if (ret != Result::SUCCESS) { 102e509ee18Sopenharmony_ci return false; 103e509ee18Sopenharmony_ci } 104e509ee18Sopenharmony_ci 105e509ee18Sopenharmony_ci std::unique_ptr<PtJson> innerResult; 106e509ee18Sopenharmony_ci ret = result->GetArray("result", &innerResult); 107e509ee18Sopenharmony_ci if (ret != Result::SUCCESS) { 108e509ee18Sopenharmony_ci return false; 109e509ee18Sopenharmony_ci } 110e509ee18Sopenharmony_ci 111e509ee18Sopenharmony_ci RuntimeClient runtimeClient(0); 112e509ee18Sopenharmony_ci runtimeClient.HandleGetProperties(std::move(json), id); 113e509ee18Sopenharmony_ci return true; 114e509ee18Sopenharmony_ci }}, 115e509ee18Sopenharmony_ci 116e509ee18Sopenharmony_ci {SocketAction::SEND, "p 3"}, 117e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 118e509ee18Sopenharmony_ci std::unique_ptr<PtJson> json = PtJson::Parse(recv); 119e509ee18Sopenharmony_ci std::unique_ptr<PtJson> result; 120e509ee18Sopenharmony_ci 121e509ee18Sopenharmony_ci int id; 122e509ee18Sopenharmony_ci Result ret = json->GetInt("id", &id); 123e509ee18Sopenharmony_ci if (ret != Result::SUCCESS) { 124e509ee18Sopenharmony_ci return false; 125e509ee18Sopenharmony_ci } 126e509ee18Sopenharmony_ci 127e509ee18Sopenharmony_ci ret = json->GetObject("result", &result); 128e509ee18Sopenharmony_ci if (ret != Result::SUCCESS) { 129e509ee18Sopenharmony_ci return false; 130e509ee18Sopenharmony_ci } 131e509ee18Sopenharmony_ci 132e509ee18Sopenharmony_ci std::unique_ptr<PtJson> innerResult; 133e509ee18Sopenharmony_ci ret = result->GetArray("result", &innerResult); 134e509ee18Sopenharmony_ci if (ret != Result::SUCCESS) { 135e509ee18Sopenharmony_ci return false; 136e509ee18Sopenharmony_ci } 137e509ee18Sopenharmony_ci 138e509ee18Sopenharmony_ci std::vector<std::unique_ptr<PropertyDescriptor>> outPropertyDesc; 139e509ee18Sopenharmony_ci for (int32_t i = 0; i < innerResult->GetSize(); i++) { 140e509ee18Sopenharmony_ci auto variableInfo = PropertyDescriptor::Create(*(innerResult->Get(i))); 141e509ee18Sopenharmony_ci outPropertyDesc.emplace_back(std::move(variableInfo)); 142e509ee18Sopenharmony_ci } 143e509ee18Sopenharmony_ci 144e509ee18Sopenharmony_ci std::map<std::string, std::vector<std::string>> actualProperties; 145e509ee18Sopenharmony_ci for (const auto &property : outPropertyDesc) { 146e509ee18Sopenharmony_ci std::vector<std::string> attributes; 147e509ee18Sopenharmony_ci RemoteObject *value = property->GetValue(); 148e509ee18Sopenharmony_ci std::cout << " ============================== " << std::endl; 149e509ee18Sopenharmony_ci std::cout << "variableName: " << property->GetName() << std::endl; 150e509ee18Sopenharmony_ci PushValueInfo(value, attributes); 151e509ee18Sopenharmony_ci actualProperties[property->GetName()] = attributes; 152e509ee18Sopenharmony_ci } 153e509ee18Sopenharmony_ci 154e509ee18Sopenharmony_ci // compare size 155e509ee18Sopenharmony_ci if (actualProperties.size() != moduleVariableMap_.size()) { 156e509ee18Sopenharmony_ci std::cout << "actualProperties.size() != moduleVariableMap_.size()" << std::endl; 157e509ee18Sopenharmony_ci std::cout << "actualProperties.size() is: " << actualProperties.size() << std::endl; 158e509ee18Sopenharmony_ci std::cout << "moduleVariableMap_.size() is: " << moduleVariableMap_.size() << std::endl; 159e509ee18Sopenharmony_ci return false; 160e509ee18Sopenharmony_ci } 161e509ee18Sopenharmony_ci 162e509ee18Sopenharmony_ci // compare the properties of each variable 163e509ee18Sopenharmony_ci for (const auto &actualProperty : actualProperties) { 164e509ee18Sopenharmony_ci const std::string &variableName = actualProperty.first; 165e509ee18Sopenharmony_ci const std::vector<std::string> &actualAttributes = actualProperty.second; 166e509ee18Sopenharmony_ci 167e509ee18Sopenharmony_ci if (moduleVariableMap_.find(variableName) != moduleVariableMap_.end()) { 168e509ee18Sopenharmony_ci const std::vector<std::string> &expectedAttributes = moduleVariableMap_.at(variableName); 169e509ee18Sopenharmony_ci if (actualAttributes == expectedAttributes) { 170e509ee18Sopenharmony_ci continue; 171e509ee18Sopenharmony_ci } else { 172e509ee18Sopenharmony_ci std::cout << "Property mismatch: " << variableName << std::endl; 173e509ee18Sopenharmony_ci return false; 174e509ee18Sopenharmony_ci } 175e509ee18Sopenharmony_ci } else { 176e509ee18Sopenharmony_ci std::cout << "variable name not found: " << variableName << std::endl; 177e509ee18Sopenharmony_ci return false; 178e509ee18Sopenharmony_ci } 179e509ee18Sopenharmony_ci } 180e509ee18Sopenharmony_ci 181e509ee18Sopenharmony_ci RuntimeClient runtimeClient(0); 182e509ee18Sopenharmony_ci runtimeClient.HandleGetProperties(std::move(json), id); 183e509ee18Sopenharmony_ci return true; 184e509ee18Sopenharmony_ci }}, 185e509ee18Sopenharmony_ci 186e509ee18Sopenharmony_ci {SocketAction::SEND, "p 5"}, 187e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 188e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 189e509ee18Sopenharmony_ci }}, 190e509ee18Sopenharmony_ci 191e509ee18Sopenharmony_ci {SocketAction::SEND, "p 6"}, 192e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 193e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 194e509ee18Sopenharmony_ci }}, 195e509ee18Sopenharmony_ci 196e509ee18Sopenharmony_ci {SocketAction::SEND, "p 7"}, 197e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 198e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 199e509ee18Sopenharmony_ci }}, 200e509ee18Sopenharmony_ci 201e509ee18Sopenharmony_ci {SocketAction::SEND, "p 10"}, 202e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 203e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 204e509ee18Sopenharmony_ci }}, 205e509ee18Sopenharmony_ci 206e509ee18Sopenharmony_ci {SocketAction::SEND, "p 13"}, 207e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 208e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 209e509ee18Sopenharmony_ci }}, 210e509ee18Sopenharmony_ci 211e509ee18Sopenharmony_ci {SocketAction::SEND, "p 16"}, 212e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 213e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 214e509ee18Sopenharmony_ci }}, 215e509ee18Sopenharmony_ci 216e509ee18Sopenharmony_ci {SocketAction::SEND, "p 17"}, 217e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 218e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 219e509ee18Sopenharmony_ci }}, 220e509ee18Sopenharmony_ci 221e509ee18Sopenharmony_ci {SocketAction::SEND, "p 20"}, 222e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 223e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 224e509ee18Sopenharmony_ci }}, 225e509ee18Sopenharmony_ci 226e509ee18Sopenharmony_ci {SocketAction::SEND, "p 23"}, 227e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 228e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 229e509ee18Sopenharmony_ci }}, 230e509ee18Sopenharmony_ci 231e509ee18Sopenharmony_ci {SocketAction::SEND, "p 26"}, 232e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 233e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 234e509ee18Sopenharmony_ci }}, 235e509ee18Sopenharmony_ci 236e509ee18Sopenharmony_ci {SocketAction::SEND, "p 29"}, 237e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 238e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 239e509ee18Sopenharmony_ci }}, 240e509ee18Sopenharmony_ci 241e509ee18Sopenharmony_ci {SocketAction::SEND, "p 32"}, 242e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 243e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 244e509ee18Sopenharmony_ci }}, 245e509ee18Sopenharmony_ci 246e509ee18Sopenharmony_ci {SocketAction::SEND, "p 35"}, 247e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 248e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 249e509ee18Sopenharmony_ci }}, 250e509ee18Sopenharmony_ci 251e509ee18Sopenharmony_ci {SocketAction::SEND, "p 38"}, 252e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 253e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 254e509ee18Sopenharmony_ci }}, 255e509ee18Sopenharmony_ci 256e509ee18Sopenharmony_ci {SocketAction::SEND, "p 44"}, 257e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 258e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 259e509ee18Sopenharmony_ci }}, 260e509ee18Sopenharmony_ci 261e509ee18Sopenharmony_ci {SocketAction::SEND, "p 50"}, 262e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 263e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 264e509ee18Sopenharmony_ci }}, 265e509ee18Sopenharmony_ci 266e509ee18Sopenharmony_ci {SocketAction::SEND, "p 91"}, 267e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, [this] (auto recv, auto, auto) -> bool { 268e509ee18Sopenharmony_ci return CompareExpected(recv, innerDes[expectDesIndex]); 269e509ee18Sopenharmony_ci }}, 270e509ee18Sopenharmony_ci 271e509ee18Sopenharmony_ci // reply success and run 272e509ee18Sopenharmony_ci {SocketAction::SEND, "success"}, 273e509ee18Sopenharmony_ci {SocketAction::SEND, "resume"}, 274e509ee18Sopenharmony_ci {SocketAction::RECV, "Debugger.resumed", ActionRule::STRING_CONTAIN}, 275e509ee18Sopenharmony_ci {SocketAction::RECV, "", ActionRule::CUSTOM_RULE, MatchRule::replySuccess}, 276e509ee18Sopenharmony_ci }; 277e509ee18Sopenharmony_ci } 278e509ee18Sopenharmony_ci 279e509ee18Sopenharmony_ci std::pair<std::string, std::string> GetEntryPoint() override 280e509ee18Sopenharmony_ci { 281e509ee18Sopenharmony_ci return {pandaFile_, entryPoint_}; 282e509ee18Sopenharmony_ci } 283e509ee18Sopenharmony_ci ~JsModuleVariableTest() = default; 284e509ee18Sopenharmony_ci 285e509ee18Sopenharmony_ciprivate: 286e509ee18Sopenharmony_ci std::string pandaFile_ = DEBUGGER_ABC_DIR "module_variable.abc"; 287e509ee18Sopenharmony_ci std::string sourceFile_ = DEBUGGER_JS_DIR "module_variable.js"; 288e509ee18Sopenharmony_ci std::string entryPoint_ = "module_variable"; 289e509ee18Sopenharmony_ci size_t expectDesIndex = 0; 290e509ee18Sopenharmony_ci 291e509ee18Sopenharmony_ci void PushValueInfo(RemoteObject *value, std::vector<std::string> &infos) 292e509ee18Sopenharmony_ci { 293e509ee18Sopenharmony_ci std::cout << "type: " << value->GetType() << std::endl; 294e509ee18Sopenharmony_ci infos.push_back(value->GetType()); 295e509ee18Sopenharmony_ci if (value->HasSubType()) { 296e509ee18Sopenharmony_ci std::cout << "sub type: " << value->GetSubType() << std::endl; 297e509ee18Sopenharmony_ci infos.push_back(value->GetSubType()); 298e509ee18Sopenharmony_ci } 299e509ee18Sopenharmony_ci if (value->HasClassName()) { 300e509ee18Sopenharmony_ci std::cout << "class name: " << value->GetClassName() << std::endl; 301e509ee18Sopenharmony_ci infos.push_back(value->GetClassName()); 302e509ee18Sopenharmony_ci } 303e509ee18Sopenharmony_ci if (value->HasUnserializableValue()) { 304e509ee18Sopenharmony_ci std::cout << "unserializableValue: " << value->GetUnserializableValue() << std::endl; 305e509ee18Sopenharmony_ci infos.push_back(value->GetUnserializableValue()); 306e509ee18Sopenharmony_ci } 307e509ee18Sopenharmony_ci if (value->HasDescription()) { 308e509ee18Sopenharmony_ci std::cout << "desc: " << value->GetDescription() << std::endl; 309e509ee18Sopenharmony_ci infos.push_back(value->GetDescription()); 310e509ee18Sopenharmony_ci } 311e509ee18Sopenharmony_ci } 312e509ee18Sopenharmony_ci 313e509ee18Sopenharmony_ci bool CompareExpected(std::string recv, const std::string &expect) 314e509ee18Sopenharmony_ci { 315e509ee18Sopenharmony_ci expectDesIndex++; 316e509ee18Sopenharmony_ci return recv == expect; 317e509ee18Sopenharmony_ci } 318e509ee18Sopenharmony_ci 319e509ee18Sopenharmony_ci const std::map<std::string, std::vector<std::string>> moduleVariableMap_ = { 320e509ee18Sopenharmony_ci { "string0", { "string", "helloworld", "helloworld" } }, 321e509ee18Sopenharmony_ci { "boolean0", { "object", "Object", "Boolean{[[PrimitiveValue]]: false}", 322e509ee18Sopenharmony_ci "Boolean{[[PrimitiveValue]]: false}"} }, 323e509ee18Sopenharmony_ci { "number0", { "number", "1", "1" } }, 324e509ee18Sopenharmony_ci { "obj0", { "object", "Object", "Object", "Object"} }, 325e509ee18Sopenharmony_ci { "arraybuffer0", { "object", "arraybuffer", "Arraybuffer", "Arraybuffer(24)", "Arraybuffer(24)"} }, 326e509ee18Sopenharmony_ci { "function0", { "function", "Function", "function function0( { [js code] }", 327e509ee18Sopenharmony_ci "function function0( { [js code] }" } }, 328e509ee18Sopenharmony_ci { "generator0", { "function", "Generator", "function* generator0( { [js code] }", 329e509ee18Sopenharmony_ci "function* generator0( { [js code] }" } }, 330e509ee18Sopenharmony_ci { "map0", { "object", "map", "Map", "Map(0)", "Map(0)"} }, 331e509ee18Sopenharmony_ci { "set0", { "object", "set", "Set", "Set(0)", "Set(0)"} }, 332e509ee18Sopenharmony_ci { "undefined0", { "undefined" } }, 333e509ee18Sopenharmony_ci { "array0", { "object", "array", "Array", "Array(2)", "Array(2)"} }, 334e509ee18Sopenharmony_ci { "regexp0", { "object", "regexp", "RegExp", "/^\\d+\\.\\d+$/i", "/^\\d+\\.\\d+$/i"} }, 335e509ee18Sopenharmony_ci { "uint8array0", { "object", "Object", "Uint8Array(24)", "Uint8Array(24)"} }, 336e509ee18Sopenharmony_ci { "dataview0", { "object", "dataview", "Dataview", "DataView(24)", "DataView(24)"} }, 337e509ee18Sopenharmony_ci { "bigint0", { "bigint", "999n", "999n" } }, 338e509ee18Sopenharmony_ci { "typedarray0", { "object", "Object", "Uint8Array(0)", "Uint8Array(0)"} }, 339e509ee18Sopenharmony_ci { "sharedarraybuffer0", { "object", "Object", "SharedArrayBuffer(32)", "SharedArrayBuffer(32)"} }, 340e509ee18Sopenharmony_ci { "weakref0", { "object", "Object", "WeakRef {}", "WeakRef {}"} }, 341e509ee18Sopenharmony_ci { "iterator0", { "function", "Function", "function [Symbol.iterator]( { [native code] }", 342e509ee18Sopenharmony_ci "function [Symbol.iterator]( { [native code] }" } }, 343e509ee18Sopenharmony_ci { "string1", { "string", "helloworld1", "helloworld1" } }, 344e509ee18Sopenharmony_ci { "boolean1", { "object", "Object", "Boolean{[[PrimitiveValue]]: false}", 345e509ee18Sopenharmony_ci "Boolean{[[PrimitiveValue]]: false}"} }, 346e509ee18Sopenharmony_ci { "number1", { "number", "11", "11" } }, 347e509ee18Sopenharmony_ci { "obj1", { "object", "Object", "Object", "Object"} }, 348e509ee18Sopenharmony_ci { "arraybuffer1", { "object", "arraybuffer", "Arraybuffer", "Arraybuffer(24)", "Arraybuffer(24)"} }, 349e509ee18Sopenharmony_ci { "function1", { "function", "Function", "function function1( { [js code] }", 350e509ee18Sopenharmony_ci "function function1( { [js code] }" } }, 351e509ee18Sopenharmony_ci { "generator1", { "function", "Generator", "function* generator1( { [js code] }", 352e509ee18Sopenharmony_ci "function* generator1( { [js code] }" } }, 353e509ee18Sopenharmony_ci { "map1", { "object", "map", "Map", "Map(0)", "Map(0)"} }, 354e509ee18Sopenharmony_ci { "set1", { "object", "set", "Set", "Set(0)", "Set(0)"} }, 355e509ee18Sopenharmony_ci { "undefined1", { "undefined" } }, 356e509ee18Sopenharmony_ci { "regexp1", { "object", "regexp", "RegExp", "/^\\d+\\.\\d+$/i", "/^\\d+\\.\\d+$/i"} }, 357e509ee18Sopenharmony_ci { "uint8array1", { "object", "Object", "Uint8Array(24)", "Uint8Array(24)"} }, 358e509ee18Sopenharmony_ci { "dataview1", { "object", "dataview", "Dataview", "DataView(24)", "DataView(24)"} }, 359e509ee18Sopenharmony_ci { "bigint1", { "bigint", "9999n", "9999n" } }, 360e509ee18Sopenharmony_ci { "typedarray1", { "object", "Object", "Uint8Array(0)", "Uint8Array(0)"} }, 361e509ee18Sopenharmony_ci { "sharedarraybuffer1", { "object", "Object", "SharedArrayBuffer(32)", "SharedArrayBuffer(32)"} }, 362e509ee18Sopenharmony_ci { "weakref1", { "object", "Object", "WeakRef {}", "WeakRef {}"} }, 363e509ee18Sopenharmony_ci { "iterator1", { "function", "Function", "function [Symbol.iterator]( { [native code] }", 364e509ee18Sopenharmony_ci "function [Symbol.iterator]( { [native code] }" } }, 365e509ee18Sopenharmony_ci { "string2", { "string", "helloworld11", "helloworld11" } }, 366e509ee18Sopenharmony_ci { "boolean2", { "object", "Object", "Boolean{[[PrimitiveValue]]: false}", 367e509ee18Sopenharmony_ci "Boolean{[[PrimitiveValue]]: false}"} }, 368e509ee18Sopenharmony_ci { "number2", { "number", "111", "111" } }, 369e509ee18Sopenharmony_ci { "obj2", { "object", "Object", "Object", "Object"} }, 370e509ee18Sopenharmony_ci { "arraybuffer2", { "object", "arraybuffer", "Arraybuffer", "Arraybuffer(24)", "Arraybuffer(24)"} }, 371e509ee18Sopenharmony_ci { "function2", { "function", "Function", "function function2( { [js code] }", 372e509ee18Sopenharmony_ci "function function2( { [js code] }" } }, 373e509ee18Sopenharmony_ci { "generator2", { "function", "Generator", "function* generator2( { [js code] }", 374e509ee18Sopenharmony_ci "function* generator2( { [js code] }" } }, 375e509ee18Sopenharmony_ci { "map2", { "object", "map", "Map", "Map(0)", "Map(0)"} }, 376e509ee18Sopenharmony_ci { "set2", { "object", "set", "Set", "Set(0)", "Set(0)"} }, 377e509ee18Sopenharmony_ci { "undefined2", { "undefined" } }, 378e509ee18Sopenharmony_ci { "regexp2", { "object", "regexp", "RegExp", "/^\\d+\\.\\d+$/i", "/^\\d+\\.\\d+$/i"} }, 379e509ee18Sopenharmony_ci { "uint8array2", { "object", "Object", "Uint8Array(24)", "Uint8Array(24)"} }, 380e509ee18Sopenharmony_ci { "dataview2", { "object", "dataview", "Dataview", "DataView(24)", "DataView(24)"} }, 381e509ee18Sopenharmony_ci { "bigint2", { "bigint", "9999n", "9999n" } }, 382e509ee18Sopenharmony_ci { "typedarray2", { "object", "Object", "Uint8Array(0)", "Uint8Array(0)"} }, 383e509ee18Sopenharmony_ci { "sharedarraybuffer2", { "object", "Object", "SharedArrayBuffer(32)", "SharedArrayBuffer(32)"} }, 384e509ee18Sopenharmony_ci { "weakref2", { "object", "Object", "WeakRef {}", "WeakRef {}"} }, 385e509ee18Sopenharmony_ci { "iterator2", { "function", "Function", "function [Symbol.iterator]( { [native code] }", 386e509ee18Sopenharmony_ci "function [Symbol.iterator]( { [native code] }" } }, 387e509ee18Sopenharmony_ci { "string4", { "string", "helloworld123", "helloworld123" } }, 388e509ee18Sopenharmony_ci { "boolean4", { "object", "Object", "Boolean{[[PrimitiveValue]]: true}", "Boolean{[[PrimitiveValue]]: true}"} }, 389e509ee18Sopenharmony_ci { "number4", { "number", "4", "4" } }, 390e509ee18Sopenharmony_ci { "foo", { "function", "Function", "function foo( { [js code] }", "function foo( { [js code] }"} }, 391e509ee18Sopenharmony_ci { "string6", { "string", "helloworld12345", "helloworld12345" } }, 392e509ee18Sopenharmony_ci { "boolean6", { "object", "Object", "Boolean{[[PrimitiveValue]]: true}", "Boolean{[[PrimitiveValue]]: true}"} }, 393e509ee18Sopenharmony_ci { "number6", { "number", "6", "6" } }, 394e509ee18Sopenharmony_ci { "obj6", { "object", "Object", "Object", "Object"} }, 395e509ee18Sopenharmony_ci { "arraybuffer6", { "object", "arraybuffer", "Arraybuffer", "Arraybuffer(24)", "Arraybuffer(24)"} }, 396e509ee18Sopenharmony_ci { "function6", { "function", "Function", "function function6( { [js code] }", 397e509ee18Sopenharmony_ci "function function6( { [js code] }" } }, 398e509ee18Sopenharmony_ci { "generator6", { "function", "Generator", "function* generator6( { [js code] }", 399e509ee18Sopenharmony_ci "function* generator6( { [js code] }" } }, 400e509ee18Sopenharmony_ci { "map6", { "object", "map", "Map", "Map(0)", "Map(0)"} }, 401e509ee18Sopenharmony_ci { "set6", { "object", "set", "Set", "Set(0)", "Set(0)"} }, 402e509ee18Sopenharmony_ci { "undefined6", { "undefined" } }, 403e509ee18Sopenharmony_ci { "array6", { "object", "array", "Array", "Array(2)", "Array(2)"} }, 404e509ee18Sopenharmony_ci { "regexp6", { "object", "regexp", "RegExp", "/^\\d+\\.\\d+$/i", "/^\\d+\\.\\d+$/i"} }, 405e509ee18Sopenharmony_ci { "uint8array6", { "object", "Object", "Uint8Array(24)", "Uint8Array(24)"} }, 406e509ee18Sopenharmony_ci { "dataview6", { "object", "dataview", "Dataview", "DataView(23)", "DataView(23)"} }, 407e509ee18Sopenharmony_ci { "bigint6", { "bigint", "99999n", "99999n" } }, 408e509ee18Sopenharmony_ci { "string7", { "string", "helloworld12345", "helloworld12345" } }, 409e509ee18Sopenharmony_ci { "boolean7", { "object", "Object", "Boolean{[[PrimitiveValue]]: true}", "Boolean{[[PrimitiveValue]]: true}"} }, 410e509ee18Sopenharmony_ci { "number7", { "number", "6", "6" } }, 411e509ee18Sopenharmony_ci { "obj7", { "object", "Object", "Object", "Object"} }, 412e509ee18Sopenharmony_ci { "arraybuffer7", { "object", "arraybuffer", "Arraybuffer", "Arraybuffer(24)", "Arraybuffer(24)"} }, 413e509ee18Sopenharmony_ci { "function7", { "function", "Function", "function function6( { [js code] }", 414e509ee18Sopenharmony_ci "function function6( { [js code] }" } }, 415e509ee18Sopenharmony_ci { "generator7", { "function", "Generator", "function* generator6( { [js code] }", 416e509ee18Sopenharmony_ci "function* generator6( { [js code] }" } }, 417e509ee18Sopenharmony_ci { "map7", { "object", "map", "Map", "Map(0)", "Map(0)"} }, 418e509ee18Sopenharmony_ci { "set7", { "object", "set", "Set", "Set(0)", "Set(0)"} }, 419e509ee18Sopenharmony_ci { "undefined7", { "undefined" } }, 420e509ee18Sopenharmony_ci { "array7", { "object", "array", "Array", "Array(2)", "Array(2)"} }, 421e509ee18Sopenharmony_ci { "regexp7", { "object", "regexp", "RegExp", "/^\\d+\\.\\d+$/i", "/^\\d+\\.\\d+$/i"} }, 422e509ee18Sopenharmony_ci { "uint8array7", { "object", "Object", "Uint8Array(24)", "Uint8Array(24)"} }, 423e509ee18Sopenharmony_ci { "dataview7", { "object", "dataview", "Dataview", "DataView(23)", "DataView(23)"} }, 424e509ee18Sopenharmony_ci { "bigint7", { "bigint", "99999n", "99999n" } }, 425e509ee18Sopenharmony_ci { "string9", { "string", "helloworld11", "helloworld11" } }, 426e509ee18Sopenharmony_ci { "boolean9", { "object", "Object", "Boolean{[[PrimitiveValue]]: false}", 427e509ee18Sopenharmony_ci "Boolean{[[PrimitiveValue]]: false}"} }, 428e509ee18Sopenharmony_ci { "number9", { "number", "111", "111" } }, 429e509ee18Sopenharmony_ci { "obj9", { "object", "Object", "Object", "Object"} }, 430e509ee18Sopenharmony_ci { "arraybuffer9", { "object", "arraybuffer", "Arraybuffer", "Arraybuffer(24)", "Arraybuffer(24)"} }, 431e509ee18Sopenharmony_ci { "function9", { "function", "Function", "function function8( { [js code] }", 432e509ee18Sopenharmony_ci "function function8( { [js code] }" } }, 433e509ee18Sopenharmony_ci { "generator9", { "function", "Generator", "function* generator8( { [js code] }", 434e509ee18Sopenharmony_ci "function* generator8( { [js code] }" } }, 435e509ee18Sopenharmony_ci { "map9", { "object", "map", "Map", "Map(0)", "Map(0)"} }, 436e509ee18Sopenharmony_ci { "set9", { "object", "set", "Set", "Set(0)", "Set(0)"} }, 437e509ee18Sopenharmony_ci { "undefined9", { "undefined" } }, 438e509ee18Sopenharmony_ci { "array9", { "object", "array", "Array", "Array(2)", "Array(2)"} }, 439e509ee18Sopenharmony_ci { "regexp9", { "object", "regexp", "RegExp", "/^\\d+\\.\\d+$/i", "/^\\d+\\.\\d+$/i"} }, 440e509ee18Sopenharmony_ci { "uint8array9", { "object", "Object", "Uint8Array(24)", "Uint8Array(24)"} }, 441e509ee18Sopenharmony_ci { "dataview9", { "object", "dataview", "Dataview", "DataView(24)", "DataView(24)"} }, 442e509ee18Sopenharmony_ci { "bigint9", { "bigint", "9999n", "9999n" } }, 443e509ee18Sopenharmony_ci { "string2", { "string", "helloworld11", "helloworld11" } }, 444e509ee18Sopenharmony_ci { "boolean10", { "object", "Object", "Boolean{[[PrimitiveValue]]: false}", 445e509ee18Sopenharmony_ci "Boolean{[[PrimitiveValue]]: false}"} }, 446e509ee18Sopenharmony_ci { "string10", { "string", "helloworld11", "helloworld11" } }, 447e509ee18Sopenharmony_ci { "number10", { "number", "111", "111" } }, 448e509ee18Sopenharmony_ci { "obj10", { "object", "Object", "Object", "Object"} }, 449e509ee18Sopenharmony_ci { "arraybuffer10", { "object", "arraybuffer", "Arraybuffer", "Arraybuffer(24)", "Arraybuffer(24)"} }, 450e509ee18Sopenharmony_ci { "function10", { "function", "Function", "function function8( { [js code] }", 451e509ee18Sopenharmony_ci "function function8( { [js code] }" } }, 452e509ee18Sopenharmony_ci { "generator10", { "function", "Generator", "function* generator8( { [js code] }", 453e509ee18Sopenharmony_ci "function* generator8( { [js code] }" } }, 454e509ee18Sopenharmony_ci { "map10", { "object", "map", "Map", "Map(0)", "Map(0)"} }, 455e509ee18Sopenharmony_ci { "set10", { "object", "set", "Set", "Set(0)", "Set(0)"} }, 456e509ee18Sopenharmony_ci { "undefined10", { "undefined" } }, 457e509ee18Sopenharmony_ci { "array10", { "object", "array", "Array", "Array(2)", "Array(2)"} }, 458e509ee18Sopenharmony_ci { "regexp10", { "object", "regexp", "RegExp", "/^\\d+\\.\\d+$/i", "/^\\d+\\.\\d+$/i"} }, 459e509ee18Sopenharmony_ci { "uint8array10", { "object", "Object", "Uint8Array(24)", "Uint8Array(24)"} }, 460e509ee18Sopenharmony_ci { "dataview10", { "object", "dataview", "Dataview", "DataView(24)", "DataView(24)"} }, 461e509ee18Sopenharmony_ci { "bigint10", { "bigint", "9999n", "9999n" } }, 462e509ee18Sopenharmony_ci { "transit1", { "number", "1", "1" } }, 463e509ee18Sopenharmony_ci { "transit2", { "number", "2", "2" } }, 464e509ee18Sopenharmony_ci { "transit4", { "number", "3", "3" } }, 465e509ee18Sopenharmony_ci { "transit5", { "number", "1", "1" } }, 466e509ee18Sopenharmony_ci { "transit6", { "number", "2", "2" } }, 467e509ee18Sopenharmony_ci { "transit7", { "number", "3", "3" } }, 468e509ee18Sopenharmony_ci { "multipleOut1", { "number", "1", "1" } }, 469e509ee18Sopenharmony_ci { "multipleOut2", { "number", "2", "2" } }, 470e509ee18Sopenharmony_ci { "multipleOut3", { "number", "3", "3" } }, 471e509ee18Sopenharmony_ci { "multipleOut4", { "number", "4", "4" } }, 472e509ee18Sopenharmony_ci { "multipleOut5", { "number", "5", "5" } }, 473e509ee18Sopenharmony_ci { "multipleOut6", { "number", "6", "6" } }, 474e509ee18Sopenharmony_ci { "multipleOut10", { "number", "10", "10" } }, 475e509ee18Sopenharmony_ci { "multipleOut11", { "number", "11", "11" } }, 476e509ee18Sopenharmony_ci { "multipleOut12", { "number", "12", "12" } }, 477e509ee18Sopenharmony_ci { "*default*", { "function", "Function", "function default( { [js code] }", 478e509ee18Sopenharmony_ci "function default( { [js code] }" } }, 479e509ee18Sopenharmony_ci {"obj", { "object", "Object", "Object", "Object"}} 480e509ee18Sopenharmony_ci }; 481e509ee18Sopenharmony_ci 482e509ee18Sopenharmony_ci const std::vector<std::string> innerDes = { 483e509ee18Sopenharmony_ci "{\"id\":10,\"result\":{\"result\":[{\"name\":\"length\",\"value\":{\"type\":\"number\",\"unserializableValue\"" 484e509ee18Sopenharmony_ci ":\"0\",\"description\":\"0\"},\"writable\":false,\"configurable\":true,\"enumerable\":false,\"isOwn\":true},{" 485e509ee18Sopenharmony_ci "\"name\":\"name\",\"value\":{\"type\":\"string\",\"unserializableValue\":\"default\",\"description\":" 486e509ee18Sopenharmony_ci "\"default\"},\"writable\":false,\"configurable\":true,\"enumerable\":false,\"isOwn\":true},{\"name\":" 487e509ee18Sopenharmony_ci "\"prototype\",\"value\":{\"type\":\"object\",\"className\":\"Object\",\"unserializableValue\":\"Object\"," 488e509ee18Sopenharmony_ci "\"description\":\"Object\",\"objectId\":\"100\"},\"writable\":true,\"configurable\":false,\"enumerable\":" 489e509ee18Sopenharmony_ci "false,\"isOwn\":true}]}}", 490e509ee18Sopenharmony_ci 491e509ee18Sopenharmony_ci "{\"id\":11,\"result\":{\"result\":[{\"name\":\"0\",\"value\":{\"type\":\"string\",\"unserializableValue\":" 492e509ee18Sopenharmony_ci "\"Apple\",\"description\":\"Apple\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":" 493e509ee18Sopenharmony_ci "true},{\"name\":\"1\",\"value\":{\"type\":\"string\",\"unserializableValue\":\"Banana\",\"description\":" 494e509ee18Sopenharmony_ci "\"Banana\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"length\"," 495e509ee18Sopenharmony_ci "\"value\":{\"type\":\"number\",\"unserializableValue\":\"2\",\"description\":\"2\"},\"writable\":true," 496e509ee18Sopenharmony_ci "\"configurable\":false,\"enumerable\":false,\"isOwn\":true}]}}", 497e509ee18Sopenharmony_ci 498e509ee18Sopenharmony_ci "{\"id\":12,\"result\":{\"result\":[{\"name\":\"[[Int8Array]]\",\"value\":{\"type\":\"object\",\"className\":" 499e509ee18Sopenharmony_ci "\"Object\",\"unserializableValue\":\"Int8Array(24)\",\"description\":\"Int8Array(24)\",\"objectId\":\"101\"}," 500e509ee18Sopenharmony_ci "\"writable\":true,\"configurable\":true,\"enumerable\":false,\"isOwn\":true},{\"name\":\"[[Uint8Array]]\"," 501e509ee18Sopenharmony_ci "\"value\":{\"type\":\"object\",\"className\":\"Object\",\"unserializableValue\":\"Uint8Array(24)\"," 502e509ee18Sopenharmony_ci "\"description\":\"Uint8Array(24)\",\"objectId\":\"102\"},\"writable\":true,\"configurable\":true," 503e509ee18Sopenharmony_ci "\"enumerable\":false,\"isOwn\":true},{\"name\":\"[[Uint8ClampedArray]]\",\"value\":{\"type\":\"object\"," 504e509ee18Sopenharmony_ci "\"className\":\"Object\",\"unserializableValue\":" 505e509ee18Sopenharmony_ci "\"Uint8ClampedArray\",\"description\":\"Uint8ClampedArray\",\"objectId\":\"103\"}," 506e509ee18Sopenharmony_ci "\"writable\":true,\"configurable\":true,\"enumerable\":false,\"isOwn\":true},{\"name\":\"[[Int16Array]]\"," 507e509ee18Sopenharmony_ci "\"value\":{\"type\":\"object\",\"className\":\"Object\",\"unserializableValue\":\"Int16Array(12)\"," 508e509ee18Sopenharmony_ci "\"description\":\"Int16Array(12)\",\"objectId\":\"104\"},\"writable\":true,\"configurable\":true," 509e509ee18Sopenharmony_ci "\"enumerable\":false,\"isOwn\":true},{\"name\":\"[[Uint16Array]]\",\"value\":{\"type\":\"object\"," 510e509ee18Sopenharmony_ci "\"className\":\"Object\",\"unserializableValue\":\"Uint16Array\",\"description\":\"Uint16Array\",\"objectId\":" 511e509ee18Sopenharmony_ci "\"105\"},\"writable\":true,\"configurable\":true,\"enumerable\":false,\"isOwn\":true},{\"name\":" 512e509ee18Sopenharmony_ci "\"[[Int32Array]]\",\"value\":{\"type\":\"object\",\"className\":\"Object\",\"unserializableValue\":" 513e509ee18Sopenharmony_ci "\"Int32Array(6)\",\"description\":\"Int32Array(6)\",\"objectId\":\"106\"},\"writable\":true,\"configurable\":" 514e509ee18Sopenharmony_ci "true,\"enumerable\":false,\"isOwn\":true},{\"name\":\"[[Uint32Array]]\",\"value\":{\"type\":\"object\"," 515e509ee18Sopenharmony_ci "\"className\":\"Object\",\"unserializableValue\":\"Uint32Array\"," 516e509ee18Sopenharmony_ci "\"description\":\"Uint32Array\",\"objectId\":\"107\"}," 517e509ee18Sopenharmony_ci "\"writable\":true,\"configurable\":true,\"enumerable\":false,\"isOwn\":true},{\"name\":\"[[Float32Array]]\"," 518e509ee18Sopenharmony_ci "\"value\":{\"type\":\"object\",\"className\":\"Object\"," 519e509ee18Sopenharmony_ci "\"unserializableValue\":\"Float32Array\",\"description\":" 520e509ee18Sopenharmony_ci "\"Float32Array\",\"objectId\":\"108\"},\"writable\":" 521e509ee18Sopenharmony_ci "true,\"configurable\":true,\"enumerable\":false,\"isOwn\":true}," 522e509ee18Sopenharmony_ci "{\"name\":\"[[Float64Array]]\",\"value\":{\"type\":\"object\",\"className\":\"Object\"," 523e509ee18Sopenharmony_ci "\"unserializableValue\":\"Float64Array\",\"description\":" 524e509ee18Sopenharmony_ci "\"Float64Array\",\"objectId\":\"109\"},\"writable\":true," 525e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":false,\"isOwn\":true},{\"name\":\"[[BigInt64Array]]\",\"value\":" 526e509ee18Sopenharmony_ci "{\"type\":\"object\",\"className\":\"Object\",\"unserializableValue\":" 527e509ee18Sopenharmony_ci "\"BigInt64Array\",\"description\":\"BigInt64Array\"," 528e509ee18Sopenharmony_ci "\"objectId\":\"110\"},\"writable\":true,\"configurable\":true,\"enumerable\":false,\"isOwn\":true},{\"name\":" 529e509ee18Sopenharmony_ci "\"[[BigUint64Array]]\",\"value\":{\"type\":\"object\",\"className\":\"Object\",\"unserializableValue\":" 530e509ee18Sopenharmony_ci "\"BigUint64Array\",\"description\":\"BigUint64Array\"," 531e509ee18Sopenharmony_ci "\"objectId\":\"111\"},\"writable\":true,\"configurable\":true," 532e509ee18Sopenharmony_ci "\"enumerable\":false,\"isOwn\":true}]}}", 533e509ee18Sopenharmony_ci 534e509ee18Sopenharmony_ci "{\"id\":13,\"result\":{\"result\":[{\"name\":\"[[PrimitiveValue]]\",\"value\":{\"type\":\"boolean\"," 535e509ee18Sopenharmony_ci "\"unserializableValue\":\"false\",\"description\":\"false\",\"objectId\":\"112\"},\"writable\":false," 536e509ee18Sopenharmony_ci "\"configurable\":false,\"enumerable\":false,\"isOwn\":false}]}}", 537e509ee18Sopenharmony_ci 538e509ee18Sopenharmony_ci "{\"id\":14,\"result\":{\"result\":[{\"name\":\"buffer\",\"value\":{\"type\":\"object\",\"subtype\":" 539e509ee18Sopenharmony_ci "\"arraybuffer\",\"className\":\"Arraybuffer\",\"unserializableValue\":\"Arraybuffer(24)\",\"description\":" 540e509ee18Sopenharmony_ci "\"Arraybuffer(24)\",\"objectId\":\"113\"},\"writable\":false,\"configurable\":false,\"enumerable\":false," 541e509ee18Sopenharmony_ci "\"isOwn\":false},{\"name\":\"byteLength\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"24\"," 542e509ee18Sopenharmony_ci "\"description\":\"24\",\"objectId\":\"114\"},\"writable\":false,\"configurable\":false,\"enumerable\":false," 543e509ee18Sopenharmony_ci "\"isOwn\":false},{\"name\":\"byteOffset\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 544e509ee18Sopenharmony_ci "\"description\":\"0\",\"objectId\":\"115\"},\"writable\":false,\"configurable\":false,\"enumerable\":false," 545e509ee18Sopenharmony_ci "\"isOwn\":false}]}}", 546e509ee18Sopenharmony_ci 547e509ee18Sopenharmony_ci "{\"id\":15,\"result\":{\"result\":[{\"name\":\"length\",\"value\":{\"type\":\"number\"," 548e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":false,\"configurable\":true,\"enumerable\":" 549e509ee18Sopenharmony_ci "false,\"isOwn\":true},{\"name\":\"name\",\"value\":{\"type\":\"string\",\"unserializableValue\":\"foo\"," 550e509ee18Sopenharmony_ci "\"description\":\"foo\"},\"writable\":false,\"configurable\":true,\"enumerable\":false,\"isOwn\":true}," 551e509ee18Sopenharmony_ci "{\"name\":\"prototype\",\"value\":{\"type\":\"object\",\"className\":\"Object\",\"unserializableValue\":" 552e509ee18Sopenharmony_ci "\"Object\",\"description\":\"Object\",\"objectId\":\"116\"},\"writable\":true,\"configurable\":false," 553e509ee18Sopenharmony_ci "\"enumerable\":false,\"isOwn\":true}]}}", 554e509ee18Sopenharmony_ci 555e509ee18Sopenharmony_ci "{\"id\":16,\"result\":{\"result\":[{\"name\":\"length\",\"value\":{\"type\":\"number\"," 556e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":false,\"configurable\":true,\"enumerable\":" 557e509ee18Sopenharmony_ci "false,\"isOwn\":true},{\"name\":\"name\",\"value\":{\"type\":\"string\",\"unserializableValue\":\"function0\"," 558e509ee18Sopenharmony_ci "\"description\":\"function0\"},\"writable\":false,\"configurable\":true,\"enumerable\":false,\"isOwn\":true}," 559e509ee18Sopenharmony_ci "{\"name\":\"prototype\",\"value\":{\"type\":\"object\",\"className\":\"Object\",\"unserializableValue\":" 560e509ee18Sopenharmony_ci "\"Object\",\"description\":\"Object\",\"objectId\":\"117\"},\"writable\":true,\"configurable\":false," 561e509ee18Sopenharmony_ci "\"enumerable\":false,\"isOwn\":true}]}}", 562e509ee18Sopenharmony_ci 563e509ee18Sopenharmony_ci "{\"id\":17,\"result\":{\"result\":[{\"name\":\"[[IsGenerator]]\",\"value\":{\"type\":\"boolean\"," 564e509ee18Sopenharmony_ci "\"unserializableValue\":\"true\",\"description\":\"true\",\"objectId\":\"118\"},\"writable\":false," 565e509ee18Sopenharmony_ci "\"configurable\":false,\"enumerable\":false,\"isOwn\":false},{\"name\":\"length\",\"value\":{\"type\":" 566e509ee18Sopenharmony_ci "\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":false,\"configurable\":true," 567e509ee18Sopenharmony_ci "\"enumerable\":false,\"isOwn\":true},{\"name\":\"name\",\"value\":{\"type\":\"string\"," 568e509ee18Sopenharmony_ci "\"unserializableValue\":\"generator0\",\"description\":\"generator0\"},\"writable\":false,\"configurable\":" 569e509ee18Sopenharmony_ci "true,\"enumerable\":false,\"isOwn\":true},{\"name\":\"prototype\",\"value\":{\"type\":\"object\"," 570e509ee18Sopenharmony_ci "\"className\":\"Object\",\"unserializableValue\":\"Object\",\"description\":\"Object\",\"objectId\":\"119\"}," 571e509ee18Sopenharmony_ci "\"writable\":true,\"configurable\":false,\"enumerable\":false,\"isOwn\":true}]}}", 572e509ee18Sopenharmony_ci 573e509ee18Sopenharmony_ci "{\"id\":18,\"result\":{\"result\":[{\"name\":\"length\",\"value\":{\"type\":\"number\"," 574e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":false,\"configurable\":true,\"enumerable\":" 575e509ee18Sopenharmony_ci "false,\"isOwn\":true},{\"name\":\"name\",\"value\":{\"type\":\"string\",\"unserializableValue\":" 576e509ee18Sopenharmony_ci "\"[Symbol.iterator]\",\"description\":\"[Symbol.iterator]\"},\"writable\":false,\"configurable\":true," 577e509ee18Sopenharmony_ci "\"enumerable\":false,\"isOwn\":true}]}}", 578e509ee18Sopenharmony_ci 579e509ee18Sopenharmony_ci "{\"id\":19,\"result\":{\"result\":[{\"name\":\"size\",\"value\":{\"type\":\"number\",\"unserializableValue\":" 580e509ee18Sopenharmony_ci "\"0\",\"description\":\"0\",\"objectId\":\"120\"},\"writable\":false,\"configurable\":false,\"enumerable\":" 581e509ee18Sopenharmony_ci "false,\"isOwn\":false},{\"name\":\"[[Entries]]\",\"value\":{\"type\":\"object\",\"subtype\":\"array\"," 582e509ee18Sopenharmony_ci "\"className\":\"Array\",\"unserializableValue\":\"Array(0)\",\"description\":\"Array(0)\",\"objectId\":" 583e509ee18Sopenharmony_ci "\"121\"},\"writable\":false,\"configurable\":false,\"enumerable\":false,\"isOwn\":false}]}}", 584e509ee18Sopenharmony_ci 585e509ee18Sopenharmony_ci "{\"id\":20,\"result\":{\"result\":[{\"name\":\"key0\",\"value\":{\"type\":\"string\",\"unserializableValue\":" 586e509ee18Sopenharmony_ci "\"value0\",\"description\":\"value0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":" 587e509ee18Sopenharmony_ci "true},{\"name\":\"key1\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"100\",\"description\":" 588e509ee18Sopenharmony_ci "\"100\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true}]}}", 589e509ee18Sopenharmony_ci 590e509ee18Sopenharmony_ci "{\"id\":21,\"result\":{\"result\":[{\"name\":\"global\",\"value\":{\"type\":\"boolean\"," 591e509ee18Sopenharmony_ci "\"unserializableValue\":\"false\",\"description\":\"false\",\"objectId\":\"122\"},\"writable\":false," 592e509ee18Sopenharmony_ci "\"configurable\":false,\"enumerable\":false,\"isOwn\":false},{\"name\":\"ignoreCase\",\"value\":{\"type\":" 593e509ee18Sopenharmony_ci "\"boolean\",\"unserializableValue\":\"true\",\"description\":\"true\",\"objectId\":\"123\"},\"writable\":" 594e509ee18Sopenharmony_ci "false,\"configurable\":false,\"enumerable\":false,\"isOwn\":false},{\"name\":\"multiline\",\"value\":" 595e509ee18Sopenharmony_ci "{\"type\":\"boolean\",\"unserializableValue\":\"false\",\"description\":\"false\",\"objectId\":\"124\"}," 596e509ee18Sopenharmony_ci "\"writable\":false,\"configurable\":false,\"enumerable\":false,\"isOwn\":false},{\"name\":\"dotAll\"," 597e509ee18Sopenharmony_ci "\"value\":{\"type\":\"boolean\",\"unserializableValue\":\"false\",\"description\":\"false\",\"objectId\":" 598e509ee18Sopenharmony_ci "\"125\"},\"writable\":false,\"configurable\":false,\"enumerable\":false,\"isOwn\":false},{\"name\":" 599e509ee18Sopenharmony_ci "\"hasIndices\",\"value\":{\"type\":\"boolean\",\"unserializableValue\":\"false\",\"description\":\"false\"," 600e509ee18Sopenharmony_ci "\"objectId\":\"126\"},\"writable\":false,\"configurable\":false,\"enumerable\":false,\"isOwn\":false}," 601e509ee18Sopenharmony_ci "{\"name\":\"unicode\",\"value\":{\"type\":\"boolean\",\"unserializableValue\":\"false\",\"description\":" 602e509ee18Sopenharmony_ci "\"false\",\"objectId\":\"127\"},\"writable\":false,\"configurable\":false,\"enumerable\":false,\"isOwn\":" 603e509ee18Sopenharmony_ci "false},{\"name\":\"sticky\",\"value\":{\"type\":\"boolean\",\"unserializableValue\":\"false\",\"description\":" 604e509ee18Sopenharmony_ci "\"false\",\"objectId\":\"128\"},\"writable\":false,\"configurable\":false,\"enumerable\":false,\"isOwn\":" 605e509ee18Sopenharmony_ci "false},{\"name\":\"flags\",\"value\":{\"type\":\"string\",\"unserializableValue\":\"i\",\"description\":" 606e509ee18Sopenharmony_ci "\"i\",\"objectId\":\"129\"},\"writable\":false,\"configurable\":false,\"enumerable\":false,\"isOwn\":false}," 607e509ee18Sopenharmony_ci "{\"name\":\"source\",\"value\":{\"type\":\"string\",\"unserializableValue\":\"^\\\\d+\\\\.\\\\d+$\"," 608e509ee18Sopenharmony_ci "\"description\":\"^\\\\d+\\\\.\\\\d+$\",\"objectId\":\"130\"},\"writable\":false,\"configurable\":false," 609e509ee18Sopenharmony_ci "\"enumerable\":false,\"isOwn\":false},{\"name\":\"lastIndex\",\"value\":{\"type\":\"number\"," 610e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":false,\"enumerable\":" 611e509ee18Sopenharmony_ci "false,\"isOwn\":true}]}}", 612e509ee18Sopenharmony_ci 613e509ee18Sopenharmony_ci "{\"id\":22,\"result\":{\"result\":[{\"name\":\"size\",\"value\":{\"type\":\"number\",\"unserializableValue\":" 614e509ee18Sopenharmony_ci "\"0\",\"description\":\"0\",\"objectId\":\"131\"},\"writable\":false,\"configurable\":false,\"enumerable\":" 615e509ee18Sopenharmony_ci "false,\"isOwn\":false},{\"name\":\"[[Entries]]\",\"value\":{\"type\":\"object\",\"subtype\":\"array\"," 616e509ee18Sopenharmony_ci "\"className\":\"Array\",\"unserializableValue\":\"Array(0)\",\"description\":\"Array(0)\",\"objectId\":" 617e509ee18Sopenharmony_ci "\"132\"},\"writable\":false,\"configurable\":false,\"enumerable\":false,\"isOwn\":false}]}}", 618e509ee18Sopenharmony_ci 619e509ee18Sopenharmony_ci "{\"id\":23,\"result\":{\"result\":[{\"name\":\"[[Int8Array]]\",\"value\":{\"type\":\"object\",\"className\":" 620e509ee18Sopenharmony_ci "\"Object\",\"unserializableValue\":\"Int8Array(32)\",\"description\":\"Int8Array(32)\",\"objectId\":\"133\"}," 621e509ee18Sopenharmony_ci "\"writable\":true,\"configurable\":true,\"enumerable\":false,\"isOwn\":true},{\"name\":\"[[Uint8Array]]\"," 622e509ee18Sopenharmony_ci "\"value\":{\"type\":\"object\",\"className\":\"Object\",\"unserializableValue\":\"Uint8Array(32)\"," 623e509ee18Sopenharmony_ci "\"description\":\"Uint8Array(32)\",\"objectId\":\"134\"},\"writable\":true,\"configurable\":true," 624e509ee18Sopenharmony_ci "\"enumerable\":false,\"isOwn\":true},{\"name\":\"[[Int16Array]]\",\"value\":{\"type\":\"object\"," 625e509ee18Sopenharmony_ci "\"className\":\"Object\",\"unserializableValue\":\"Int16Array(16)\",\"description\":\"Int16Array(16)\"," 626e509ee18Sopenharmony_ci "\"objectId\":\"135\"},\"writable\":true,\"configurable\":true,\"enumerable\":false,\"isOwn\":true},{\"name\":" 627e509ee18Sopenharmony_ci "\"[[Int32Array]]\",\"value\":{\"type\":\"object\",\"className\":\"Object\",\"unserializableValue\":" 628e509ee18Sopenharmony_ci "\"Int32Array(8)\",\"description\":\"Int32Array(8)\",\"objectId\":\"136\"},\"writable\":true,\"configurable\":" 629e509ee18Sopenharmony_ci "true,\"enumerable\":false,\"isOwn\":true},{\"name\":\"[[ArrayBufferByteLength]]\",\"value\":{\"type\":" 630e509ee18Sopenharmony_ci "\"number\",\"unserializableValue\":\"32\",\"description\":\"32\",\"objectId\":\"137\"},\"writable\":false," 631e509ee18Sopenharmony_ci "\"configurable\":false,\"enumerable\":false,\"isOwn\":false},{\"name\":\"byteLength\",\"value\":{\"type\":" 632e509ee18Sopenharmony_ci "\"number\",\"unserializableValue\":\"32\",\"description\":\"32\",\"objectId\":\"138\"},\"writable\":false," 633e509ee18Sopenharmony_ci "\"configurable\":false,\"enumerable\":false,\"isOwn\":false}]}}", 634e509ee18Sopenharmony_ci 635e509ee18Sopenharmony_ci "{\"id\":24,\"result\":{\"result\":[{\"name\":\"0\",\"value\":{\"type\":\"number\",\"unserializableValue\":" 636e509ee18Sopenharmony_ci "\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true}," 637e509ee18Sopenharmony_ci "{\"name\":\"1\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"}," 638e509ee18Sopenharmony_ci "\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"2\",\"value\":" 639e509ee18Sopenharmony_ci "{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":" 640e509ee18Sopenharmony_ci "true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"3\",\"value\":{\"type\":\"number\"," 641e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 642e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"4\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 643e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 644e509ee18Sopenharmony_ci "\"5\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 645e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"6\",\"value\":{\"type\":\"number\"," 646e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 647e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"7\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 648e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 649e509ee18Sopenharmony_ci "\"8\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 650e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"9\",\"value\":{\"type\":\"number\"," 651e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 652e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"10\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 653e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 654e509ee18Sopenharmony_ci "\"11\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 655e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"12\",\"value\":{\"type\":\"number\"," 656e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 657e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"13\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 658e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 659e509ee18Sopenharmony_ci "\"14\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 660e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"15\",\"value\":{\"type\":\"number\"," 661e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 662e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"16\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 663e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 664e509ee18Sopenharmony_ci "\"17\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 665e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"18\",\"value\":{\"type\":\"number\"," 666e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 667e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"19\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 668e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 669e509ee18Sopenharmony_ci "\"20\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 670e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"21\",\"value\":{\"type\":\"number\"," 671e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 672e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"22\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 673e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 674e509ee18Sopenharmony_ci "\"23\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 675e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true}]}}", 676e509ee18Sopenharmony_ci 677e509ee18Sopenharmony_ci "{\"id\":25,\"result\":{\"result\":[{\"name\":\"[[PrimitiveValue]]\",\"value\":{\"type\":\"boolean\"," 678e509ee18Sopenharmony_ci "\"unserializableValue\":\"true\",\"description\":\"true\",\"objectId\":\"139\"},\"writable\":false," 679e509ee18Sopenharmony_ci "\"configurable\":false,\"enumerable\":false,\"isOwn\":false}]}}", 680e509ee18Sopenharmony_ci 681e509ee18Sopenharmony_ci "{\"id\":26,\"result\":{\"result\":[{\"name\":\"0\",\"value\":{\"type\":\"number\",\"unserializableValue\":" 682e509ee18Sopenharmony_ci "\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true}," 683e509ee18Sopenharmony_ci "{\"name\":\"1\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"}," 684e509ee18Sopenharmony_ci "\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"2\",\"value\":" 685e509ee18Sopenharmony_ci "{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":" 686e509ee18Sopenharmony_ci "true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"3\",\"value\":{\"type\":\"number\"," 687e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 688e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"4\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 689e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 690e509ee18Sopenharmony_ci "\"5\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 691e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"6\",\"value\":{\"type\":\"number\"," 692e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 693e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"7\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 694e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 695e509ee18Sopenharmony_ci "\"8\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 696e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"9\",\"value\":{\"type\":\"number\"," 697e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 698e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"10\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 699e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 700e509ee18Sopenharmony_ci "\"11\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 701e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"12\",\"value\":{\"type\":\"number\"," 702e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 703e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"13\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 704e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true}," 705e509ee18Sopenharmony_ci "{\"name\":\"14\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"}," 706e509ee18Sopenharmony_ci "\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"15\",\"value\":" 707e509ee18Sopenharmony_ci "{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":" 708e509ee18Sopenharmony_ci "true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"16\",\"value\":{\"type\":\"number\"," 709e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 710e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"17\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 711e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 712e509ee18Sopenharmony_ci "\"18\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 713e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"19\",\"value\":{\"type\":\"number\"," 714e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 715e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"20\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 716e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":" 717e509ee18Sopenharmony_ci "\"21\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true," 718e509ee18Sopenharmony_ci "\"configurable\":true,\"enumerable\":true,\"isOwn\":true},{\"name\":\"22\",\"value\":{\"type\":\"number\"," 719e509ee18Sopenharmony_ci "\"unserializableValue\":\"0\",\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":" 720e509ee18Sopenharmony_ci "true,\"isOwn\":true},{\"name\":\"23\",\"value\":{\"type\":\"number\",\"unserializableValue\":\"0\"," 721e509ee18Sopenharmony_ci "\"description\":\"0\"},\"writable\":true,\"configurable\":true,\"enumerable\":true,\"isOwn\":true}]}}" 722e509ee18Sopenharmony_ci }; 723e509ee18Sopenharmony_ci}; 724e509ee18Sopenharmony_ci 725e509ee18Sopenharmony_cistd::unique_ptr<TestActions> GetJsModuleVariableTest() 726e509ee18Sopenharmony_ci{ 727e509ee18Sopenharmony_ci return std::make_unique<JsModuleVariableTest>(); 728e509ee18Sopenharmony_ci} 729e509ee18Sopenharmony_ci} // namespace panda::ecmascript::tooling::test 730e509ee18Sopenharmony_ci 731e509ee18Sopenharmony_ci#endif // ECMASCRIPT_TOOLING_TEST_TESTCASES_JS_MODULE_VARIABLE_TEST_H 732