Lines Matching full:base
9 #include "base/files/file_path.h"
10 #include "base/files/file_util.h"
11 #include "base/files/memory_mapped_file.h"
12 #include "base/files/scoped_temp_dir.h"
13 #include "base/functional/bind.h"
14 #include "base/functional/callback.h"
15 #include "base/memory/raw_ptr.h"
16 #include "base/metrics/histogram.h"
17 #include "base/metrics/histogram_base.h"
18 #include "base/metrics/histogram_flattener.h"
19 #include "base/metrics/histogram_snapshot_manager.h"
20 #include "base/metrics/persistent_histogram_allocator.h"
21 #include "base/metrics/persistent_memory_allocator.h"
22 #include "base/metrics/sparse_histogram.h"
23 #include "base/metrics/statistics_recorder.h"
24 #include "base/strings/stringprintf.h"
25 #include "base/synchronization/waitable_event.h"
26 #include "base/test/bind.h"
27 #include "base/test/metrics/histogram_tester.h"
28 #include "base/test/task_environment.h"
29 #include "base/time/time.h"
47 base::PersistentHistogramAllocator* allocator) { in WriteSystemProfileToAllocator()
63 class HistogramFlattenerDeltaRecorder : public base::HistogramFlattener {
72 void RecordDelta(const base::HistogramBase& histogram, in RecordDelta()
73 const base::HistogramSamples& snapshot) override { in RecordDelta()
101 void SetSourcesCheckedCallback(base::RepeatingClosure callback) { in SetSourcesCheckedCallback()
117 base::RepeatingClosure callback_;
134 base::StatisticsRecorder::CreateTemporaryForTesting()), in FileMetricsProviderTest()
147 DCHECK(!base::GlobalHistogramAllocator::Get()); in ~FileMetricsProviderTest()
150 base::test::TaskEnvironment* task_environment() { return &task_environment_; } in task_environment()
152 base::FilePath temp_dir() { return temp_dir_.GetPath(); } in temp_dir()
153 base::FilePath metrics_file() { in metrics_file()
171 /*done_callback=*/base::DoNothing()); in MergeHistogramDeltas()
178 base::HistogramSnapshotManager* snapshot_manager) { in ProvideIndependentMetrics()
182 base::DoNothing(), in ProvideIndependentMetrics()
183 base::BindOnce( in ProvideIndependentMetrics()
197 base::HistogramSnapshotManager* snapshot_manager) { in RecordInitialHistogramSnapshots()
207 base::HistogramSnapshotManager snapshot_manager(&flattener); in GetSnapshotHistogramCount()
209 base::StatisticsRecorder::PrepareDeltas(true, base::Histogram::kNoFlags, in GetSnapshotHistogramCount()
210 base::Histogram::kNoFlags, in GetSnapshotHistogramCount()
217 base::HistogramSnapshotManager snapshot_manager(&flattener); in GetIndependentHistogramCount()
219 provider()->ProvideIndependentMetrics(base::DoNothing(), in GetIndependentHistogramCount()
220 base::BindOnce([](bool success) {}), in GetIndependentHistogramCount()
234 created_histograms_[0] = base::SparseHistogram::FactoryGet( in CreateGlobalHistograms()
235 "h0", /*flags=*/base::HistogramBase::Flags::kUmaStabilityHistogramFlag); in CreateGlobalHistograms()
238 created_histograms_[i] = base::Histogram::FactoryGet( in CreateGlobalHistograms()
239 base::StringPrintf("h%d", i), 1, 100, 10, in CreateGlobalHistograms()
240 /*flags=*/base::HistogramBase::Flags::kUmaStabilityHistogramFlag); in CreateGlobalHistograms()
245 void WriteMetricsFile(const base::FilePath& path, in WriteMetricsFile()
246 base::PersistentHistogramAllocator* metrics) { in WriteMetricsFile()
247 base::File writer(path, in WriteMetricsFile()
248 base::File::FLAG_CREATE_ALWAYS | base::File::FLAG_WRITE); in WriteMetricsFile()
256 void WriteMetricsFileAtTime(const base::FilePath& path, in WriteMetricsFileAtTime()
257 base::PersistentHistogramAllocator* metrics, in WriteMetricsFileAtTime()
258 base::Time write_time) { in WriteMetricsFileAtTime()
260 base::TouchFile(path, write_time, write_time); in WriteMetricsFileAtTime()
263 base::GlobalHistogramAllocator* CreateMetricsFileWithHistograms( in CreateMetricsFileWithHistograms()
264 const base::FilePath& file_path, in CreateMetricsFileWithHistograms()
265 base::Time write_time, in CreateMetricsFileWithHistograms()
267 base::OnceCallback<void(base::PersistentHistogramAllocator*)> callback) { in CreateMetricsFileWithHistograms()
268 base::GlobalHistogramAllocator::CreateWithLocalMemory( in CreateMetricsFileWithHistograms()
274 base::GlobalHistogramAllocator* histogram_allocator = in CreateMetricsFileWithHistograms()
275 base::GlobalHistogramAllocator::ReleaseForTesting(); in CreateMetricsFileWithHistograms()
282 base::GlobalHistogramAllocator* CreateMetricsFileWithHistograms( in CreateMetricsFileWithHistograms()
285 metrics_file(), base::Time::Now(), histogram_count, in CreateMetricsFileWithHistograms()
286 base::BindOnce([](base::PersistentHistogramAllocator* allocator) {})); in CreateMetricsFileWithHistograms()
289 base::HistogramBase* GetCreatedHistogram(int index) { in GetCreatedHistogram()
299 params->filter = base::BindRepeating( in SetFilterActions()
300 &FileMetricsProviderTest::FilterSourcePath, base::Unretained(this)); in SetFilterActions()
307 const base::FilePath& path) { in FilterSourcePath()
313 base::test::TaskEnvironment task_environment_;
314 std::unique_ptr<base::StatisticsRecorder> statistics_recorder_;
315 base::ScopedTempDir temp_dir_;
318 base::HistogramBase* created_histograms_[kMaxCreateHistograms];
332 base::HistogramTester histogram_tester; in TEST_P()
334 base::Time metrics_time = base::Time::Now() - base::Minutes(5); in TEST_P()
335 base::GlobalHistogramAllocator* histogram_allocator = in TEST_P()
338 base::TouchFile(metrics_file(), metrics_time, metrics_time); in TEST_P()
353 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
370 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
373 metrics_time = metrics_time + base::Minutes(1); in TEST_P()
382 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
388 base::Time metrics_time = base::Time::Now() - base::Hours(5); in TEST_P()
391 base::TouchFile(metrics_file(), metrics_time, metrics_time); in TEST_P()
397 params.max_age = base::Hours(1); in TEST_P()
404 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
410 base::Time now_time = base::Time::Now(); in TEST_P()
411 base::Time metrics_time = now_time - base::Minutes(5); in TEST_P()
414 base::TouchFile(metrics_file(), metrics_time, metrics_time); in TEST_P()
415 base::File::Info fileinfo; in TEST_P()
416 ASSERT_TRUE(base::GetFileInfo(metrics_file(), &fileinfo)); in TEST_P()
417 EXPECT_GT(base::Time::Now(), fileinfo.last_modified); in TEST_P()
434 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
435 ASSERT_TRUE(base::GetFileInfo(metrics_file(), &fileinfo)); in TEST_P()
437 EXPECT_LE(now_time - base::Seconds(2), fileinfo.last_modified); in TEST_P()
443 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
449 base::Time now_time = base::Time::Now(); in TEST_P()
450 base::Time metrics_time = now_time - base::Minutes(5); in TEST_P()
453 base::TouchFile(metrics_file(), metrics_time, metrics_time); in TEST_P()
454 base::File::Info fileinfo; in TEST_P()
455 ASSERT_TRUE(base::GetFileInfo(metrics_file(), &fileinfo)); in TEST_P()
456 EXPECT_GT(base::Time::Now(), fileinfo.last_modified); in TEST_P()
471 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
477 base::GlobalHistogramAllocator::CreateWithLocalMemory( in TEST_P()
479 base::GlobalHistogramAllocator* allocator = in TEST_P()
480 base::GlobalHistogramAllocator::Get(); in TEST_P()
481 base::HistogramBase* histogram; in TEST_P()
484 base::Time base_time = base::Time::Now() - base::Minutes(10); in TEST_P()
488 base::ScopedTempDir metrics_files; in TEST_P()
495 histogram = base::Histogram::FactoryGet("h1", 1, 100, 10, 0); in TEST_P()
498 allocator, base_time + base::Minutes(1)); in TEST_P()
500 histogram = base::Histogram::FactoryGet("h2", 1, 100, 10, 0); in TEST_P()
503 allocator, base_time + base::Minutes(2)); in TEST_P()
505 histogram = base::Histogram::FactoryGet("h3", 1, 100, 10, 0); in TEST_P()
508 allocator, base_time + base::Minutes(3)); in TEST_P()
510 histogram = base::Histogram::FactoryGet("h4", 1, 100, 10, 0); in TEST_P()
513 allocator, base_time + base::Minutes(4)); in TEST_P()
515 base::TouchFile(metrics_files.GetPath().AppendASCII("b3.pma"), in TEST_P()
516 base_time + base::Minutes(5), base_time + base::Minutes(5)); in TEST_P()
519 base_time + base::Minutes(6)); in TEST_P()
524 base::GlobalHistogramAllocator::ReleaseForTesting(); in TEST_P()
534 provider()->SetSourcesCheckedCallback(base::BindLambdaForTesting( in TEST_P()
544 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("a1.pma"))); in TEST_P()
545 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("c2.pma"))); in TEST_P()
546 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("b3.pma"))); in TEST_P()
547 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("d4.pma"))); in TEST_P()
549 base::PathExists(metrics_files.GetPath().AppendASCII(".foo.pma"))); in TEST_P()
551 base::PathExists(metrics_files.GetPath().AppendASCII("_bar.pma"))); in TEST_P()
552 EXPECT_TRUE(base::PathExists(metrics_files.GetPath().AppendASCII("baz"))); in TEST_P()
559 base::Time base_time = base::Time::Now() - base::Minutes(10); in TEST_P()
561 base::ScopedTempDir metrics_files; in TEST_P()
566 base_time + base::Minutes(1), 1, in TEST_P()
567 base::BindOnce([](base::PersistentHistogramAllocator* allocator) { in TEST_P()
569 base::PersistentMemoryAllocator::MEMORY_DELETED); in TEST_P()
574 base_time + base::Minutes(2), 2, in TEST_P()
575 base::BindOnce(&WriteSystemProfileToAllocator)); in TEST_P()
579 base_time + base::Minutes(3), 3, in TEST_P()
580 base::BindOnce([](base::PersistentHistogramAllocator* allocator) { in TEST_P()
582 base::PersistentMemoryAllocator::MEMORY_DELETED); in TEST_P()
586 base::File empty(metrics_files.GetPath().AppendASCII("h4.pma"), in TEST_P()
587 base::File::FLAG_CREATE | base::File::FLAG_WRITE); in TEST_P()
589 base::TouchFile(metrics_files.GetPath().AppendASCII("h4.pma"), in TEST_P()
590 base_time + base::Minutes(4), base_time + base::Minutes(4)); in TEST_P()
600 EXPECT_TRUE(base::PathExists(metrics_files.GetPath().AppendASCII("h1.pma"))); in TEST_P()
601 EXPECT_TRUE(base::PathExists(metrics_files.GetPath().AppendASCII("h2.pma"))); in TEST_P()
602 EXPECT_TRUE(base::PathExists(metrics_files.GetPath().AppendASCII("h3.pma"))); in TEST_P()
603 EXPECT_TRUE(base::PathExists(metrics_files.GetPath().AppendASCII("h4.pma"))); in TEST_P()
608 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("h1.pma"))); in TEST_P()
609 EXPECT_TRUE(base::PathExists(metrics_files.GetPath().AppendASCII("h2.pma"))); in TEST_P()
610 EXPECT_TRUE(base::PathExists(metrics_files.GetPath().AppendASCII("h3.pma"))); in TEST_P()
611 EXPECT_TRUE(base::PathExists(metrics_files.GetPath().AppendASCII("h4.pma"))); in TEST_P()
616 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("h2.pma"))); in TEST_P()
622 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("h3.pma"))); in TEST_P()
623 EXPECT_TRUE(base::PathExists(metrics_files.GetPath().AppendASCII("h4.pma"))); in TEST_P()
629 base::GlobalHistogramAllocator::CreateWithLocalMemory(64 << 10, 0, in TEST_P()
631 base::GlobalHistogramAllocator* allocator = in TEST_P()
632 base::GlobalHistogramAllocator::Get(); in TEST_P()
633 base::HistogramBase* histogram; in TEST_P()
637 base::ScopedTempDir metrics_files; in TEST_P()
639 histogram = base::Histogram::FactoryGet("h1", 1, 100, 10, 0); in TEST_P()
642 allocator, base::Time::Now() - base::Hours(1)); in TEST_P()
644 histogram = base::Histogram::FactoryGet("h2", 1, 100, 10, 0); in TEST_P()
647 allocator, base::Time::Now()); in TEST_P()
652 base::GlobalHistogramAllocator::ReleaseForTesting(); in TEST_P()
659 params.max_age = base::Minutes(30); in TEST_P()
670 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("a1.pma"))); in TEST_P()
671 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("b2.pma"))); in TEST_P()
677 base::GlobalHistogramAllocator::CreateWithLocalMemory(64 << 10, 0, in TEST_P()
679 base::GlobalHistogramAllocator* allocator = in TEST_P()
680 base::GlobalHistogramAllocator::Get(); in TEST_P()
681 base::HistogramBase* histogram; in TEST_P()
685 base::ScopedTempDir metrics_files; in TEST_P()
687 histogram = base::Histogram::FactoryGet("h1", 1, 100, 10, 0); in TEST_P()
690 allocator, base::Time::Now() - base::Hours(1)); in TEST_P()
692 histogram = base::Histogram::FactoryGet("h2", 1, 100, 10, 0); in TEST_P()
695 allocator, base::Time::Now()); in TEST_P()
700 base::GlobalHistogramAllocator::ReleaseForTesting(); in TEST_P()
718 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("a1.pma"))); in TEST_P()
719 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("b2.pma"))); in TEST_P()
730 base::GlobalHistogramAllocator::CreateWithLocalMemory(file_size_kib << 10, 0, in TEST_P()
732 base::GlobalHistogramAllocator* allocator = in TEST_P()
733 base::GlobalHistogramAllocator::Get(); in TEST_P()
734 base::HistogramBase* histogram; in TEST_P()
738 base::ScopedTempDir metrics_files; in TEST_P()
740 histogram = base::Histogram::FactoryGet("h1", 1, 100, 10, 0); in TEST_P()
743 allocator, base::Time::Now() - base::Hours(1)); in TEST_P()
745 histogram = base::Histogram::FactoryGet("h2", 1, 100, 10, 0); in TEST_P()
748 allocator, base::Time::Now()); in TEST_P()
753 base::GlobalHistogramAllocator::ReleaseForTesting(); in TEST_P()
771 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("a1.pma"))); in TEST_P()
772 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("b2.pma"))); in TEST_P()
778 base::GlobalHistogramAllocator::CreateWithLocalMemory(64 << 10, 0, in TEST_P()
780 base::GlobalHistogramAllocator* allocator = in TEST_P()
781 base::GlobalHistogramAllocator::Get(); in TEST_P()
782 base::HistogramBase* histogram; in TEST_P()
785 base::Time base_time = base::Time::Now() - base::Minutes(10); in TEST_P()
789 base::ScopedTempDir metrics_files; in TEST_P()
792 histogram = base::Histogram::FactoryGet("h1", 1, 100, 10, 0); in TEST_P()
795 allocator, base_time + base::Minutes(1)); in TEST_P()
797 histogram = base::Histogram::FactoryGet("h2", 1, 100, 10, 0); in TEST_P()
800 allocator, base_time + base::Minutes(2)); in TEST_P()
802 histogram = base::Histogram::FactoryGet("h3", 1, 100, 10, 0); in TEST_P()
805 allocator, base_time + base::Minutes(3)); in TEST_P()
807 histogram = base::Histogram::FactoryGet("h4", 1, 100, 10, 0); in TEST_P()
810 allocator, base_time + base::Minutes(4)); in TEST_P()
812 base::TouchFile(metrics_files.GetPath().AppendASCII("b3.pma"), in TEST_P()
813 base_time + base::Minutes(5), base_time + base::Minutes(5)); in TEST_P()
818 base::GlobalHistogramAllocator::ReleaseForTesting(); in TEST_P()
836 provider()->SetSourcesCheckedCallback(base::BindLambdaForTesting( in TEST_P()
846 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("a1.pma"))); in TEST_P()
847 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("c2.pma"))); in TEST_P()
848 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("b3.pma"))); in TEST_P()
849 EXPECT_FALSE(base::PathExists(metrics_files.GetPath().AppendASCII("d4.pma"))); in TEST_P()
855 base::GlobalHistogramAllocator::CreateWithFile( in TEST_P()
861 base::HistogramBase* h0 = GetCreatedHistogram(0); in TEST_P()
862 base::HistogramBase* h1 = GetCreatedHistogram(1); in TEST_P()
865 base::GlobalHistogramAllocator::ReleaseForTesting(); in TEST_P()
876 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
882 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
887 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
892 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
910 base::HistogramSnapshotManager snapshot_manager(&flattener); in TEST_P()
914 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
917 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
924 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
927 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
945 base::HistogramSnapshotManager snapshot_manager(&flattener); in TEST_P()
952 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
955 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
961 metrics_file(), base::Time::Now(), 2, in TEST_P()
962 base::BindOnce(&WriteSystemProfileToAllocator)); in TEST_P()
975 base::HistogramSnapshotManager snapshot_manager(&flattener); in TEST_P()
992 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
1011 base::HistogramSnapshotManager snapshot_manager(&flattener); in TEST_P()
1020 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
1023 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
1029 metrics_file(), base::Time::Now(), 2, in TEST_P()
1030 base::BindOnce(&WriteSystemProfileToAllocator)); in TEST_P()
1044 base::HistogramSnapshotManager snapshot_manager(&flattener); in TEST_P()
1056 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
1061 base::Time file_base_time = base::Time::Now(); in TEST_P()
1062 std::vector<base::FilePath> file_names; in TEST_P()
1065 metrics_file(), base::Time::Now(), 2, in TEST_P()
1066 base::BindOnce(&WriteSystemProfileToAllocator)); in TEST_P()
1070 base::FilePath file_name = temp_dir().AppendASCII(new_name).AddExtension( in TEST_P()
1071 base::PersistentMemoryAllocator::kFileExtension); in TEST_P()
1072 base::Time file_time = file_base_time - base::Minutes(file_count - i); in TEST_P()
1073 base::TouchFile(metrics_file(), file_time, file_time); in TEST_P()
1074 base::Move(metrics_file(), file_name); in TEST_P()
1088 base::HistogramSnapshotManager snapshot_manager(&flattener); in TEST_P()
1101 EXPECT_FALSE(base::PathExists(file_name)); in TEST_P()
1110 base::GlobalHistogramAllocator::CreateWithLocalMemory( in TEST_P()
1112 base::HistogramBase* h0 = base::SparseHistogram::FactoryGet( in TEST_P()
1113 "h0", /*flags=*/base::HistogramBase::Flags::kUmaStabilityHistogramFlag); in TEST_P()
1115 base::HistogramBase* h1 = base::SparseHistogram::FactoryGet( in TEST_P()
1116 "h1", /*flags=*/base::HistogramBase::Flags::kUmaTargetedHistogramFlag); in TEST_P()
1118 base::HistogramBase* h2 = base::Histogram::FactoryGet( in TEST_P()
1120 /*flags=*/base::HistogramBase::Flags::kUmaStabilityHistogramFlag); in TEST_P()
1122 base::HistogramBase* h3 = base::Histogram::FactoryGet( in TEST_P()
1124 /*flags=*/base::HistogramBase::Flags::kUmaTargetedHistogramFlag); in TEST_P()
1126 base::GlobalHistogramAllocator* histogram_allocator = in TEST_P()
1127 base::GlobalHistogramAllocator::ReleaseForTesting(); in TEST_P()
1129 base::Time::Now()); in TEST_P()
1141 base::HistogramSnapshotManager snapshot_manager(&flattener); in TEST_P()
1149 EXPECT_TRUE(base::PathExists(metrics_file())); in TEST_P()
1152 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
1159 base::GlobalHistogramAllocator::CreateWithLocalMemory( in TEST_P()
1161 base::HistogramBase* h0 = base::SparseHistogram::FactoryGet( in TEST_P()
1162 "h0", /*flags=*/base::HistogramBase::Flags::kUmaTargetedHistogramFlag); in TEST_P()
1164 base::HistogramBase* h1 = base::SparseHistogram::FactoryGet( in TEST_P()
1165 "h1", /*flags=*/base::HistogramBase::Flags::kNoFlags); in TEST_P()
1167 base::HistogramBase* h2 = base::Histogram::FactoryGet( in TEST_P()
1169 /*flags=*/base::HistogramBase::Flags::kUmaStabilityHistogramFlag); in TEST_P()
1171 base::HistogramBase* h3 = base::Histogram::FactoryGet( in TEST_P()
1173 /*flags=*/base::HistogramBase::Flags::kNoFlags); in TEST_P()
1175 base::GlobalHistogramAllocator* histogram_allocator = in TEST_P()
1176 base::GlobalHistogramAllocator::ReleaseForTesting(); in TEST_P()
1181 base::Time::Now()); in TEST_P()
1195 base::HistogramSnapshotManager snapshot_manager(&flattener); in TEST_P()
1203 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
1211 metrics_file(), base::Time::Now(), 2, in TEST_P()
1212 base::BindOnce(&WriteSystemProfileToAllocator)); in TEST_P()
1225 base::HistogramSnapshotManager snapshot_manager(&flattener); in TEST_P()
1237 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()
1246 metrics_file(), base::Time::Now(), 2, in TEST_P()
1247 base::BindOnce([](base::PersistentHistogramAllocator* allocator) { in TEST_P()
1268 base::HistogramSnapshotManager snapshot_manager(&flattener); in TEST_P()
1280 EXPECT_FALSE(base::PathExists(metrics_file())); in TEST_P()