Chromium Code Reviews| Index: test/cctest/test-cpu-profiler.cc |
| diff --git a/test/cctest/test-cpu-profiler.cc b/test/cctest/test-cpu-profiler.cc |
| index 188fbd948066ade0def73c4c894d1ba515aa5477..0d393c31161e1a281bc5c1524d261fa66843d1fd 100644 |
| --- a/test/cctest/test-cpu-profiler.cc |
| +++ b/test/cctest/test-cpu-profiler.cc |
| @@ -497,7 +497,8 @@ static const char* cpu_profiler_test_source = "function loop(timeout) {\n" |
| " var duration = Date.now() - start;\n" |
| " } while (duration < timeout);\n" |
| " return duration;\n" |
| -"}\n"; |
| +"}\n" |
| +"//# sourceURL=cpu_profiler_test_source.js"; |
| // Check that the profile tree for the script above will look like the |
| @@ -528,15 +529,21 @@ TEST(CollectCpuProfile) { |
| v8::CpuProfiler* cpu_profiler = env->GetIsolate()->GetCpuProfiler(); |
| v8::Local<v8::String> profile_name = v8::String::New("my_profile"); |
| - cpu_profiler->StartCpuProfiling(profile_name); |
| int32_t profiling_interval_ms = 200; |
| #if defined(_WIN32) || defined(_WIN64) |
| // 200ms is not enough on Windows. See |
| // https://code.google.com/p/v8/issues/detail?id=2628 |
| profiling_interval_ms = 500; |
| #endif |
| + |
| + // Warm up. |
| v8::Handle<v8::Value> args[] = { v8::Integer::New(profiling_interval_ms) }; |
| function->Call(env->Global(), ARRAY_SIZE(args), args); |
| + |
| + cpu_profiler->StartCpuProfiling(profile_name); |
| + |
| + function->Call(env->Global(), ARRAY_SIZE(args), args); |
| + |
| const v8::CpuProfile* profile = cpu_profiler->StopCpuProfiling(profile_name); |
| CHECK_NE(NULL, profile); |
| @@ -553,6 +560,8 @@ TEST(CollectCpuProfile) { |
| CheckChildrenNames(root, names); |
| const v8::CpuProfileNode* startNode = GetChild(root, "start"); |
| + CHECK_EQ(v8::String::New("cpu_profiler_test_source.js"), |
|
yurys
2013/06/11 11:23:06
I'd rather have it tested in a separate test.
|
| + startNode->GetScriptResourceName()); |
| CHECK_EQ(1, startNode->GetChildrenCount()); |
| const v8::CpuProfileNode* fooNode = GetChild(startNode, "foo"); |