Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(92)

Side by Side Diff: test/cctest/test-api.cc

Issue 1741893003: Introduce v8::MicrotasksScope. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: SetAutorunMicrotasks fix Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/isolate.cc ('k') | test/cctest/test-microtask-delivery.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 20903 matching lines...) Expand 10 before | Expand all | Expand 10 after
20914 TEST(CallCompletedCallbackTwoExceptions) { 20914 TEST(CallCompletedCallbackTwoExceptions) {
20915 LocalContext env; 20915 LocalContext env;
20916 v8::HandleScope scope(env->GetIsolate()); 20916 v8::HandleScope scope(env->GetIsolate());
20917 env->GetIsolate()->AddCallCompletedCallback(CallCompletedCallbackException); 20917 env->GetIsolate()->AddCallCompletedCallback(CallCompletedCallbackException);
20918 CompileRun("throw 'first exception';"); 20918 CompileRun("throw 'first exception';");
20919 } 20919 }
20920 20920
20921 20921
20922 static void MicrotaskOne(const v8::FunctionCallbackInfo<Value>& info) { 20922 static void MicrotaskOne(const v8::FunctionCallbackInfo<Value>& info) {
20923 v8::HandleScope scope(info.GetIsolate()); 20923 v8::HandleScope scope(info.GetIsolate());
20924 v8::MicrotasksScope microtasks(info.GetIsolate(),
20925 v8::MicrotasksScope::kDoNotRunMicrotasks);
20924 CompileRun("ext1Calls++;"); 20926 CompileRun("ext1Calls++;");
20925 } 20927 }
20926 20928
20927 20929
20928 static void MicrotaskTwo(const v8::FunctionCallbackInfo<Value>& info) { 20930 static void MicrotaskTwo(const v8::FunctionCallbackInfo<Value>& info) {
20929 v8::HandleScope scope(info.GetIsolate()); 20931 v8::HandleScope scope(info.GetIsolate());
20932 v8::MicrotasksScope microtasks(info.GetIsolate(),
20933 v8::MicrotasksScope::kDoNotRunMicrotasks);
20930 CompileRun("ext2Calls++;"); 20934 CompileRun("ext2Calls++;");
20931 } 20935 }
20932 20936
20933 20937
20934 void* g_passed_to_three = NULL; 20938 void* g_passed_to_three = NULL;
20935 20939
20936 20940
20937 static void MicrotaskThree(void* data) { 20941 static void MicrotaskThree(void* data) {
20938 g_passed_to_three = data; 20942 g_passed_to_three = data;
20939 } 20943 }
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
21054 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust()); 21058 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21055 CHECK_EQ(0u, microtasks_completed_callback_count); 21059 CHECK_EQ(0u, microtasks_completed_callback_count);
21056 21060
21057 env->GetIsolate()->EnqueueMicrotask( 21061 env->GetIsolate()->EnqueueMicrotask(
21058 Function::New(env.local(), MicrotaskOne).ToLocalChecked()); 21062 Function::New(env.local(), MicrotaskOne).ToLocalChecked());
21059 CompileRun("1+1;"); 21063 CompileRun("1+1;");
21060 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust()); 21064 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21061 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust()); 21065 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21062 CHECK_EQ(1u, microtasks_completed_callback_count); 21066 CHECK_EQ(1u, microtasks_completed_callback_count);
21063 21067
21064 env->GetIsolate()->SetAutorunMicrotasks(false); 21068 env->GetIsolate()->SetMicrotasksPolicy(v8::MicrotasksPolicy::kExplicit);
21065 env->GetIsolate()->EnqueueMicrotask( 21069 env->GetIsolate()->EnqueueMicrotask(
21066 Function::New(env.local(), MicrotaskOne).ToLocalChecked()); 21070 Function::New(env.local(), MicrotaskOne).ToLocalChecked());
21067 env->GetIsolate()->EnqueueMicrotask( 21071 env->GetIsolate()->EnqueueMicrotask(
21068 Function::New(env.local(), MicrotaskTwo).ToLocalChecked()); 21072 Function::New(env.local(), MicrotaskTwo).ToLocalChecked());
21069 CompileRun("1+1;"); 21073 CompileRun("1+1;");
21070 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust()); 21074 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21071 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust()); 21075 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21072 CHECK_EQ(1u, microtasks_completed_callback_count); 21076 CHECK_EQ(1u, microtasks_completed_callback_count);
21073 21077
21074 env->GetIsolate()->RunMicrotasks(); 21078 env->GetIsolate()->RunMicrotasks();
21075 CHECK_EQ(2, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust()); 21079 CHECK_EQ(2, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21076 CHECK_EQ(1, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust()); 21080 CHECK_EQ(1, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21077 CHECK_EQ(2u, microtasks_completed_callback_count); 21081 CHECK_EQ(2u, microtasks_completed_callback_count);
21078 21082
21079 env->GetIsolate()->EnqueueMicrotask( 21083 env->GetIsolate()->EnqueueMicrotask(
21080 Function::New(env.local(), MicrotaskTwo).ToLocalChecked()); 21084 Function::New(env.local(), MicrotaskTwo).ToLocalChecked());
21081 CompileRun("1+1;"); 21085 CompileRun("1+1;");
21082 CHECK_EQ(2, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust()); 21086 CHECK_EQ(2, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21083 CHECK_EQ(1, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust()); 21087 CHECK_EQ(1, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21084 CHECK_EQ(2u, microtasks_completed_callback_count); 21088 CHECK_EQ(2u, microtasks_completed_callback_count);
21085 21089
21086 env->GetIsolate()->RunMicrotasks(); 21090 env->GetIsolate()->RunMicrotasks();
21087 CHECK_EQ(2, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust()); 21091 CHECK_EQ(2, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21088 CHECK_EQ(2, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust()); 21092 CHECK_EQ(2, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21089 CHECK_EQ(3u, microtasks_completed_callback_count); 21093 CHECK_EQ(3u, microtasks_completed_callback_count);
21090 21094
21091 env->GetIsolate()->SetAutorunMicrotasks(true); 21095 env->GetIsolate()->SetMicrotasksPolicy(v8::MicrotasksPolicy::kAuto);
21092 env->GetIsolate()->EnqueueMicrotask( 21096 env->GetIsolate()->EnqueueMicrotask(
21093 Function::New(env.local(), MicrotaskTwo).ToLocalChecked()); 21097 Function::New(env.local(), MicrotaskTwo).ToLocalChecked());
21094 CompileRun("1+1;"); 21098 CompileRun("1+1;");
21095 CHECK_EQ(2, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust()); 21099 CHECK_EQ(2, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21096 CHECK_EQ(3, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust()); 21100 CHECK_EQ(3, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21097 CHECK_EQ(4u, microtasks_completed_callback_count); 21101 CHECK_EQ(4u, microtasks_completed_callback_count);
21098 21102
21099 env->GetIsolate()->EnqueueMicrotask( 21103 env->GetIsolate()->EnqueueMicrotask(
21100 Function::New(env.local(), MicrotaskTwo).ToLocalChecked()); 21104 Function::New(env.local(), MicrotaskTwo).ToLocalChecked());
21101 { 21105 {
(...skipping 16 matching lines...) Expand all
21118 CompileRun("1+1;"); 21122 CompileRun("1+1;");
21119 CHECK_EQ(3, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust()); 21123 CHECK_EQ(3, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21120 CHECK_EQ(4, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust()); 21124 CHECK_EQ(4, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21121 CHECK_EQ(5u, microtasks_completed_callback_count); 21125 CHECK_EQ(5u, microtasks_completed_callback_count);
21122 } 21126 }
21123 21127
21124 21128
21125 TEST(RunMicrotasksWithoutEnteringContext) { 21129 TEST(RunMicrotasksWithoutEnteringContext) {
21126 v8::Isolate* isolate = CcTest::isolate(); 21130 v8::Isolate* isolate = CcTest::isolate();
21127 HandleScope handle_scope(isolate); 21131 HandleScope handle_scope(isolate);
21128 isolate->SetAutorunMicrotasks(false); 21132 isolate->SetMicrotasksPolicy(v8::MicrotasksPolicy::kExplicit);
21129 Local<Context> context = Context::New(isolate); 21133 Local<Context> context = Context::New(isolate);
21130 { 21134 {
21131 Context::Scope context_scope(context); 21135 Context::Scope context_scope(context);
21132 CompileRun("var ext1Calls = 0;"); 21136 CompileRun("var ext1Calls = 0;");
21133 isolate->EnqueueMicrotask( 21137 isolate->EnqueueMicrotask(
21134 Function::New(context, MicrotaskOne).ToLocalChecked()); 21138 Function::New(context, MicrotaskOne).ToLocalChecked());
21135 } 21139 }
21136 isolate->RunMicrotasks(); 21140 isolate->RunMicrotasks();
21137 { 21141 {
21138 Context::Scope context_scope(context); 21142 Context::Scope context_scope(context);
21139 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(context).FromJust()); 21143 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(context).FromJust());
21140 } 21144 }
21141 isolate->SetAutorunMicrotasks(true); 21145 isolate->SetMicrotasksPolicy(v8::MicrotasksPolicy::kAuto);
21142 } 21146 }
21143 21147
21144 21148
21149 TEST(ScopedMicrotasks) {
21150 LocalContext env;
21151 v8::HandleScope handles(env->GetIsolate());
21152 env->GetIsolate()->SetMicrotasksPolicy(v8::MicrotasksPolicy::kScoped);
21153 {
21154 v8::MicrotasksScope scope1(env->GetIsolate(),
21155 v8::MicrotasksScope::kDoNotRunMicrotasks);
21156 env->GetIsolate()->EnqueueMicrotask(
21157 Function::New(env.local(), MicrotaskOne).ToLocalChecked());
21158 CompileRun(
21159 "var ext1Calls = 0;"
21160 "var ext2Calls = 0;");
21161 CompileRun("1+1;");
21162 CHECK_EQ(0, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21163 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21164 {
21165 v8::MicrotasksScope scope2(env->GetIsolate(),
21166 v8::MicrotasksScope::kRunMicrotasks);
21167 CompileRun("1+1;");
21168 CHECK_EQ(0, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21169 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21170 {
21171 v8::MicrotasksScope scope3(env->GetIsolate(),
21172 v8::MicrotasksScope::kRunMicrotasks);
21173 CompileRun("1+1;");
21174 CHECK_EQ(0,
21175 CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21176 CHECK_EQ(0,
21177 CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21178 }
21179 CHECK_EQ(0, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21180 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21181 }
21182 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21183 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21184 env->GetIsolate()->EnqueueMicrotask(
21185 Function::New(env.local(), MicrotaskTwo).ToLocalChecked());
21186 }
21187
21188 {
21189 v8::MicrotasksScope scope(env->GetIsolate(),
21190 v8::MicrotasksScope::kDoNotRunMicrotasks);
21191 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21192 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21193 }
21194
21195 {
21196 v8::MicrotasksScope scope1(env->GetIsolate(),
21197 v8::MicrotasksScope::kRunMicrotasks);
21198 CompileRun("1+1;");
21199 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21200 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21201 {
21202 v8::MicrotasksScope scope2(env->GetIsolate(),
21203 v8::MicrotasksScope::kDoNotRunMicrotasks);
21204 }
21205 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21206 CHECK_EQ(0, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21207 }
21208
21209 {
21210 v8::MicrotasksScope scope(env->GetIsolate(),
21211 v8::MicrotasksScope::kDoNotRunMicrotasks);
21212 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21213 CHECK_EQ(1, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21214 env->GetIsolate()->EnqueueMicrotask(
21215 Function::New(env.local(), MicrotaskTwo).ToLocalChecked());
21216 }
21217
21218 {
21219 v8::Isolate::SuppressMicrotaskExecutionScope scope1(env->GetIsolate());
21220 {
21221 v8::MicrotasksScope scope2(env->GetIsolate(),
21222 v8::MicrotasksScope::kRunMicrotasks);
21223 }
21224 v8::MicrotasksScope scope3(env->GetIsolate(),
21225 v8::MicrotasksScope::kDoNotRunMicrotasks);
21226 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21227 CHECK_EQ(1, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21228 }
21229
21230 {
21231 v8::MicrotasksScope scope1(env->GetIsolate(),
21232 v8::MicrotasksScope::kRunMicrotasks);
21233 v8::MicrotasksScope::PerformCheckpoint(env->GetIsolate());
21234 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21235 CHECK_EQ(1, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21236 }
21237
21238 {
21239 v8::MicrotasksScope scope(env->GetIsolate(),
21240 v8::MicrotasksScope::kDoNotRunMicrotasks);
21241 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21242 CHECK_EQ(2, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21243 }
21244
21245 v8::MicrotasksScope::PerformCheckpoint(env->GetIsolate());
21246
21247 {
21248 v8::MicrotasksScope scope(env->GetIsolate(),
21249 v8::MicrotasksScope::kDoNotRunMicrotasks);
21250 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21251 CHECK_EQ(2, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21252 env->GetIsolate()->EnqueueMicrotask(
21253 Function::New(env.local(), MicrotaskTwo).ToLocalChecked());
21254 }
21255
21256 v8::MicrotasksScope::PerformCheckpoint(env->GetIsolate());
21257
21258 {
21259 v8::MicrotasksScope scope(env->GetIsolate(),
21260 v8::MicrotasksScope::kDoNotRunMicrotasks);
21261 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21262 CHECK_EQ(3, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21263 }
21264
21265 env->GetIsolate()->EnqueueMicrotask(
21266 Function::New(env.local(), MicrotaskOne).ToLocalChecked());
21267 {
21268 v8::Isolate::SuppressMicrotaskExecutionScope scope1(env->GetIsolate());
21269 v8::MicrotasksScope::PerformCheckpoint(env->GetIsolate());
21270 v8::MicrotasksScope scope2(env->GetIsolate(),
21271 v8::MicrotasksScope::kDoNotRunMicrotasks);
21272 CHECK_EQ(1, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21273 CHECK_EQ(3, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21274 }
21275
21276 v8::MicrotasksScope::PerformCheckpoint(env->GetIsolate());
21277
21278 {
21279 v8::MicrotasksScope scope(env->GetIsolate(),
21280 v8::MicrotasksScope::kDoNotRunMicrotasks);
21281 CHECK_EQ(2, CompileRun("ext1Calls")->Int32Value(env.local()).FromJust());
21282 CHECK_EQ(3, CompileRun("ext2Calls")->Int32Value(env.local()).FromJust());
21283 }
21284
21285 env->GetIsolate()->SetMicrotasksPolicy(v8::MicrotasksPolicy::kAuto);
21286 }
21287
21288
21145 static void DebugEventInObserver(const v8::Debug::EventDetails& event_details) { 21289 static void DebugEventInObserver(const v8::Debug::EventDetails& event_details) {
21146 v8::DebugEvent event = event_details.GetEvent(); 21290 v8::DebugEvent event = event_details.GetEvent();
21147 if (event != v8::Break) return; 21291 if (event != v8::Break) return;
21148 Local<Object> exec_state = event_details.GetExecutionState(); 21292 Local<Object> exec_state = event_details.GetExecutionState();
21149 Local<Context> context = CcTest::isolate()->GetCurrentContext(); 21293 Local<Context> context = CcTest::isolate()->GetCurrentContext();
21150 Local<Value> break_id = 21294 Local<Value> break_id =
21151 exec_state->Get(context, v8_str("break_id")).ToLocalChecked(); 21295 exec_state->Get(context, v8_str("break_id")).ToLocalChecked();
21152 CompileRun("function f(id) { new FrameDetails(id, 0); }"); 21296 CompileRun("function f(id) { new FrameDetails(id, 0); }");
21153 Local<Function> fun = Local<Function>::Cast( 21297 Local<Function> fun = Local<Function>::Cast(
21154 CcTest::global()->Get(context, v8_str("f")).ToLocalChecked()); 21298 CcTest::global()->Get(context, v8_str("f")).ToLocalChecked());
21155 fun->Call(context, CcTest::global(), 1, &break_id).ToLocalChecked(); 21299 fun->Call(context, CcTest::global(), 1, &break_id).ToLocalChecked();
21156 } 21300 }
21157 21301
21158 21302
21159 TEST(Regress385349) { 21303 TEST(Regress385349) {
21160 i::FLAG_harmony_object_observe = true; 21304 i::FLAG_harmony_object_observe = true;
21161 i::FLAG_allow_natives_syntax = true; 21305 i::FLAG_allow_natives_syntax = true;
21162 v8::Isolate* isolate = CcTest::isolate(); 21306 v8::Isolate* isolate = CcTest::isolate();
21163 HandleScope handle_scope(isolate); 21307 HandleScope handle_scope(isolate);
21164 isolate->SetAutorunMicrotasks(false); 21308 isolate->SetMicrotasksPolicy(v8::MicrotasksPolicy::kExplicit);
21165 Local<Context> context = Context::New(isolate); 21309 Local<Context> context = Context::New(isolate);
21166 v8::Debug::SetDebugEventListener(isolate, DebugEventInObserver); 21310 v8::Debug::SetDebugEventListener(isolate, DebugEventInObserver);
21167 { 21311 {
21168 Context::Scope context_scope(context); 21312 Context::Scope context_scope(context);
21169 CompileRun("var obj = {};" 21313 CompileRun("var obj = {};"
21170 "Object.observe(obj, function(changes) { debugger; });" 21314 "Object.observe(obj, function(changes) { debugger; });"
21171 "obj.a = 0;"); 21315 "obj.a = 0;");
21172 } 21316 }
21173 isolate->RunMicrotasks(); 21317 isolate->RunMicrotasks();
21174 isolate->SetAutorunMicrotasks(true); 21318 isolate->SetMicrotasksPolicy(v8::MicrotasksPolicy::kAuto);
21175 v8::Debug::SetDebugEventListener(isolate, nullptr); 21319 v8::Debug::SetDebugEventListener(isolate, nullptr);
21176 } 21320 }
21177 21321
21178 21322
21179 #ifdef ENABLE_DISASSEMBLER 21323 #ifdef ENABLE_DISASSEMBLER
21180 static int probes_counter = 0; 21324 static int probes_counter = 0;
21181 static int misses_counter = 0; 21325 static int misses_counter = 0;
21182 static int updates_counter = 0; 21326 static int updates_counter = 0;
21183 21327
21184 21328
(...skipping 3787 matching lines...) Expand 10 before | Expand all | Expand 10 after
24972 CHECK(proxy->GetTarget()->SameValue(target)); 25116 CHECK(proxy->GetTarget()->SameValue(target));
24973 CHECK(proxy->GetHandler()->SameValue(handler)); 25117 CHECK(proxy->GetHandler()->SameValue(handler));
24974 25118
24975 proxy->Revoke(); 25119 proxy->Revoke();
24976 CHECK(proxy->IsProxy()); 25120 CHECK(proxy->IsProxy());
24977 CHECK(!target->IsProxy()); 25121 CHECK(!target->IsProxy());
24978 CHECK(proxy->IsRevoked()); 25122 CHECK(proxy->IsRevoked());
24979 CHECK(proxy->GetTarget()->SameValue(target)); 25123 CHECK(proxy->GetTarget()->SameValue(target));
24980 CHECK(proxy->GetHandler()->IsNull()); 25124 CHECK(proxy->GetHandler()->IsNull());
24981 } 25125 }
OLDNEW
« no previous file with comments | « src/isolate.cc ('k') | test/cctest/test-microtask-delivery.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698