Index: test/cctest/test-api.cc |
diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc |
index 7cb3c04087b69d5238b904861e20d4aaf75fc3fa..3959642a209a7bac64cc75984ba2c983c311baaf 100644 |
--- a/test/cctest/test-api.cc |
+++ b/test/cctest/test-api.cc |
@@ -3511,6 +3511,7 @@ static void check_message_0(v8::Handle<v8::Message> message, |
CHECK_EQ(5.76, data->NumberValue()); |
CHECK_EQ(6.75, message->GetScriptResourceName()->NumberValue()); |
CHECK_EQ(7.56, message->GetScriptData()->NumberValue()); |
+ CHECK(!message->DidPassAccessCheck()); |
message_received = true; |
} |
@@ -3537,6 +3538,7 @@ static void check_message_1(v8::Handle<v8::Message> message, |
v8::Handle<Value> data) { |
CHECK(data->IsNumber()); |
CHECK_EQ(1337, data->Int32Value()); |
+ CHECK(!message->DidPassAccessCheck()); |
message_received = true; |
} |
@@ -3565,6 +3567,34 @@ static void check_message_2(v8::Handle<v8::Message> message, |
} |
+static void check_message_3(v8::Handle<v8::Message> message, |
+ v8::Handle<Value> data) { |
+ CHECK(message->DidPassAccessCheck()); |
+ CHECK_EQ(6.75, message->GetScriptResourceName()->NumberValue()); |
+ message_received = true; |
+} |
+ |
+ |
+THREADED_TEST(MessageHandler3) { |
Michael Starzinger
2013/07/30 09:52:55
This test is not thread-safe as it uses global sta
|
+ message_received = false; |
+ v8::HandleScope scope(v8::Isolate::GetCurrent()); |
+ 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::Handle<v8::Script> script = Script::Compile(v8_str("throw 'error'"), |
+ &origin); |
+ script->Run(); |
+ CHECK(message_received); |
+ // clear out the message listener |
+ v8::V8::RemoveMessageListeners(check_message_3); |
+} |
+ |
+ |
TEST(MessageHandler2) { |
Michael Starzinger
2013/07/30 09:52:55
nit: Can we move the new test to below this one so
Mike West
2013/07/30 10:01:58
That looks like poor copy/paste on my part. I'll m
|
message_received = false; |
v8::HandleScope scope(v8::Isolate::GetCurrent()); |