| Index: test/cctest/test-api.cc
|
| diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
|
| index 7ca6b9cdb3858303a0a011bbcb03ae02e81afc59..6dbe10e133511337f19d87e4a4f29e147d2fd953 100644
|
| --- a/test/cctest/test-api.cc
|
| +++ b/test/cctest/test-api.cc
|
| @@ -23605,6 +23605,31 @@ TEST(ScriptPositionInfo) {
|
| CHECK(!script1->GetPositionInfo(220384, &info, script1->NO_OFFSET));
|
| }
|
|
|
| +TEST(ScriptIsModule) {
|
| + LocalContext env;
|
| + v8::Isolate* isolate = env->GetIsolate();
|
| + v8::HandleScope scope(isolate);
|
| + const char* url = "http://www.foo.com/foo.js";
|
| + v8::ScriptOrigin origin(v8_str(url), v8::Integer::New(isolate, 1));
|
| + v8::ScriptCompiler::Source script_source(v8_str("void 0;\n"), origin);
|
| + Local<Script> local_script;
|
| + i::Handle<i::SharedFunctionInfo> fn_info;
|
| +
|
| + local_script =
|
| + v8::ScriptCompiler::Compile(env.local(), &script_source).ToLocalChecked();
|
| + fn_info = i::Handle<i::SharedFunctionInfo>::cast(
|
| + v8::Utils::OpenHandle(*local_script->GetUnboundScript()));
|
| + i::Handle<i::Script> globalScript(i::Script::cast(fn_info->script()));
|
| + CHECK_EQ(false, globalScript->is_module());
|
| +
|
| + local_script = v8::ScriptCompiler::CompileModule(env.local(), &script_source)
|
| + .ToLocalChecked();
|
| + fn_info = i::Handle<i::SharedFunctionInfo>::cast(
|
| + v8::Utils::OpenHandle(*local_script->GetUnboundScript()));
|
| + i::Handle<i::Script> moduleScript(i::Script::cast(fn_info->script()));
|
| + CHECK_EQ(true, moduleScript->is_module());
|
| +}
|
| +
|
| void CheckMagicComments(Local<Script> script, const char* expected_source_url,
|
| const char* expected_source_mapping_url) {
|
| if (expected_source_url != NULL) {
|
|
|