Index: test/cctest/test-api.cc |
diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc |
index 55e0ea30701afb3543e872a2000f023cb36f5aa0..1b44c5b178e5f75e1e7402d41477c153bcc61993 100644 |
--- a/test/cctest/test-api.cc |
+++ b/test/cctest/test-api.cc |
@@ -204,7 +204,7 @@ THREADED_TEST(Handles) { |
CHECK(!local_env.IsEmpty()); |
local_env->Enter(); |
- v8::Handle<v8::Primitive> undef = v8::Undefined(); |
+ v8::Handle<v8::Primitive> undef = v8::Undefined(CcTest::isolate()); |
CHECK(!undef.IsEmpty()); |
CHECK(undef->IsUndefined()); |
@@ -391,8 +391,9 @@ THREADED_TEST(ArgumentSignature) { |
THREADED_TEST(HulIgennem) { |
LocalContext env; |
- v8::HandleScope scope(env->GetIsolate()); |
- v8::Handle<v8::Primitive> undef = v8::Undefined(); |
+ v8::Isolate* isolate = env->GetIsolate(); |
+ v8::HandleScope scope(isolate); |
+ v8::Handle<v8::Primitive> undef = v8::Undefined(isolate); |
Local<String> undef_str = undef->ToString(); |
char* value = i::NewArray<char>(undef_str->Utf8Length() + 1); |
undef_str->WriteUtf8(value); |
@@ -403,7 +404,8 @@ THREADED_TEST(HulIgennem) { |
THREADED_TEST(Access) { |
LocalContext env; |
- v8::HandleScope scope(env->GetIsolate()); |
+ v8::Isolate* isolate = env->GetIsolate(); |
+ v8::HandleScope scope(isolate); |
Local<v8::Object> obj = v8::Object::New(); |
Local<Value> foo_before = obj->Get(v8_str("foo")); |
CHECK(foo_before->IsUndefined()); |
@@ -1689,12 +1691,13 @@ THREADED_TEST(Number) { |
THREADED_TEST(ToNumber) { |
LocalContext env; |
- v8::HandleScope scope(env->GetIsolate()); |
+ v8::Isolate* isolate = CcTest::isolate(); |
+ v8::HandleScope scope(isolate); |
Local<String> str = v8_str("3.1415926"); |
CHECK_EQ(3.1415926, str->NumberValue()); |
- v8::Handle<v8::Boolean> t = v8::True(); |
+ v8::Handle<v8::Boolean> t = v8::True(isolate); |
CHECK_EQ(1.0, t->NumberValue()); |
- v8::Handle<v8::Boolean> f = v8::False(); |
+ v8::Handle<v8::Boolean> f = v8::False(isolate); |
CHECK_EQ(0.0, f->NumberValue()); |
} |
@@ -1713,13 +1716,13 @@ THREADED_TEST(Date) { |
THREADED_TEST(Boolean) { |
LocalContext env; |
v8::HandleScope scope(env->GetIsolate()); |
- v8::Handle<v8::Boolean> t = v8::True(); |
+ v8::Handle<v8::Boolean> t = v8::True(CcTest::isolate()); |
CHECK(t->Value()); |
- v8::Handle<v8::Boolean> f = v8::False(); |
+ v8::Handle<v8::Boolean> f = v8::False(CcTest::isolate()); |
CHECK(!f->Value()); |
- v8::Handle<v8::Primitive> u = v8::Undefined(); |
+ v8::Handle<v8::Primitive> u = v8::Undefined(CcTest::isolate()); |
CHECK(!u->BooleanValue()); |
- v8::Handle<v8::Primitive> n = v8::Null(); |
+ v8::Handle<v8::Primitive> n = v8::Null(CcTest::isolate()); |
CHECK(!n->BooleanValue()); |
v8::Handle<String> str1 = v8_str(""); |
CHECK(!str1->BooleanValue()); |
@@ -3762,15 +3765,16 @@ static void check_message_3(v8::Handle<v8::Message> message, |
TEST(MessageHandler3) { |
message_received = false; |
- v8::HandleScope scope(CcTest::isolate()); |
+ v8::Isolate* isolate = CcTest::isolate(); |
+ v8::HandleScope scope(isolate); |
CHECK(!message_received); |
v8::V8::AddMessageListener(check_message_3); |
LocalContext context; |
v8::ScriptOrigin origin = |
v8::ScriptOrigin(v8_str("6.75"), |
- v8::Integer::New(1), |
- v8::Integer::New(2), |
- v8::True()); |
+ v8::Integer::New(1, isolate), |
+ v8::Integer::New(2, isolate), |
+ v8::True(isolate)); |
v8::Handle<v8::Script> script = Script::Compile(v8_str("throw 'error'"), |
&origin); |
script->Run(); |
@@ -3790,15 +3794,16 @@ static void check_message_4(v8::Handle<v8::Message> message, |
TEST(MessageHandler4) { |
message_received = false; |
- v8::HandleScope scope(CcTest::isolate()); |
+ v8::Isolate* isolate = CcTest::isolate(); |
+ v8::HandleScope scope(isolate); |
CHECK(!message_received); |
v8::V8::AddMessageListener(check_message_4); |
LocalContext context; |
v8::ScriptOrigin origin = |
v8::ScriptOrigin(v8_str("6.75"), |
- v8::Integer::New(1), |
- v8::Integer::New(2), |
- v8::False()); |
+ v8::Integer::New(1, isolate), |
+ v8::Integer::New(2, isolate), |
+ v8::False(isolate)); |
v8::Handle<v8::Script> script = Script::Compile(v8_str("throw 'error'"), |
&origin); |
script->Run(); |
@@ -3826,15 +3831,16 @@ static void check_message_5b(v8::Handle<v8::Message> message, |
TEST(MessageHandler5) { |
message_received = false; |
- v8::HandleScope scope(CcTest::isolate()); |
+ v8::Isolate* isolate = CcTest::isolate(); |
+ v8::HandleScope scope(isolate); |
CHECK(!message_received); |
v8::V8::AddMessageListener(check_message_5a); |
LocalContext context; |
v8::ScriptOrigin origin = |
v8::ScriptOrigin(v8_str("6.75"), |
- v8::Integer::New(1), |
- v8::Integer::New(2), |
- v8::True()); |
+ v8::Integer::New(1, isolate), |
+ v8::Integer::New(2, isolate), |
+ v8::True(isolate)); |
v8::Handle<v8::Script> script = Script::Compile(v8_str("throw 'error'"), |
&origin); |
script->Run(); |
@@ -3846,9 +3852,9 @@ TEST(MessageHandler5) { |
v8::V8::AddMessageListener(check_message_5b); |
origin = |
v8::ScriptOrigin(v8_str("6.75"), |
- v8::Integer::New(1), |
- v8::Integer::New(2), |
- v8::False()); |
+ v8::Integer::New(1, isolate), |
+ v8::Integer::New(2, isolate), |
+ v8::False(isolate)); |
script = Script::Compile(v8_str("throw 'error'"), |
&origin); |
script->Run(); |
@@ -4321,7 +4327,8 @@ THREADED_TEST(isNumberType) { |
THREADED_TEST(ConversionException) { |
LocalContext env; |
- v8::HandleScope scope(env->GetIsolate()); |
+ v8::Isolate* isolate = env->GetIsolate(); |
+ v8::HandleScope scope(isolate); |
CompileRun( |
"function TestClass() { };" |
"TestClass.prototype.toString = function () { throw 'uncle?'; };" |
@@ -4350,7 +4357,7 @@ THREADED_TEST(ConversionException) { |
CHECK(to_int32_result.IsEmpty()); |
CheckUncle(&try_catch); |
- Local<Value> to_object_result = v8::Undefined()->ToObject(); |
+ Local<Value> to_object_result = v8::Undefined(isolate)->ToObject(); |
CHECK(to_object_result.IsEmpty()); |
CHECK(try_catch.HasCaught()); |
try_catch.Reset(); |
@@ -4976,8 +4983,8 @@ THREADED_TEST(Equality) { |
CHECK(v8_num(0.0)->StrictEquals(v8_num(-0.0))); |
Local<Value> not_a_number = v8_num(i::OS::nan_value()); |
CHECK(!not_a_number->StrictEquals(not_a_number)); |
- CHECK(v8::False()->StrictEquals(v8::False())); |
- CHECK(!v8::False()->StrictEquals(v8::Undefined())); |
+ CHECK(v8::False(isolate)->StrictEquals(v8::False(isolate))); |
+ CHECK(!v8::False(isolate)->StrictEquals(v8::Undefined(isolate))); |
v8::Handle<v8::Object> obj = v8::Object::New(); |
v8::Persistent<v8::Object> alias(isolate, obj); |
@@ -4991,8 +4998,8 @@ THREADED_TEST(Equality) { |
CHECK(!v8_num(1)->SameValue(v8_num(2))); |
CHECK(!v8_num(0.0)->SameValue(v8_num(-0.0))); |
CHECK(not_a_number->SameValue(not_a_number)); |
- CHECK(v8::False()->SameValue(v8::False())); |
- CHECK(!v8::False()->SameValue(v8::Undefined())); |
+ CHECK(v8::False(isolate)->SameValue(v8::False(isolate))); |
+ CHECK(!v8::False(isolate)->SameValue(v8::Undefined(isolate))); |
} |
@@ -6673,7 +6680,7 @@ TEST(RegexpOutOfMemory) { |
static void MissingScriptInfoMessageListener(v8::Handle<v8::Message> message, |
v8::Handle<Value> data) { |
CHECK(message->GetScriptResourceName()->IsUndefined()); |
- CHECK_EQ(v8::Undefined(), message->GetScriptResourceName()); |
+ CHECK_EQ(v8::Undefined(CcTest::isolate()), message->GetScriptResourceName()); |
message->GetLineNumber(); |
message->GetSourceLine(); |
} |
@@ -6910,12 +6917,13 @@ v8::Handle<Function> args_fun; |
static void ArgumentsTestCallback( |
const v8::FunctionCallbackInfo<v8::Value>& args) { |
ApiTestFuzzer::Fuzz(); |
+ v8::Isolate* isolate = args.GetIsolate(); |
CHECK_EQ(args_fun, args.Callee()); |
CHECK_EQ(3, args.Length()); |
- CHECK_EQ(v8::Integer::New(1), args[0]); |
- CHECK_EQ(v8::Integer::New(2), args[1]); |
- CHECK_EQ(v8::Integer::New(3), args[2]); |
- CHECK_EQ(v8::Undefined(), args[3]); |
+ CHECK_EQ(v8::Integer::New(1, isolate), args[0]); |
+ CHECK_EQ(v8::Integer::New(2, isolate), args[1]); |
+ CHECK_EQ(v8::Integer::New(3, isolate), args[2]); |
+ CHECK_EQ(v8::Undefined(isolate), args[3]); |
v8::HandleScope scope(args.GetIsolate()); |
CcTest::heap()->CollectAllGarbage(i::Heap::kNoGCFlags); |
} |
@@ -7163,7 +7171,8 @@ THREADED_TEST(PreInterceptorHolders) { |
THREADED_TEST(ObjectInstantiation) { |
- v8::HandleScope scope(CcTest::isolate()); |
+ v8::Isolate* isolate = CcTest::isolate(); |
+ v8::HandleScope scope(isolate); |
v8::Handle<v8::ObjectTemplate> templ = ObjectTemplate::New(); |
templ->SetAccessor(v8_str("t"), PGetter2); |
LocalContext context; |
@@ -7175,7 +7184,7 @@ THREADED_TEST(ObjectInstantiation) { |
context->Global()->Set(v8_str("o2"), obj); |
v8::Handle<Value> value = |
Script::Compile(v8_str("o.__proto__ === o2.__proto__"))->Run(); |
- CHECK_EQ(v8::True(), value); |
+ CHECK_EQ(v8::True(isolate), value); |
context->Global()->Set(v8_str("o"), obj); |
} |
} |
@@ -9794,7 +9803,8 @@ static void FakeConstructorCallback( |
THREADED_TEST(ConstructorForObject) { |
LocalContext context; |
- v8::HandleScope handle_scope(context->GetIsolate()); |
+ v8::Isolate* isolate = context->GetIsolate(); |
+ v8::HandleScope handle_scope(isolate); |
{ Local<ObjectTemplate> instance_template = ObjectTemplate::New(); |
instance_template->SetCallAsFunctionHandler(ConstructorCallback); |
@@ -9843,7 +9853,7 @@ THREADED_TEST(ConstructorForObject) { |
CHECK(value->IsBoolean()); |
CHECK_EQ(true, value->BooleanValue()); |
- Handle<Value> args3[] = { v8::True() }; |
+ Handle<Value> args3[] = { v8::True(isolate) }; |
Local<Value> value_obj3 = instance->CallAsConstructor(1, args3); |
CHECK(value_obj3->IsObject()); |
Local<Object> object3 = Local<Object>::Cast(value_obj3); |
@@ -9853,7 +9863,7 @@ THREADED_TEST(ConstructorForObject) { |
CHECK_EQ(true, value->BooleanValue()); |
// Call the Object's constructor with undefined. |
- Handle<Value> args4[] = { v8::Undefined() }; |
+ Handle<Value> args4[] = { v8::Undefined(isolate) }; |
Local<Value> value_obj4 = instance->CallAsConstructor(1, args4); |
CHECK(value_obj4->IsObject()); |
Local<Object> object4 = Local<Object>::Cast(value_obj4); |
@@ -9862,7 +9872,7 @@ THREADED_TEST(ConstructorForObject) { |
CHECK(value->IsUndefined()); |
// Call the Object's constructor with null. |
- Handle<Value> args5[] = { v8::Null() }; |
+ Handle<Value> args5[] = { v8::Null(isolate) }; |
Local<Value> value_obj5 = instance->CallAsConstructor(1, args5); |
CHECK(value_obj5->IsObject()); |
Local<Object> object5 = Local<Object>::Cast(value_obj5); |
@@ -13732,11 +13742,12 @@ static bool IndexedSetAccessBlocker(Local<v8::Object> obj, |
THREADED_TEST(DisableAccessChecksWhileConfiguring) { |
LocalContext context; |
- v8::HandleScope scope(context->GetIsolate()); |
+ v8::Isolate* isolate = context->GetIsolate(); |
+ v8::HandleScope scope(isolate); |
Local<ObjectTemplate> templ = ObjectTemplate::New(); |
templ->SetAccessCheckCallbacks(NamedSetAccessBlocker, |
IndexedSetAccessBlocker); |
- templ->Set(v8_str("x"), v8::True()); |
+ templ->Set(v8_str("x"), v8::True(isolate)); |
Local<v8::Object> instance = templ->NewInstance(); |
context->Global()->Set(v8_str("obj"), instance); |
Local<Value> value = CompileRun("obj.x"); |
@@ -14153,14 +14164,14 @@ THREADED_TEST(DictionaryICLoadedFunction) { |
// Test LoadIC. |
for (int i = 0; i < 2; i++) { |
LocalContext context; |
- context->Global()->Set(v8_str("tmp"), v8::True()); |
+ context->Global()->Set(v8_str("tmp"), v8::True(CcTest::isolate())); |
context->Global()->Delete(v8_str("tmp")); |
CompileRun("for (var j = 0; j < 10; j++) new RegExp('');"); |
} |
// Test CallIC. |
for (int i = 0; i < 2; i++) { |
LocalContext context; |
- context->Global()->Set(v8_str("tmp"), v8::True()); |
+ context->Global()->Set(v8_str("tmp"), v8::True(CcTest::isolate())); |
context->Global()->Delete(v8_str("tmp")); |
CompileRun("for (var j = 0; j < 10; j++) RegExp('')"); |
} |
@@ -19394,20 +19405,20 @@ THREADED_TEST(Regress93759) { |
CHECK(result1->Equals(simple_object->GetPrototype())); |
Local<Value> result2 = CompileRun("Object.getPrototypeOf(protected)"); |
- CHECK(result2->Equals(Undefined())); |
+ CHECK(result2->Equals(Undefined(isolate))); |
Local<Value> result3 = CompileRun("Object.getPrototypeOf(global)"); |
CHECK(result3->Equals(global_object->GetPrototype())); |
Local<Value> result4 = CompileRun("Object.getPrototypeOf(proxy)"); |
- CHECK(result4->Equals(Undefined())); |
+ CHECK(result4->Equals(Undefined(isolate))); |
Local<Value> result5 = CompileRun("Object.getPrototypeOf(hidden)"); |
CHECK(result5->Equals( |
object_with_hidden->GetPrototype()->ToObject()->GetPrototype())); |
Local<Value> result6 = CompileRun("Object.getPrototypeOf(phidden)"); |
- CHECK(result6->Equals(Undefined())); |
+ CHECK(result6->Equals(Undefined(isolate))); |
} |
@@ -19706,16 +19717,12 @@ TEST(StaticGetters) { |
v8::Isolate* isolate = CcTest::isolate(); |
v8::HandleScope scope(isolate); |
i::Handle<i::Object> undefined_value = factory->undefined_value(); |
- CHECK(*v8::Utils::OpenHandle(*v8::Undefined()) == *undefined_value); |
CHECK(*v8::Utils::OpenHandle(*v8::Undefined(isolate)) == *undefined_value); |
i::Handle<i::Object> null_value = factory->null_value(); |
- CHECK(*v8::Utils::OpenHandle(*v8::Null()) == *null_value); |
CHECK(*v8::Utils::OpenHandle(*v8::Null(isolate)) == *null_value); |
i::Handle<i::Object> true_value = factory->true_value(); |
- CHECK(*v8::Utils::OpenHandle(*v8::True()) == *true_value); |
CHECK(*v8::Utils::OpenHandle(*v8::True(isolate)) == *true_value); |
i::Handle<i::Object> false_value = factory->false_value(); |
- CHECK(*v8::Utils::OpenHandle(*v8::False()) == *false_value); |
CHECK(*v8::Utils::OpenHandle(*v8::False(isolate)) == *false_value); |
} |
@@ -20158,10 +20165,11 @@ THREADED_TEST(Regress2535) { |
THREADED_TEST(Regress2746) { |
LocalContext context; |
- v8::HandleScope scope(context->GetIsolate()); |
+ v8::Isolate* isolate = context->GetIsolate(); |
+ v8::HandleScope scope(isolate); |
Local<Object> obj = Object::New(); |
Local<String> key = String::New("key"); |
- obj->SetHiddenValue(key, v8::Undefined()); |
+ obj->SetHiddenValue(key, v8::Undefined(isolate)); |
Local<Value> value = obj->GetHiddenValue(key); |
CHECK(!value.IsEmpty()); |
CHECK(value->IsUndefined()); |