| 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 "chrome/browser/metrics/plugin_metrics_provider.h" | 5 #include "chrome/browser/metrics/plugin_metrics_provider.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <string> | 9 #include <string> |
| 10 #include <utility> |
| 10 | 11 |
| 11 #include "base/macros.h" | 12 #include "base/macros.h" |
| 12 #include "base/run_loop.h" | 13 #include "base/run_loop.h" |
| 13 #include "base/strings/utf_string_conversions.h" | 14 #include "base/strings/utf_string_conversions.h" |
| 14 #include "chrome/common/pref_names.h" | 15 #include "chrome/common/pref_names.h" |
| 15 #include "components/metrics/proto/system_profile.pb.h" | 16 #include "components/metrics/proto/system_profile.pb.h" |
| 16 #include "components/prefs/pref_service.h" | 17 #include "components/prefs/pref_service.h" |
| 17 #include "components/prefs/scoped_user_pref_update.h" | 18 #include "components/prefs/scoped_user_pref_update.h" |
| 18 #include "components/prefs/testing_pref_service.h" | 19 #include "components/prefs/testing_pref_service.h" |
| 19 #include "content/public/browser/child_process_data.h" | 20 #include "content/public/browser/child_process_data.h" |
| (...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 89 | 90 |
| 90 // Now set some plugin stability stats for p2 and verify they're recorded. | 91 // Now set some plugin stability stats for p2 and verify they're recorded. |
| 91 std::unique_ptr<base::DictionaryValue> plugin_dict(new base::DictionaryValue); | 92 std::unique_ptr<base::DictionaryValue> plugin_dict(new base::DictionaryValue); |
| 92 plugin_dict->SetString(prefs::kStabilityPluginName, "p2"); | 93 plugin_dict->SetString(prefs::kStabilityPluginName, "p2"); |
| 93 plugin_dict->SetInteger(prefs::kStabilityPluginLaunches, 1); | 94 plugin_dict->SetInteger(prefs::kStabilityPluginLaunches, 1); |
| 94 plugin_dict->SetInteger(prefs::kStabilityPluginCrashes, 2); | 95 plugin_dict->SetInteger(prefs::kStabilityPluginCrashes, 2); |
| 95 plugin_dict->SetInteger(prefs::kStabilityPluginInstances, 3); | 96 plugin_dict->SetInteger(prefs::kStabilityPluginInstances, 3); |
| 96 plugin_dict->SetInteger(prefs::kStabilityPluginLoadingErrors, 4); | 97 plugin_dict->SetInteger(prefs::kStabilityPluginLoadingErrors, 4); |
| 97 { | 98 { |
| 98 ListPrefUpdate update(prefs(), prefs::kStabilityPluginStats); | 99 ListPrefUpdate update(prefs(), prefs::kStabilityPluginStats); |
| 99 update.Get()->Append(plugin_dict.release()); | 100 update.Get()->Append(std::move(plugin_dict)); |
| 100 } | 101 } |
| 101 | 102 |
| 102 provider.ProvideStabilityMetrics(&system_profile); | 103 provider.ProvideStabilityMetrics(&system_profile); |
| 103 | 104 |
| 104 const metrics::SystemProfileProto_Stability& stability = | 105 const metrics::SystemProfileProto_Stability& stability = |
| 105 system_profile.stability(); | 106 system_profile.stability(); |
| 106 ASSERT_EQ(1, stability.plugin_stability_size()); | 107 ASSERT_EQ(1, stability.plugin_stability_size()); |
| 107 EXPECT_EQ("p2", stability.plugin_stability(0).plugin().name()); | 108 EXPECT_EQ("p2", stability.plugin_stability(0).plugin().name()); |
| 108 EXPECT_EQ("p2.plugin", stability.plugin_stability(0).plugin().filename()); | 109 EXPECT_EQ("p2.plugin", stability.plugin_stability(0).plugin().filename()); |
| 109 EXPECT_EQ("2.0", stability.plugin_stability(0).plugin().version()); | 110 EXPECT_EQ("2.0", stability.plugin_stability(0).plugin().version()); |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 203 } else if (name == "p2") { | 204 } else if (name == "p2") { |
| 204 EXPECT_EQ(2, stability.plugin_stability(i).launch_count()); | 205 EXPECT_EQ(2, stability.plugin_stability(i).launch_count()); |
| 205 EXPECT_EQ(2, stability.plugin_stability(i).crash_count()); | 206 EXPECT_EQ(2, stability.plugin_stability(i).crash_count()); |
| 206 found++; | 207 found++; |
| 207 } else { | 208 } else { |
| 208 GTEST_FAIL() << "Unexpected plugin name : " << name; | 209 GTEST_FAIL() << "Unexpected plugin name : " << name; |
| 209 } | 210 } |
| 210 } | 211 } |
| 211 EXPECT_EQ(found, 2U); | 212 EXPECT_EQ(found, 2U); |
| 212 } | 213 } |
| OLD | NEW |