• Home
  • Raw
  • Download

Lines Matching full:jsvm

25 #include "jsvm.h"
672 JSVM_Value result = jsvm::Run("new Number(42)");
680 JSVM_Value result = jsvm::Run("new Boolean(true)");
688 JSVM_Value result = jsvm::Run("new Object(42n)");
696 JSVM_Value result = jsvm::Run("new String(\"test\")");
704 JSVM_Value result = jsvm::Run("Object(Symbol('foo'))");
714 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.toStringTag")));
721 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.toPrimitive")));
728 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.split")));
735 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.search")));
742 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.replace")));
749 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.match")));
756 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.isConcatSpreadable")));
775 jsvm::Run(registerObject.c_str());
776 auto obj = jsvm::GetProperty(jsvm::Global(), "target");
777 auto handler1 = jsvm::GetProperty(jsvm::Global(), "handler1");
778 auto handler2 = jsvm::GetProperty(jsvm::Global(), "handler2");
786 jsvm::SetProperty(jsvm::Global(), "proxy1", proxy1);
787 jsvm::SetProperty(jsvm::Global(), "proxy2", proxy2);
793 auto result = jsvm::Run(checkProxy1.c_str());
794 ASSERT_TRUE(jsvm::IsTrue(result));
801 result = jsvm::Run(checkProxy2.c_str());
802 ASSERT_TRUE(jsvm::IsTrue(result));
807 jsvm::Run(R"JS(
819 auto value = jsvm::GetProperty(jsvm::Global(), "target");
823 value = jsvm::GetProperty(jsvm::Global(), "handler1");
827 value = jsvm::GetProperty(jsvm::Global(), "proxy1");
834 jsvm::Run(R"JS(
844 auto target = jsvm::GetProperty(jsvm::Global(), "target");
845 auto proxy1 = jsvm::GetProperty(jsvm::Global(), "proxy1");
850 ASSERT_TRUE(jsvm::StrictEquals(target, result));
864 auto result = jsvm::Run(g_scriptEvalMicrotask.c_str());
865 ASSERT_TRUE(jsvm::IsFalse(result));
866 result = jsvm::GetProperty(jsvm::Global(), "evaluateMicrotask");
867 ASSERT_TRUE(jsvm::IsTrue(result));
874 auto result = jsvm::Run(g_scriptEvalMicrotask.c_str());
875 ASSERT_TRUE(jsvm::IsFalse(result));
876 result = jsvm::GetProperty(jsvm::Global(), "evaluateMicrotask");
877 ASSERT_TRUE(jsvm::IsFalse(result));
879 result = jsvm::GetProperty(jsvm::Global(), "evaluateMicrotask");
880 ASSERT_TRUE(jsvm::IsTrue(result));
888 auto result = jsvm::Run(g_scriptEvalMicrotask.c_str());
889 ASSERT_TRUE(jsvm::IsFalse(result));
890 result = jsvm::GetProperty(jsvm::Global(), "evaluateMicrotask");
891 ASSERT_TRUE(jsvm::IsTrue(result));
925 jsvm::Run(g_defineFunction.c_str());
927 JSVM_Value f1 = jsvm::GetProperty(jsvm::Global(), "f1");
931 auto x1 = jsvm::GetProperty(jsvm::Global(), "x1");
932 auto x2 = jsvm::GetProperty(jsvm::Global(), "x2");
933 ASSERT_TRUE(jsvm::Equals(x1, jsvm::Int32(0)));
934 ASSERT_TRUE(jsvm::Equals(x2, jsvm::Int32(0)));
936 OH_JSVM_ResolveDeferred(env, deffered, jsvm::Int32(2));
939 x1 = jsvm::GetProperty(jsvm::Global(), "x1");
940 x2 = jsvm::GetProperty(jsvm::Global(), "x2");
941 ASSERT_TRUE(jsvm::Equals(x1, jsvm::Int32(2)));
942 ASSERT_TRUE(jsvm::Equals(x2, jsvm::Int32(0)));
947 jsvm::Run(g_defineFunction.c_str());
949 JSVM_Value f1 = jsvm::GetProperty(jsvm::Global(), "f1");
950 auto f2 = jsvm::GetProperty(jsvm::Global(), "f2");
959 auto x1 = jsvm::GetProperty(jsvm::Global(), "x1");
960 auto x2 = jsvm::GetProperty(jsvm::Global(), "x2");
961 ASSERT_TRUE(jsvm::Equals(x1, jsvm::Int32(0)));
962 ASSERT_TRUE(jsvm::Equals(x2, jsvm::Int32(0)));
964 OH_JSVM_ResolveDeferred(env, deffered, jsvm::Int32(2));
967 x1 = jsvm::GetProperty(jsvm::Global(), "x1");
968 x2 = jsvm::GetProperty(jsvm::Global(), "x2");
969 ASSERT_TRUE(jsvm::Equals(x1, jsvm::Int32(2)));
970 ASSERT_TRUE(jsvm::Equals(x2, jsvm::Int32(0)));
972 jsvm::Run(g_init.c_str());
977 x1 = jsvm::GetProperty(jsvm::Global(), "x1");
978 x2 = jsvm::GetProperty(jsvm::Global(), "x2");
979 ASSERT_TRUE(jsvm::Equals(x1, jsvm::Int32(0)));
980 ASSERT_TRUE(jsvm::Equals(x2, jsvm::Int32(0)));
982 OH_JSVM_RejectDeferred(env, deffered, jsvm::Int32(3));
985 x1 = jsvm::GetProperty(jsvm::Global(), "x1");
986 x2 = jsvm::GetProperty(jsvm::Global(), "x2");
987 ASSERT_TRUE(jsvm::Equals(x1, jsvm::Int32(0)));
988 ASSERT_TRUE(jsvm::Equals(x2, jsvm::Int32(3)));
993 jsvm::Run(g_defineFunction.c_str());
995 JSVM_Value f1 = jsvm::GetProperty(jsvm::Global(), "f1");
996 auto f2 = jsvm::GetProperty(jsvm::Global(), "f2");
1006 x1 = jsvm::GetProperty(jsvm::Global(), "x1");
1007 x2 = jsvm::GetProperty(jsvm::Global(), "x2");
1008 ASSERT_TRUE(jsvm::Equals(x1, jsvm::Int32(0)));
1009 ASSERT_TRUE(jsvm::Equals(x2, jsvm::Int32(0)));
1011 OH_JSVM_ResolveDeferred(env, deffered, jsvm::Int32(2));
1014 x1 = jsvm::GetProperty(jsvm::Global(), "x1");
1015 x2 = jsvm::GetProperty(jsvm::Global(), "x2");
1016 ASSERT_TRUE(jsvm::Equals(x1, jsvm::Int32(2)));
1017 ASSERT_TRUE(jsvm::Equals(x2, jsvm::Int32(3)));
1022 jsvm::Run(g_defineFunction.c_str());
1024 JSVM_Value f1 = jsvm::GetProperty(jsvm::Global(), "f1");
1034 auto x1 = jsvm::GetProperty(jsvm::Global(), "x1");
1035 auto x2 = jsvm::GetProperty(jsvm::Global(), "x2");
1036 ASSERT_TRUE(jsvm::Equals(x1, jsvm::Int32(0)));
1037 ASSERT_TRUE(jsvm::Equals(x2, jsvm::Int32(0)));
1039 JSVMTEST_CALL(OH_JSVM_RejectDeferred(env, deffered, jsvm::Int32(2)));
1042 x1 = jsvm::GetProperty(jsvm::Global(), "x1");
1043 x2 = jsvm::GetProperty(jsvm::Global(), "x2");
1044 ASSERT_TRUE(jsvm::Equals(x1, jsvm::Int32(2)));
1045 ASSERT_TRUE(jsvm::Equals(x2, jsvm::Int32(0)));
1052 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.hasInstance")));
1059 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.unscopables")));
1066 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.asyncIterator")));
1073 ASSERT_TRUE(jsvm::StrictEquals(result, jsvm::Run("Symbol.iterator")));
1131 jsvm::TryTriggerGC();
1180 ASSERT_TRUE(jsvm::IsObject(rejectInfo)); in OnPromiseReject()
1181 auto promise = jsvm::GetProperty(rejectInfo, "promise"); in OnPromiseReject()
1182 ASSERT_TRUE(jsvm::IsPromise(promise)); in OnPromiseReject()
1183 auto value = jsvm::GetProperty(rejectInfo, "value"); in OnPromiseReject()
1184 ASSERT_TRUE(jsvm::IsNumber(value)); in OnPromiseReject()
1196 jsvm::TryTriggerOOM();
1198 ASSERT_TRUE(jsvm::ToNumber(jsvm::Run("42")) == 42);
1210 jsvm::TryTriggerFatalError(vm);
1212 ASSERT_TRUE(jsvm::ToNumber(jsvm::Run("42")) == 42);
1219 jsvm::Run("new Promise((resolve, reject) => { reject(42); })");
1265 JSVM_Value fooVal = jsvm::Str("bar"); in GenerateParentClass()
1348 ASSERT_TRUE(jsvm::ToString(subRes).compare("bar") == 0);
1351 jsvm::Run("obj.add(3, 4);");
1355 jsvm::Run("obj()");
1358 jsvm::Run("obj.x = 123;");
1367 JSVM_Value script = jsvm::Str("return 2 + 3;");
1390 return jsvm::Str("log"); in LogFunc()
1397 auto obj = jsvm::Object();
1398 JSVMTEST_CALL(OH_JSVM_SetPrivate(env, obj, key, jsvm::Str("a")));
1405 auto ret = jsvm::Call(result);
1406 ASSERT_TRUE(jsvm::Equals(ret, jsvm::Str("log")));
1413 auto obj = jsvm::Object();
1414 JSVMTEST_CALL(OH_JSVM_SetPrivate(env, obj, key, jsvm::Str("a")));
1415 JSVMTEST_CALL(OH_JSVM_SetPrivate(env, obj, key, jsvm::Str("log")));
1418 ASSERT_TRUE(jsvm::Equals(result, jsvm::Str("log")));
1424 JSVMTEST_CALL(OH_JSVM_CreatePrivate(env, jsvm::Str("a"), &key));
1426 JSVMTEST_CALL(OH_JSVM_CreatePrivate(env, jsvm::Str("a"), &key1));
1427 auto obj = jsvm::Object();
1428 JSVMTEST_CALL(OH_JSVM_SetPrivate(env, obj, key, jsvm::Str("a")));
1429 JSVMTEST_CALL(OH_JSVM_SetPrivate(env, obj, key1, jsvm::Str("b")));
1434 ASSERT_TRUE(!jsvm::Equals(result, result1));
1440 auto obj = jsvm::Object();
1441 auto status = OH_JSVM_SetPrivate(env, obj, key, jsvm::Str("a"));
1448 auto obj = jsvm::Object();
1449 JSVMTEST_CALL(OH_JSVM_CreatePrivate(env, jsvm::Str("a"), &key));
1457 auto obj = jsvm::True();
1458 JSVMTEST_CALL(OH_JSVM_CreatePrivate(env, jsvm::Str("a"), &key));
1459 auto status = OH_JSVM_SetPrivate(env, obj, key, jsvm::Str("a"));
1466 auto obj = jsvm::Object();
1467 JSVMTEST_CALL(OH_JSVM_CreateSymbol(env, jsvm::Str("a"), (JSVM_Value *)&key));
1468 auto status = OH_JSVM_SetPrivate(env, obj, key, jsvm::Str("a"));
1476 auto obj = jsvm::Object();
1479 ASSERT_TRUE(jsvm::Equals(result, jsvm::Undefined()));
1485 auto obj = jsvm::Object();
1494 auto obj = jsvm::Object();
1495 JSVMTEST_CALL(OH_JSVM_CreatePrivate(env, jsvm::Str("a"), &key));
1503 auto obj = jsvm::True();
1504 JSVMTEST_CALL(OH_JSVM_CreatePrivate(env, jsvm::Str("a"), &key));
1513 auto obj = jsvm::Object();
1514 JSVMTEST_CALL(OH_JSVM_CreateSymbol(env, jsvm::Str("a"), (JSVM_Value *)&key));
1524 auto obj = jsvm::Object();
1531 auto obj = jsvm::Object();
1539 auto obj = jsvm::True();
1540 JSVMTEST_CALL(OH_JSVM_CreatePrivate(env, jsvm::Str("a"), &key));
1548 auto obj = jsvm::Object();
1549 JSVMTEST_CALL(OH_JSVM_CreateSymbol(env, jsvm::Str("a"), (JSVM_Value *)&key));