Browse Source

test: drop Isolate::GetCurrent() from addon tests

v8::Isolate::GetCurrent() is not exactly deprecated at this point but
its use is strongly discouraged.  Update the addon tests so they no
longer use it.

PR-URL: https://github.com/nodejs/node/pull/2427
Reviewed-By: Trevor Norris <trev.norris@gmail.com>
v4.0.0-rc
Ben Noordhuis 9 years ago
parent
commit
71119284f9
  1. 8
      test/addons/async-hello-world/binding.cc
  2. 6
      test/addons/at-exit/binding.cc
  3. 2
      test/addons/hello-world-function-export/binding.cc
  4. 2
      test/addons/hello-world/binding.cc

8
test/addons/async-hello-world/binding.cc

@ -7,6 +7,7 @@ struct async_req {
uv_work_t req;
int input;
int output;
v8::Isolate* isolate;
v8::Persistent<v8::Function> callback;
};
@ -17,9 +18,9 @@ void DoAsync(uv_work_t* r) {
}
void AfterAsync(uv_work_t* r) {
v8::Isolate* isolate = v8::Isolate::GetCurrent();
v8::HandleScope scope(isolate);
async_req* req = reinterpret_cast<async_req*>(r->data);
v8::Isolate* isolate = req->isolate;
v8::HandleScope scope(isolate);
v8::Handle<v8::Value> argv[2] = {
v8::Null(isolate),
@ -42,7 +43,7 @@ void AfterAsync(uv_work_t* r) {
}
void Method(const v8::FunctionCallbackInfo<v8::Value>& args) {
v8::Isolate* isolate = v8::Isolate::GetCurrent();
v8::Isolate* isolate = args.GetIsolate();
v8::HandleScope scope(isolate);
async_req* req = new async_req;
@ -50,6 +51,7 @@ void Method(const v8::FunctionCallbackInfo<v8::Value>& args) {
req->input = args[0]->IntegerValue();
req->output = 0;
req->isolate = isolate;
v8::Local<v8::Function> callback = v8::Local<v8::Function>::Cast(args[1]);
req->callback.Reset(isolate, callback);

6
test/addons/at-exit/binding.cc

@ -16,10 +16,8 @@ static int at_exit_cb1_called = 0;
static int at_exit_cb2_called = 0;
static void at_exit_cb1(void* arg) {
// FIXME(bnoordhuis) Isolate::GetCurrent() is on its way out.
Isolate* isolate = Isolate::GetCurrent();
Isolate* isolate = static_cast<Isolate*>(arg);
HandleScope handle_scope(isolate);
assert(arg == 0);
Local<Object> obj = Object::New(isolate);
assert(!obj.IsEmpty()); // Assert VM is still alive.
assert(obj->IsObject());
@ -37,7 +35,7 @@ static void sanity_check(void) {
}
void init(Handle<Object> target) {
AtExit(at_exit_cb1);
AtExit(at_exit_cb1, target->CreationContext()->GetIsolate());
AtExit(at_exit_cb2, cookie);
AtExit(at_exit_cb2, cookie);
atexit(sanity_check);

2
test/addons/hello-world-function-export/binding.cc

@ -2,7 +2,7 @@
#include <v8.h>
void Method(const v8::FunctionCallbackInfo<v8::Value>& args) {
v8::Isolate* isolate = v8::Isolate::GetCurrent();
v8::Isolate* isolate = args.GetIsolate();
v8::HandleScope scope(isolate);
args.GetReturnValue().Set(v8::String::NewFromUtf8(isolate, "world"));
}

2
test/addons/hello-world/binding.cc

@ -2,7 +2,7 @@
#include <v8.h>
void Method(const v8::FunctionCallbackInfo<v8::Value>& args) {
v8::Isolate* isolate = v8::Isolate::GetCurrent();
v8::Isolate* isolate = args.GetIsolate();
v8::HandleScope scope(isolate);
args.GetReturnValue().Set(v8::String::NewFromUtf8(isolate, "world"));
}

Loading…
Cancel
Save