| OLD | NEW |
| 1 // Copyright 2010 the V8 project authors. All rights reserved. | 1 // Copyright 2010 the V8 project authors. All rights reserved. |
| 2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
| 3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
| 4 // met: | 4 // met: |
| 5 // | 5 // |
| 6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
| 7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
| 8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
| 9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
| 10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
| (...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 293 profiler->StartProfiling("2"); | 293 profiler->StartProfiling("2"); |
| 294 CHECK_EQ(0, profiler->GetProfilesCount()); | 294 CHECK_EQ(0, profiler->GetProfilesCount()); |
| 295 profiler->DeleteAllProfiles(); | 295 profiler->DeleteAllProfiles(); |
| 296 CHECK_EQ(0, profiler->GetProfilesCount()); | 296 CHECK_EQ(0, profiler->GetProfilesCount()); |
| 297 } | 297 } |
| 298 | 298 |
| 299 | 299 |
| 300 TEST(DeleteCpuProfile) { | 300 TEST(DeleteCpuProfile) { |
| 301 LocalContext env; | 301 LocalContext env; |
| 302 v8::HandleScope scope(env->GetIsolate()); | 302 v8::HandleScope scope(env->GetIsolate()); |
| 303 v8::CpuProfiler* cpu_profiler = env->GetIsolate()->GetCpuProfiler(); |
| 303 | 304 |
| 304 CHECK_EQ(0, v8::CpuProfiler::GetProfilesCount()); | 305 CHECK_EQ(0, cpu_profiler->GetProfileCount()); |
| 305 v8::Local<v8::String> name1 = v8::String::New("1"); | 306 v8::Local<v8::String> name1 = v8::String::New("1"); |
| 306 v8::CpuProfiler::StartProfiling(name1); | 307 cpu_profiler->StartCpuProfiling(name1); |
| 307 const v8::CpuProfile* p1 = v8::CpuProfiler::StopProfiling(name1); | 308 const v8::CpuProfile* p1 = cpu_profiler->StopCpuProfiling(name1); |
| 308 CHECK_NE(NULL, p1); | 309 CHECK_NE(NULL, p1); |
| 309 CHECK_EQ(1, v8::CpuProfiler::GetProfilesCount()); | 310 CHECK_EQ(1, cpu_profiler->GetProfileCount()); |
| 310 unsigned uid1 = p1->GetUid(); | 311 unsigned uid1 = p1->GetUid(); |
| 311 CHECK_EQ(p1, v8::CpuProfiler::FindProfile(uid1)); | 312 CHECK_EQ(p1, cpu_profiler->FindCpuProfile(uid1)); |
| 312 const_cast<v8::CpuProfile*>(p1)->Delete(); | 313 const_cast<v8::CpuProfile*>(p1)->Delete(); |
| 313 CHECK_EQ(0, v8::CpuProfiler::GetProfilesCount()); | 314 CHECK_EQ(0, cpu_profiler->GetProfileCount()); |
| 314 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid1)); | 315 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid1)); |
| 315 | 316 |
| 316 v8::Local<v8::String> name2 = v8::String::New("2"); | 317 v8::Local<v8::String> name2 = v8::String::New("2"); |
| 317 v8::CpuProfiler::StartProfiling(name2); | 318 cpu_profiler->StartCpuProfiling(name2); |
| 318 const v8::CpuProfile* p2 = v8::CpuProfiler::StopProfiling(name2); | 319 const v8::CpuProfile* p2 = cpu_profiler->StopCpuProfiling(name2); |
| 319 CHECK_NE(NULL, p2); | 320 CHECK_NE(NULL, p2); |
| 320 CHECK_EQ(1, v8::CpuProfiler::GetProfilesCount()); | 321 CHECK_EQ(1, cpu_profiler->GetProfileCount()); |
| 321 unsigned uid2 = p2->GetUid(); | 322 unsigned uid2 = p2->GetUid(); |
| 322 CHECK_NE(static_cast<int>(uid1), static_cast<int>(uid2)); | 323 CHECK_NE(static_cast<int>(uid1), static_cast<int>(uid2)); |
| 323 CHECK_EQ(p2, v8::CpuProfiler::FindProfile(uid2)); | 324 CHECK_EQ(p2, cpu_profiler->FindCpuProfile(uid2)); |
| 324 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid1)); | 325 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid1)); |
| 325 v8::Local<v8::String> name3 = v8::String::New("3"); | 326 v8::Local<v8::String> name3 = v8::String::New("3"); |
| 326 v8::CpuProfiler::StartProfiling(name3); | 327 cpu_profiler->StartCpuProfiling(name3); |
| 327 const v8::CpuProfile* p3 = v8::CpuProfiler::StopProfiling(name3); | 328 const v8::CpuProfile* p3 = cpu_profiler->StopCpuProfiling(name3); |
| 328 CHECK_NE(NULL, p3); | 329 CHECK_NE(NULL, p3); |
| 329 CHECK_EQ(2, v8::CpuProfiler::GetProfilesCount()); | 330 CHECK_EQ(2, cpu_profiler->GetProfileCount()); |
| 330 unsigned uid3 = p3->GetUid(); | 331 unsigned uid3 = p3->GetUid(); |
| 331 CHECK_NE(static_cast<int>(uid1), static_cast<int>(uid3)); | 332 CHECK_NE(static_cast<int>(uid1), static_cast<int>(uid3)); |
| 332 CHECK_EQ(p3, v8::CpuProfiler::FindProfile(uid3)); | 333 CHECK_EQ(p3, cpu_profiler->FindCpuProfile(uid3)); |
| 333 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid1)); | 334 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid1)); |
| 334 const_cast<v8::CpuProfile*>(p2)->Delete(); | 335 const_cast<v8::CpuProfile*>(p2)->Delete(); |
| 335 CHECK_EQ(1, v8::CpuProfiler::GetProfilesCount()); | 336 CHECK_EQ(1, cpu_profiler->GetProfileCount()); |
| 336 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid2)); | 337 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid2)); |
| 337 CHECK_EQ(p3, v8::CpuProfiler::FindProfile(uid3)); | 338 CHECK_EQ(p3, cpu_profiler->FindCpuProfile(uid3)); |
| 338 const_cast<v8::CpuProfile*>(p3)->Delete(); | 339 const_cast<v8::CpuProfile*>(p3)->Delete(); |
| 339 CHECK_EQ(0, v8::CpuProfiler::GetProfilesCount()); | 340 CHECK_EQ(0, cpu_profiler->GetProfileCount()); |
| 340 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid3)); | 341 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid3)); |
| 341 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid2)); | 342 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid2)); |
| 342 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid1)); | 343 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid1)); |
| 343 } | 344 } |
| 344 | 345 |
| 345 | 346 |
| 346 TEST(DeleteCpuProfileDifferentTokens) { | 347 TEST(DeleteCpuProfileDifferentTokens) { |
| 347 LocalContext env; | 348 LocalContext env; |
| 348 v8::HandleScope scope(env->GetIsolate()); | 349 v8::HandleScope scope(env->GetIsolate()); |
| 350 v8::CpuProfiler* cpu_profiler = env->GetIsolate()->GetCpuProfiler(); |
| 349 | 351 |
| 350 CHECK_EQ(0, v8::CpuProfiler::GetProfilesCount()); | 352 CHECK_EQ(0, cpu_profiler->GetProfileCount()); |
| 351 v8::Local<v8::String> name1 = v8::String::New("1"); | 353 v8::Local<v8::String> name1 = v8::String::New("1"); |
| 352 v8::CpuProfiler::StartProfiling(name1); | 354 cpu_profiler->StartCpuProfiling(name1); |
| 353 const v8::CpuProfile* p1 = v8::CpuProfiler::StopProfiling(name1); | 355 const v8::CpuProfile* p1 = cpu_profiler->StopCpuProfiling(name1); |
| 354 CHECK_NE(NULL, p1); | 356 CHECK_NE(NULL, p1); |
| 355 CHECK_EQ(1, v8::CpuProfiler::GetProfilesCount()); | 357 CHECK_EQ(1, cpu_profiler->GetProfileCount()); |
| 356 unsigned uid1 = p1->GetUid(); | 358 unsigned uid1 = p1->GetUid(); |
| 357 CHECK_EQ(p1, v8::CpuProfiler::FindProfile(uid1)); | 359 CHECK_EQ(p1, cpu_profiler->FindCpuProfile(uid1)); |
| 358 v8::Local<v8::String> token1 = v8::String::New("token1"); | 360 v8::Local<v8::String> token1 = v8::String::New("token1"); |
| 359 const v8::CpuProfile* p1_t1 = v8::CpuProfiler::FindProfile(uid1, token1); | 361 const v8::CpuProfile* p1_t1 = cpu_profiler->FindCpuProfile(uid1, token1); |
| 360 CHECK_NE(NULL, p1_t1); | 362 CHECK_NE(NULL, p1_t1); |
| 361 CHECK_NE(p1, p1_t1); | 363 CHECK_NE(p1, p1_t1); |
| 362 CHECK_EQ(1, v8::CpuProfiler::GetProfilesCount()); | 364 CHECK_EQ(1, cpu_profiler->GetProfileCount()); |
| 363 const_cast<v8::CpuProfile*>(p1)->Delete(); | 365 const_cast<v8::CpuProfile*>(p1)->Delete(); |
| 364 CHECK_EQ(0, v8::CpuProfiler::GetProfilesCount()); | 366 CHECK_EQ(0, cpu_profiler->GetProfileCount()); |
| 365 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid1)); | 367 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid1)); |
| 366 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid1, token1)); | 368 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid1, token1)); |
| 367 const_cast<v8::CpuProfile*>(p1_t1)->Delete(); | 369 const_cast<v8::CpuProfile*>(p1_t1)->Delete(); |
| 368 CHECK_EQ(0, v8::CpuProfiler::GetProfilesCount()); | 370 CHECK_EQ(0, cpu_profiler->GetProfileCount()); |
| 369 | 371 |
| 370 v8::Local<v8::String> name2 = v8::String::New("2"); | 372 v8::Local<v8::String> name2 = v8::String::New("2"); |
| 371 v8::CpuProfiler::StartProfiling(name2); | 373 cpu_profiler->StartCpuProfiling(name2); |
| 372 v8::Local<v8::String> token2 = v8::String::New("token2"); | 374 v8::Local<v8::String> token2 = v8::String::New("token2"); |
| 373 const v8::CpuProfile* p2_t2 = v8::CpuProfiler::StopProfiling(name2, token2); | 375 const v8::CpuProfile* p2_t2 = cpu_profiler->StopCpuProfiling(name2, token2); |
| 374 CHECK_NE(NULL, p2_t2); | 376 CHECK_NE(NULL, p2_t2); |
| 375 CHECK_EQ(1, v8::CpuProfiler::GetProfilesCount()); | 377 CHECK_EQ(1, cpu_profiler->GetProfileCount()); |
| 376 unsigned uid2 = p2_t2->GetUid(); | 378 unsigned uid2 = p2_t2->GetUid(); |
| 377 CHECK_NE(static_cast<int>(uid1), static_cast<int>(uid2)); | 379 CHECK_NE(static_cast<int>(uid1), static_cast<int>(uid2)); |
| 378 const v8::CpuProfile* p2 = v8::CpuProfiler::FindProfile(uid2); | 380 const v8::CpuProfile* p2 = cpu_profiler->FindCpuProfile(uid2); |
| 379 CHECK_NE(p2_t2, p2); | 381 CHECK_NE(p2_t2, p2); |
| 380 v8::Local<v8::String> name3 = v8::String::New("3"); | 382 v8::Local<v8::String> name3 = v8::String::New("3"); |
| 381 v8::CpuProfiler::StartProfiling(name3); | 383 cpu_profiler->StartCpuProfiling(name3); |
| 382 const v8::CpuProfile* p3 = v8::CpuProfiler::StopProfiling(name3); | 384 const v8::CpuProfile* p3 = cpu_profiler->StopCpuProfiling(name3); |
| 383 CHECK_NE(NULL, p3); | 385 CHECK_NE(NULL, p3); |
| 384 CHECK_EQ(2, v8::CpuProfiler::GetProfilesCount()); | 386 CHECK_EQ(2, cpu_profiler->GetProfileCount()); |
| 385 unsigned uid3 = p3->GetUid(); | 387 unsigned uid3 = p3->GetUid(); |
| 386 CHECK_NE(static_cast<int>(uid1), static_cast<int>(uid3)); | 388 CHECK_NE(static_cast<int>(uid1), static_cast<int>(uid3)); |
| 387 CHECK_EQ(p3, v8::CpuProfiler::FindProfile(uid3)); | 389 CHECK_EQ(p3, cpu_profiler->FindCpuProfile(uid3)); |
| 388 const_cast<v8::CpuProfile*>(p2_t2)->Delete(); | 390 const_cast<v8::CpuProfile*>(p2_t2)->Delete(); |
| 389 CHECK_EQ(1, v8::CpuProfiler::GetProfilesCount()); | 391 CHECK_EQ(1, cpu_profiler->GetProfileCount()); |
| 390 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid2)); | 392 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid2)); |
| 391 CHECK_EQ(p3, v8::CpuProfiler::FindProfile(uid3)); | 393 CHECK_EQ(p3, cpu_profiler->FindCpuProfile(uid3)); |
| 392 const_cast<v8::CpuProfile*>(p2)->Delete(); | 394 const_cast<v8::CpuProfile*>(p2)->Delete(); |
| 393 CHECK_EQ(1, v8::CpuProfiler::GetProfilesCount()); | 395 CHECK_EQ(1, cpu_profiler->GetProfileCount()); |
| 394 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid2)); | 396 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid2)); |
| 395 CHECK_EQ(p3, v8::CpuProfiler::FindProfile(uid3)); | 397 CHECK_EQ(p3, cpu_profiler->FindCpuProfile(uid3)); |
| 396 const_cast<v8::CpuProfile*>(p3)->Delete(); | 398 const_cast<v8::CpuProfile*>(p3)->Delete(); |
| 397 CHECK_EQ(0, v8::CpuProfiler::GetProfilesCount()); | 399 CHECK_EQ(0, cpu_profiler->GetProfileCount()); |
| 398 CHECK_EQ(NULL, v8::CpuProfiler::FindProfile(uid3)); | 400 CHECK_EQ(NULL, cpu_profiler->FindCpuProfile(uid3)); |
| 399 } | 401 } |
| OLD | NEW |