| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 <stddef.h> | 5 #include <stddef.h> |
| 6 | 6 |
| 7 #include "base/json/json_reader.h" | 7 #include "base/json/json_reader.h" |
| 8 #include "base/macros.h" | 8 #include "base/macros.h" |
| 9 #include "base/trace_event/memory_dump_manager.h" | 9 #include "base/trace_event/memory_dump_manager.h" |
| 10 #include "base/trace_event/trace_config.h" | 10 #include "base/trace_event/trace_config.h" |
| (...skipping 18 matching lines...) Expand all Loading... |
| 29 "{" | 29 "{" |
| 30 "\"enable_argument_filter\":true," | 30 "\"enable_argument_filter\":true," |
| 31 "\"enable_sampling\":true," | 31 "\"enable_sampling\":true," |
| 32 "\"enable_systrace\":true," | 32 "\"enable_systrace\":true," |
| 33 "\"excluded_categories\":[\"excluded\",\"exc_pattern*\"]," | 33 "\"excluded_categories\":[\"excluded\",\"exc_pattern*\"]," |
| 34 "\"included_categories\":[\"included\"," | 34 "\"included_categories\":[\"included\"," |
| 35 "\"inc_pattern*\"," | 35 "\"inc_pattern*\"," |
| 36 "\"disabled-by-default-cc\"," | 36 "\"disabled-by-default-cc\"," |
| 37 "\"disabled-by-default-memory-infra\"]," | 37 "\"disabled-by-default-memory-infra\"]," |
| 38 "\"memory_dump_config\":{" | 38 "\"memory_dump_config\":{" |
| 39 "\"heap_profiler_options\":{" |
| 40 "\"breakdown_threshold_bytes\":10240" |
| 41 "}," |
| 39 "\"triggers\":[" | 42 "\"triggers\":[" |
| 40 "{\"mode\":\"light\",\"periodic_interval_ms\":50}," | 43 "{\"mode\":\"light\",\"periodic_interval_ms\":50}," |
| 41 "{\"mode\":\"detailed\",\"periodic_interval_ms\":1000}" | 44 "{\"mode\":\"detailed\",\"periodic_interval_ms\":1000}" |
| 42 "]" | 45 "]" |
| 43 "}," | 46 "}," |
| 44 "\"record_mode\":\"record-continuously\"," | 47 "\"record_mode\":\"record-continuously\"," |
| 45 "\"synthetic_delays\":[\"test.Delay1;16\",\"test.Delay2;32\"]" | 48 "\"synthetic_delays\":[\"test.Delay1;16\",\"test.Delay2;32\"]" |
| 46 "}"; | 49 "}"; |
| 47 | 50 |
| 48 } // namespace | 51 } // namespace |
| (...skipping 514 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 563 tc.EnableSystrace(); | 566 tc.EnableSystrace(); |
| 564 EXPECT_TRUE(tc.IsSystraceEnabled()); | 567 EXPECT_TRUE(tc.IsSystraceEnabled()); |
| 565 } | 568 } |
| 566 | 569 |
| 567 TEST(TraceConfigTest, TraceConfigFromMemoryConfigString) { | 570 TEST(TraceConfigTest, TraceConfigFromMemoryConfigString) { |
| 568 std::string tc_str = | 571 std::string tc_str = |
| 569 TraceConfigMemoryTestUtil::GetTraceConfig_PeriodicTriggers(200, 2000); | 572 TraceConfigMemoryTestUtil::GetTraceConfig_PeriodicTriggers(200, 2000); |
| 570 TraceConfig tc(tc_str); | 573 TraceConfig tc(tc_str); |
| 571 EXPECT_EQ(tc_str, tc.ToString()); | 574 EXPECT_EQ(tc_str, tc.ToString()); |
| 572 EXPECT_TRUE(tc.IsCategoryGroupEnabled(MemoryDumpManager::kTraceCategory)); | 575 EXPECT_TRUE(tc.IsCategoryGroupEnabled(MemoryDumpManager::kTraceCategory)); |
| 573 EXPECT_EQ(2u, tc.memory_dump_config_.size()); | 576 ASSERT_EQ(2u, tc.memory_dump_config_.triggers.size()); |
| 574 | 577 |
| 575 EXPECT_EQ(200u, tc.memory_dump_config_[0].periodic_interval_ms); | 578 EXPECT_EQ(200u, tc.memory_dump_config_.triggers[0].periodic_interval_ms); |
| 576 EXPECT_EQ(MemoryDumpLevelOfDetail::LIGHT, | 579 EXPECT_EQ(MemoryDumpLevelOfDetail::LIGHT, |
| 577 tc.memory_dump_config_[0].level_of_detail); | 580 tc.memory_dump_config_.triggers[0].level_of_detail); |
| 578 | 581 |
| 579 EXPECT_EQ(2000u, tc.memory_dump_config_[1].periodic_interval_ms); | 582 EXPECT_EQ(2000u, tc.memory_dump_config_.triggers[1].periodic_interval_ms); |
| 580 EXPECT_EQ(MemoryDumpLevelOfDetail::DETAILED, | 583 EXPECT_EQ(MemoryDumpLevelOfDetail::DETAILED, |
| 581 tc.memory_dump_config_[1].level_of_detail); | 584 tc.memory_dump_config_.triggers[1].level_of_detail); |
| 585 EXPECT_EQ(2048u, tc.memory_dump_config_.heap_profiler_options. |
| 586 breakdown_threshold_bytes); |
| 582 } | 587 } |
| 583 | 588 |
| 584 TEST(TraceConfigTest, EmptyMemoryDumpConfigTest) { | 589 TEST(TraceConfigTest, EmptyMemoryDumpConfigTest) { |
| 585 // Empty trigger list should also be specified when converting back to string. | 590 // Empty trigger list should also be specified when converting back to string. |
| 586 TraceConfig tc(TraceConfigMemoryTestUtil::GetTraceConfig_EmptyTriggers()); | 591 TraceConfig tc(TraceConfigMemoryTestUtil::GetTraceConfig_EmptyTriggers()); |
| 587 EXPECT_EQ(TraceConfigMemoryTestUtil::GetTraceConfig_EmptyTriggers(), | 592 EXPECT_EQ(TraceConfigMemoryTestUtil::GetTraceConfig_EmptyTriggers(), |
| 588 tc.ToString()); | 593 tc.ToString()); |
| 589 EXPECT_EQ(0u, tc.memory_dump_config_.size()); | 594 EXPECT_EQ(0u, tc.memory_dump_config_.triggers.size()); |
| 595 EXPECT_EQ(TraceConfig::HeapProfilerOptions::kDefaultBreakdownThresholdBytes, |
| 596 tc.memory_dump_config_.heap_profiler_options |
| 597 .breakdown_threshold_bytes); |
| 590 } | 598 } |
| 591 | 599 |
| 592 TEST(TraceConfigTest, LegacyStringToMemoryDumpConfig) { | 600 TEST(TraceConfigTest, LegacyStringToMemoryDumpConfig) { |
| 593 TraceConfig tc(MemoryDumpManager::kTraceCategory, ""); | 601 TraceConfig tc(MemoryDumpManager::kTraceCategory, ""); |
| 594 EXPECT_TRUE(tc.IsCategoryGroupEnabled(MemoryDumpManager::kTraceCategory)); | 602 EXPECT_TRUE(tc.IsCategoryGroupEnabled(MemoryDumpManager::kTraceCategory)); |
| 595 EXPECT_NE(std::string::npos, tc.ToString().find("memory_dump_config")); | 603 EXPECT_NE(std::string::npos, tc.ToString().find("memory_dump_config")); |
| 596 EXPECT_EQ(2u, tc.memory_dump_config_.size()); | 604 EXPECT_EQ(2u, tc.memory_dump_config_.triggers.size()); |
| 605 EXPECT_EQ(TraceConfig::HeapProfilerOptions::kDefaultBreakdownThresholdBytes, |
| 606 tc.memory_dump_config_.heap_profiler_options |
| 607 .breakdown_threshold_bytes); |
| 597 } | 608 } |
| 598 | 609 |
| 599 } // namespace trace_event | 610 } // namespace trace_event |
| 600 } // namespace base | 611 } // namespace base |
| OLD | NEW |