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

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

Issue 1220813005: Minor performance improvements to the LookupIterator (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Update tests Created 5 years, 5 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/lookup-inl.h ('k') | test/cctest/test-decls.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 13255 matching lines...) Expand 10 before | Expand all | Expand 10 after
13266 // TODO(verwaest): Update once blink doesn't rely on ForceSet to delete api 13266 // TODO(verwaest): Update once blink doesn't rely on ForceSet to delete api
13267 // accessors. 13267 // accessors.
13268 global->ForceSet(access_property, v8::Int32::New(isolate, 8)); 13268 global->ForceSet(access_property, v8::Int32::New(isolate, 8));
13269 CHECK_EQ(8, global->Get(access_property)->Int32Value()); 13269 CHECK_EQ(8, global->Get(access_property)->Int32Value());
13270 CHECK_EQ(1, force_set_set_count); 13270 CHECK_EQ(1, force_set_set_count);
13271 CHECK_EQ(2, force_set_get_count); 13271 CHECK_EQ(2, force_set_get_count);
13272 } 13272 }
13273 13273
13274 13274
13275 TEST(ForceSetWithInterceptor) { 13275 TEST(ForceSetWithInterceptor) {
13276 force_set_get_count = 0;
13277 force_set_set_count = 0;
13278 pass_on_get = false;
13279
13280 v8::Isolate* isolate = CcTest::isolate(); 13276 v8::Isolate* isolate = CcTest::isolate();
13281 v8::HandleScope scope(isolate); 13277 v8::HandleScope scope(isolate);
13282 v8::Handle<v8::ObjectTemplate> templ = v8::ObjectTemplate::New(isolate); 13278 v8::Handle<v8::ObjectTemplate> templ = v8::ObjectTemplate::New(isolate);
13283 templ->SetHandler(v8::NamedPropertyHandlerConfiguration( 13279 templ->SetHandler(v8::NamedPropertyHandlerConfiguration(
13284 ForceSetInterceptGetter, ForceSetInterceptSetter)); 13280 ForceSetInterceptGetter, ForceSetInterceptSetter));
13281 pass_on_get = true;
13285 LocalContext context(NULL, templ); 13282 LocalContext context(NULL, templ);
13286 v8::Handle<v8::Object> global = context->Global(); 13283 v8::Handle<v8::Object> global = context->Global();
13287 13284
13285 force_set_get_count = 0;
13286 force_set_set_count = 0;
13287 pass_on_get = false;
13288
13288 v8::Handle<v8::String> some_property = 13289 v8::Handle<v8::String> some_property =
13289 v8::String::NewFromUtf8(isolate, "a"); 13290 v8::String::NewFromUtf8(isolate, "a");
13290 CHECK_EQ(0, force_set_set_count); 13291 CHECK_EQ(0, force_set_set_count);
13291 CHECK_EQ(0, force_set_get_count); 13292 CHECK_EQ(0, force_set_get_count);
13292 CHECK_EQ(3, global->Get(some_property)->Int32Value()); 13293 CHECK_EQ(3, global->Get(some_property)->Int32Value());
13293 // Setting the property shouldn't override it, just call the setter 13294 // Setting the property shouldn't override it, just call the setter
13294 // which in this case does nothing. 13295 // which in this case does nothing.
13295 global->Set(some_property, v8::Int32::New(isolate, 7)); 13296 global->Set(some_property, v8::Int32::New(isolate, 7));
13296 CHECK_EQ(3, global->Get(some_property)->Int32Value()); 13297 CHECK_EQ(3, global->Get(some_property)->Int32Value());
13297 CHECK_EQ(1, force_set_set_count); 13298 CHECK_EQ(1, force_set_set_count);
(...skipping 8357 matching lines...) Expand 10 before | Expand all | Expand 10 after
21655 CHECK(set->Has(env.local(), set).FromJust()); 21656 CHECK(set->Has(env.local(), set).FromJust());
21656 21657
21657 CHECK(set->Delete(env.local(), set).FromJust()); 21658 CHECK(set->Delete(env.local(), set).FromJust());
21658 CHECK_EQ(2U, set->Size()); 21659 CHECK_EQ(2U, set->Size());
21659 CHECK(!set->Has(env.local(), set).FromJust()); 21660 CHECK(!set->Has(env.local(), set).FromJust());
21660 CHECK(!set->Delete(env.local(), set).FromJust()); 21661 CHECK(!set->Delete(env.local(), set).FromJust());
21661 21662
21662 set->Clear(); 21663 set->Clear();
21663 CHECK_EQ(0U, set->Size()); 21664 CHECK_EQ(0U, set->Size());
21664 } 21665 }
OLDNEW
« no previous file with comments | « src/lookup-inl.h ('k') | test/cctest/test-decls.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698