aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/test/cctest/test-microtask-delivery.cc
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/test/cctest/test-microtask-delivery.cc')
-rw-r--r--deps/v8/test/cctest/test-microtask-delivery.cc55
1 files changed, 40 insertions, 15 deletions
diff --git a/deps/v8/test/cctest/test-microtask-delivery.cc b/deps/v8/test/cctest/test-microtask-delivery.cc
index 415be3caf2..ecec77fbfd 100644
--- a/deps/v8/test/cctest/test-microtask-delivery.cc
+++ b/deps/v8/test/cctest/test-microtask-delivery.cc
@@ -55,6 +55,7 @@ class HarmonyIsolate {
TEST(MicrotaskDeliverySimple) {
+ i::FLAG_harmony_object_observe = true;
HarmonyIsolate isolate;
v8::HandleScope scope(isolate.GetIsolate());
LocalContext context(isolate.GetIsolate());
@@ -82,28 +83,41 @@ TEST(MicrotaskDeliverySimple) {
"});"
"Object.observe(obj, observer);"
"obj.id = 1;");
- CHECK_EQ(6, CompileRun("ordering.length")->Int32Value());
- CHECK_EQ(1, CompileRun("ordering[0]")->Int32Value());
- CHECK_EQ(2, CompileRun("ordering[1]")->Int32Value());
- CHECK_EQ(3, CompileRun("ordering[2]")->Int32Value());
- CHECK_EQ(4, CompileRun("ordering[3]")->Int32Value());
- CHECK_EQ(5, CompileRun("ordering[4]")->Int32Value());
- CHECK_EQ(6, CompileRun("ordering[5]")->Int32Value());
+ CHECK_EQ(
+ 6, CompileRun("ordering.length")->Int32Value(context.local()).FromJust());
+ CHECK_EQ(1,
+ CompileRun("ordering[0]")->Int32Value(context.local()).FromJust());
+ CHECK_EQ(2,
+ CompileRun("ordering[1]")->Int32Value(context.local()).FromJust());
+ CHECK_EQ(3,
+ CompileRun("ordering[2]")->Int32Value(context.local()).FromJust());
+ CHECK_EQ(4,
+ CompileRun("ordering[3]")->Int32Value(context.local()).FromJust());
+ CHECK_EQ(5,
+ CompileRun("ordering[4]")->Int32Value(context.local()).FromJust());
+ CHECK_EQ(6,
+ CompileRun("ordering[5]")->Int32Value(context.local()).FromJust());
}
TEST(MicrotaskPerIsolateState) {
+ i::FLAG_harmony_object_observe = true;
HarmonyIsolate isolate;
v8::HandleScope scope(isolate.GetIsolate());
LocalContext context1(isolate.GetIsolate());
isolate.GetIsolate()->SetAutorunMicrotasks(false);
CompileRun(
"var obj = { calls: 0 };");
- v8::Handle<v8::Value> obj = CompileRun("obj");
+ v8::Local<v8::Value> obj = CompileRun("obj");
{
LocalContext context2(isolate.GetIsolate());
- context2->Global()->Set(
- v8::String::NewFromUtf8(isolate.GetIsolate(), "obj"), obj);
+ context2->Global()
+ ->Set(context2.local(),
+ v8::String::NewFromUtf8(isolate.GetIsolate(), "obj",
+ v8::NewStringType::kNormal)
+ .ToLocalChecked(),
+ obj)
+ .FromJust();
CompileRun(
"var resolver = {};"
"new Promise(function(resolve) {"
@@ -117,8 +131,13 @@ TEST(MicrotaskPerIsolateState) {
}
{
LocalContext context3(isolate.GetIsolate());
- context3->Global()->Set(
- v8::String::NewFromUtf8(isolate.GetIsolate(), "obj"), obj);
+ context3->Global()
+ ->Set(context3.local(),
+ v8::String::NewFromUtf8(isolate.GetIsolate(), "obj",
+ v8::NewStringType::kNormal)
+ .ToLocalChecked(),
+ obj)
+ .FromJust();
CompileRun(
"var foo = { id: 1 };"
"Object.observe(foo, function() {"
@@ -128,9 +147,15 @@ TEST(MicrotaskPerIsolateState) {
}
{
LocalContext context4(isolate.GetIsolate());
- context4->Global()->Set(
- v8::String::NewFromUtf8(isolate.GetIsolate(), "obj"), obj);
+ context4->Global()
+ ->Set(context4.local(),
+ v8::String::NewFromUtf8(isolate.GetIsolate(), "obj",
+ v8::NewStringType::kNormal)
+ .ToLocalChecked(),
+ obj)
+ .FromJust();
isolate.GetIsolate()->RunMicrotasks();
- CHECK_EQ(2, CompileRun("obj.calls")->Int32Value());
+ CHECK_EQ(2,
+ CompileRun("obj.calls")->Int32Value(context4.local()).FromJust());
}
}