| 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());
|
|
|