| Index: webkit/plugins/ppapi/v8_var_converter_unittest.cc
|
| diff --git a/webkit/plugins/ppapi/v8_var_converter_unittest.cc b/webkit/plugins/ppapi/v8_var_converter_unittest.cc
|
| index a21634825a71faf89b048df94024ff3a4d66f03c..2198cf8bf7c4e0353274044d1c8470cf756c3de2 100644
|
| --- a/webkit/plugins/ppapi/v8_var_converter_unittest.cc
|
| +++ b/webkit/plugins/ppapi/v8_var_converter_unittest.cc
|
| @@ -133,21 +133,19 @@ bool Equals(const PP_Var& var,
|
|
|
| class V8VarConverterTest : public testing::Test {
|
| public:
|
| - V8VarConverterTest() {}
|
| + V8VarConverterTest()
|
| + : isolate_(v8::Isolate::GetCurrent()) {}
|
| ~V8VarConverterTest() {}
|
|
|
| // testing::Test implementation.
|
| virtual void SetUp() {
|
| ProxyLock::Acquire();
|
| - v8::HandleScope handle_scope;
|
| + v8::HandleScope handle_scope(isolate_);
|
| v8::Handle<v8::ObjectTemplate> global = v8::ObjectTemplate::New();
|
| - v8::Isolate* isolate = v8::Isolate::GetCurrent();
|
| - // TODO(marja): Use v8::Persistent::Reset here.
|
| - context_ = v8::Persistent<v8::Context>(
|
| - isolate, v8::Context::New(isolate, NULL, global));
|
| + context_.Reset(isolate_, v8::Context::New(isolate_, NULL, global));
|
| }
|
| virtual void TearDown() {
|
| - context_.Dispose(context_->GetIsolate());
|
| + context_.Dispose();
|
| ASSERT_TRUE(PpapiGlobals::Get()->GetVarTracker()->GetLiveVars().empty());
|
| ProxyLock::Release();
|
| }
|
| @@ -155,14 +153,16 @@ class V8VarConverterTest : public testing::Test {
|
| protected:
|
| bool RoundTrip(const PP_Var& var, PP_Var* result) {
|
| V8VarConverter converter;
|
| - v8::Context::Scope context_scope(context_);
|
| - v8::HandleScope handle_scope;
|
| + v8::HandleScope handle_scope(isolate_);
|
| + v8::Context::Scope context_scope(isolate_, context_);
|
| + v8::Local<v8::Context> context =
|
| + v8::Local<v8::Context>::New(isolate_, context_);
|
| v8::Handle<v8::Value> v8_result;
|
| - if (!converter.ToV8Value(var, context_, &v8_result))
|
| + if (!converter.ToV8Value(var, context, &v8_result))
|
| return false;
|
| if (!Equals(var, v8_result))
|
| return false;
|
| - if (!converter.FromV8Value(v8_result, context_, result))
|
| + if (!converter.FromV8Value(v8_result, context, result))
|
| return false;
|
| return true;
|
| }
|
| @@ -177,6 +177,8 @@ class V8VarConverterTest : public testing::Test {
|
| return TestEqual(expected.get(), actual.get());
|
| }
|
|
|
| + v8::Isolate* isolate_;
|
| +
|
| // Context for the JavaScript in the test.
|
| v8::Persistent<v8::Context> context_;
|
|
|
| @@ -305,8 +307,8 @@ TEST_F(V8VarConverterTest, StrangeDictionaryKeyTest) {
|
|
|
| {
|
| // Test non-string key types. They should be cast to strings.
|
| - v8::Context::Scope context_scope(context_);
|
| - v8::HandleScope handle_scope;
|
| + v8::HandleScope handle_scope(isolate_);
|
| + v8::Context::Scope context_scope(isolate_, context_);
|
|
|
| const char* source = "(function() {"
|
| "return {"
|
| @@ -325,7 +327,8 @@ TEST_F(V8VarConverterTest, StrangeDictionaryKeyTest) {
|
|
|
| V8VarConverter converter;
|
| PP_Var actual;
|
| - ASSERT_TRUE(converter.FromV8Value(object, context_, &actual));
|
| + ASSERT_TRUE(converter.FromV8Value(
|
| + object, v8::Local<v8::Context>::New(isolate_, context_), &actual));
|
| ScopedPPVar release_actual(ScopedPPVar::PassRef(), actual);
|
|
|
| scoped_refptr<DictionaryVar> expected(new DictionaryVar);
|
|
|