Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "components/metrics/metrics_service.h" | 5 #include "components/metrics/metrics_service.h" |
| 6 | 6 |
| 7 #include <string> | 7 #include <string> |
| 8 | 8 |
| 9 #include "base/bind.h" | 9 #include "base/bind.h" |
| 10 #include "base/memory/scoped_ptr.h" | 10 #include "base/memory/scoped_ptr.h" |
| (...skipping 398 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 409 pma2.reset(base::HistogramBase::ReleaseDefaultPersistentMemoryAllocator()); | 409 pma2.reset(base::HistogramBase::ReleaseDefaultPersistentMemoryAllocator()); |
| 410 | 410 |
| 411 base::HistogramBase::SetDefaultPersistentMemoryAllocator( | 411 base::HistogramBase::SetDefaultPersistentMemoryAllocator( |
| 412 new base::LocalPersistentMemoryAllocator(64 << 10, std::string())); | 412 new base::LocalPersistentMemoryAllocator(64 << 10, std::string())); |
| 413 | 413 |
| 414 TestMetricsServiceClient client; | 414 TestMetricsServiceClient client; |
| 415 TestMetricsService service( | 415 TestMetricsService service( |
| 416 GetMetricsStateManager(), &client, GetLocalState()); | 416 GetMetricsStateManager(), &client, GetLocalState()); |
| 417 | 417 |
| 418 { | 418 { |
| 419 MetricsService::PersistentHistogramIterator i = service.persistent_begin(); | 419 MetricsService::HistogramSet found; |
| 420 MetricsService::PersistentHistogramIterator i = | |
| 421 service.persistent_begin(&found); | |
| 420 EXPECT_EQ(service.persistent_end(), i); | 422 EXPECT_EQ(service.persistent_end(), i); |
| 423 STLDeleteElements(&found); | |
| 421 } | 424 } |
| 422 | 425 |
| 423 LOCAL_HISTOGRAM_COUNTS("MetricsServiceTest.MPA3A", 30); | 426 LOCAL_HISTOGRAM_COUNTS("MetricsServiceTest.MPA3A", 30); |
| 424 { | 427 { |
| 425 MetricsService::PersistentHistogramIterator i = service.persistent_begin(); | 428 MetricsService::HistogramSet found; |
| 429 MetricsService::PersistentHistogramIterator i = | |
| 430 service.persistent_begin(&found); | |
| 426 EXPECT_EQ(service.persistent_end(), i); | 431 EXPECT_EQ(service.persistent_end(), i); |
| 432 STLDeleteElements(&found); | |
|
Alexei Svitkine (slow)
2015/12/04 18:30:11
Can HistogramSet have scoped_ptrs as members, so t
bcwhite
2015/12/08 17:32:18
Yes, though it makes it impossible do do some thin
| |
| 427 } | 433 } |
| 428 | 434 |
| 429 service.AddPersistentMemorySegment(pma1.get()); | 435 service.AddPersistentMemorySegment(pma1.get()); |
| 430 { | 436 { |
| 431 MetricsService::PersistentHistogramIterator i = service.persistent_begin(); | 437 MetricsService::HistogramSet found; |
| 438 MetricsService::PersistentHistogramIterator i = | |
| 439 service.persistent_begin(&found); | |
| 432 EXPECT_NE(service.persistent_end(), i); | 440 EXPECT_NE(service.persistent_end(), i); |
| 433 EXPECT_TRUE(*i); | 441 EXPECT_TRUE(*i); |
| 434 EXPECT_NE(service.persistent_end(), ++i); | 442 EXPECT_NE(service.persistent_end(), ++i); |
| 435 EXPECT_TRUE(*i); | 443 EXPECT_TRUE(*i); |
| 436 EXPECT_EQ(service.persistent_end(), ++i); | 444 EXPECT_EQ(service.persistent_end(), ++i); |
| 445 STLDeleteElements(&found); | |
| 437 } | 446 } |
| 438 | 447 |
| 439 service.AddPersistentMemorySegment(pma2.get()); | 448 service.AddPersistentMemorySegment(pma2.get()); |
| 440 { | 449 { |
| 441 MetricsService::PersistentHistogramIterator i = service.persistent_begin(); | 450 MetricsService::HistogramSet found; |
| 451 MetricsService::PersistentHistogramIterator i = | |
| 452 service.persistent_begin(&found); | |
| 442 EXPECT_NE(service.persistent_end(), i); | 453 EXPECT_NE(service.persistent_end(), i); |
| 443 EXPECT_NE(service.persistent_end(), ++i); | 454 EXPECT_NE(service.persistent_end(), ++i); |
| 444 EXPECT_NE(service.persistent_end(), ++i); | 455 EXPECT_NE(service.persistent_end(), ++i); |
| 445 EXPECT_NE(service.persistent_end(), ++i); | 456 EXPECT_NE(service.persistent_end(), ++i); |
| 446 EXPECT_NE(service.persistent_end(), ++i); | 457 EXPECT_NE(service.persistent_end(), ++i); |
| 447 EXPECT_NE(service.persistent_end(), ++i); | 458 EXPECT_NE(service.persistent_end(), ++i); |
| 448 EXPECT_EQ(service.persistent_end(), ++i); | 459 EXPECT_EQ(service.persistent_end(), ++i); |
| 460 STLDeleteElements(&found); | |
| 449 } | 461 } |
| 450 } | 462 } |
| 451 | 463 |
| 452 } // namespace metrics | 464 } // namespace metrics |
| OLD | NEW |