Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2342)

Unified Diff: chrome/renderer/plugins/plugin_uma_unittest.cc

Issue 13414007: Report disabled plugin in CreatePlugin. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « chrome/renderer/plugins/plugin_uma.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/renderer/plugins/plugin_uma_unittest.cc
diff --git a/chrome/renderer/plugins/plugin_uma_unittest.cc b/chrome/renderer/plugins/plugin_uma_unittest.cc
index 46e8099841981de6d1bf47ae75eb03e84787dcba..abb698674c137486e30b3ebb50c71a3df5889bae 100644
--- a/chrome/renderer/plugins/plugin_uma_unittest.cc
+++ b/chrome/renderer/plugins/plugin_uma_unittest.cc
@@ -9,227 +9,134 @@
using ::testing::_;
-class MockPluginUMASender : public MissingPluginReporter::UMASender {
+class MockPluginUMASender : public PluginUMAReporter::UMASender {
public:
- MOCK_METHOD1(SendPluginUMA, void(MissingPluginReporter::PluginType));
+ MOCK_METHOD2(SendPluginUMA, void(PluginUMAReporter::ReportType,
+ PluginUMAReporter::PluginType));
};
-TEST(PluginUMATest, WindowsMediaPlayer) {
- MockPluginUMASender* sender_mock = new MockPluginUMASender();
- MissingPluginReporter::GetInstance()->SetUMASender(sender_mock);
- EXPECT_CALL(*sender_mock, SendPluginUMA(_))
- .Times(0);
-
- EXPECT_CALL(*sender_mock,
- SendPluginUMA(MissingPluginReporter::WINDOWS_MEDIA_PLAYER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "application/x-mplayer2",
- GURL("file://some_file.mov"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::OTHER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "application/x-mplayer2-some_sufix",
- GURL("file://some_file.mov"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::OTHER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "some-prefix-application/x-mplayer2",
- GURL("file://some_file.mov"));
-}
+class PluginUMATest : public testing::Test {
+ public:
+ PluginUMATest() : sender_mock_(new MockPluginUMASender()) {
+ PluginUMAReporter::GetInstance()->SetUMASender(sender_mock_);
+ EXPECT_CALL(*sender_mock_, SendPluginUMA(_, _))
+ .Times(0);
+ }
+
+ void ExpectUMAReport(PluginUMAReporter::PluginType plugin_type,
+ const std::string& plugin_mime_type,
+ const GURL& plugin_src) {
+ EXPECT_CALL(*sender_mock_, SendPluginUMA(PluginUMAReporter::MISSING_PLUGIN,
+ plugin_type))
+ .Times(1)
+ .RetiresOnSaturation();
+ PluginUMAReporter::GetInstance()->ReportPluginMissing(
+ plugin_mime_type, plugin_src);
+
+ EXPECT_CALL(*sender_mock_, SendPluginUMA(PluginUMAReporter::DISABLED_PLUGIN,
xhwang 2013/04/03 18:50:45 DISABLED_PLUGIN is tested here!
+ plugin_type))
+ .Times(1)
+ .RetiresOnSaturation();
+ PluginUMAReporter::GetInstance()->ReportPluginDisabled(
+ plugin_mime_type, plugin_src);
+ }
+
+ private:
+ MockPluginUMASender* sender_mock_;
+};
-TEST(PluginUMATest, Silverlight) {
- MockPluginUMASender* sender_mock = new MockPluginUMASender();
- MissingPluginReporter::GetInstance()->SetUMASender(sender_mock);
- EXPECT_CALL(*sender_mock, SendPluginUMA(_))
- .Times(0);
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::SILVERLIGHT))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "application/x-silverlight",
- GURL("aaaa"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::SILVERLIGHT))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "application/x-silverlight-some-sufix",
- GURL("aaaa"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::OTHER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "some-prefix-application/x-silverlight",
- GURL("aaaa"));
+TEST_F(PluginUMATest, WindowsMediaPlayer) {
+ ExpectUMAReport(PluginUMAReporter::WINDOWS_MEDIA_PLAYER,
Bernhard Bauer 2013/04/03 19:08:42 Thanks for this cleanup! We could probably go a bi
xhwang 2013/04/04 17:28:38 Done.
+ "application/x-mplayer2",
+ GURL("file://some_file.mov"));
+ ExpectUMAReport(PluginUMAReporter::OTHER,
+ "application/x-mplayer2-some_sufix",
+ GURL("file://some_file.mov"));
+ ExpectUMAReport(PluginUMAReporter::OTHER,
+ "some-prefix-application/x-mplayer2",
+ GURL("file://some_file.mov"));
}
-TEST(PluginUMATest, RealPlayer) {
- MockPluginUMASender* sender_mock = new MockPluginUMASender();
- MissingPluginReporter::GetInstance()->SetUMASender(sender_mock);
- EXPECT_CALL(*sender_mock, SendPluginUMA(_))
- .Times(0);
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::REALPLAYER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "audio/x-pn-realaudio",
- GURL("some url"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::REALPLAYER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "audio/x-pn-realaudio-some-sufix",
- GURL("some url"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::OTHER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "some-prefix-audio/x-pn-realaudio",
- GURL("some url"));
+TEST_F(PluginUMATest, Silverlight) {
+ ExpectUMAReport(PluginUMAReporter::SILVERLIGHT,
+ "application/x-silverlight",
+ GURL("aaaa"));
+ ExpectUMAReport(PluginUMAReporter::SILVERLIGHT,
+ "application/x-silverlight-some-sufix",
+ GURL("aaaa"));
+ ExpectUMAReport(PluginUMAReporter::OTHER,
+ "some-prefix-application/x-silverlight",
+ GURL("aaaa"));
}
-TEST(PluginUMATest, Java) {
- MockPluginUMASender* sender_mock = new MockPluginUMASender();
- MissingPluginReporter::GetInstance()->SetUMASender(sender_mock);
- EXPECT_CALL(*sender_mock, SendPluginUMA(_))
- .Times(0);
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::JAVA))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "application/x-java-applet",
- GURL("some url"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::JAVA))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "application/x-java-applet-some-sufix",
- GURL("some url"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::JAVA))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "some-prefix-application/x-java-applet-sufix",
- GURL("some url"));
+TEST_F(PluginUMATest, RealPlayer) {
+ ExpectUMAReport(PluginUMAReporter::REALPLAYER,
+ "audio/x-pn-realaudio",
+ GURL("some url"));
+ ExpectUMAReport(PluginUMAReporter::REALPLAYER,
+ "audio/x-pn-realaudio-some-sufix",
+ GURL("some url"));
+ ExpectUMAReport(PluginUMAReporter::OTHER,
+ "some-prefix-audio/x-pn-realaudio",
+ GURL("some url"));
}
-TEST(PluginUMATest, QuickTime) {
- MockPluginUMASender* sender_mock = new MockPluginUMASender();
- MissingPluginReporter::GetInstance()->SetUMASender(sender_mock);
- EXPECT_CALL(*sender_mock, SendPluginUMA(_))
- .Times(0);
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::QUICKTIME))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "video/quicktime",
- GURL("some url"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::OTHER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "video/quicktime-sufix",
- GURL("some url"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::OTHER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "prefix-video/quicktime",
- GURL("some url"));
+TEST_F(PluginUMATest, Java) {
+ ExpectUMAReport(PluginUMAReporter::JAVA,
+ "application/x-java-applet",
+ GURL("some url"));
+ ExpectUMAReport(PluginUMAReporter::JAVA,
+ "application/x-java-applet-some-sufix",
+ GURL("some url"));
+ ExpectUMAReport(PluginUMAReporter::JAVA,
+ "some-prefix-application/x-java-applet-sufix",
+ GURL("some url"));
}
-TEST(PluginUMATest, BySrcExtension) {
- MockPluginUMASender* sender_mock = new MockPluginUMASender();
- MissingPluginReporter::GetInstance()->SetUMASender(sender_mock);
- EXPECT_CALL(*sender_mock, SendPluginUMA(_))
- .Times(0);
+TEST_F(PluginUMATest, QuickTime) {
+ ExpectUMAReport(PluginUMAReporter::QUICKTIME,
+ "video/quicktime",
+ GURL("some url"));
+ ExpectUMAReport(PluginUMAReporter::OTHER,
+ "video/quicktime-sufix",
+ GURL("some url"));
+ ExpectUMAReport(PluginUMAReporter::OTHER,
+ "prefix-video/quicktime",
+ GURL("some url"));
+}
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::QUICKTIME))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "",
- GURL("file://file.mov"));
+TEST_F(PluginUMATest, BySrcExtension) {
+ ExpectUMAReport(PluginUMAReporter::QUICKTIME,
+ "",
+ GURL("file://file.mov"));
// When plugin's mime type is given, we don't check extension.
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::OTHER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "unknown-plugin",
- GURL("http://file.mov"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::OTHER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "",
- GURL("http://file.unknown_extension"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::QUICKTIME))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "",
- GURL("http://aaa/file.mov?x=aaaa&y=b#c"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::QUICKTIME))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "",
- GURL("http://file.mov?x=aaaa&y=b#c"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::OTHER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "",
- GURL("http://"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::OTHER))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "",
- GURL("mov"));
+ ExpectUMAReport(PluginUMAReporter::OTHER,
+ "unknown-plugin",
+ GURL("http://file.mov"));
+
+ ExpectUMAReport(PluginUMAReporter::OTHER,
+ "",
+ GURL("http://file.unknown_extension"));
+ ExpectUMAReport(PluginUMAReporter::QUICKTIME,
+ "",
+ GURL("http://aaa/file.mov?x=aaaa&y=b#c"));
+ ExpectUMAReport(PluginUMAReporter::QUICKTIME,
+ "",
+ GURL("http://file.mov?x=aaaa&y=b#c"));
+ ExpectUMAReport(PluginUMAReporter::OTHER,
+ "",
+ GURL("http://"));
+ ExpectUMAReport(PluginUMAReporter::OTHER,
+ "",
+ GURL("mov"));
}
-TEST(PluginUMATest, CaseSensitivity) {
- MockPluginUMASender* sender_mock = new MockPluginUMASender();
- MissingPluginReporter::GetInstance()->SetUMASender(sender_mock);
- EXPECT_CALL(*sender_mock, SendPluginUMA(_))
- .Times(0);
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::QUICKTIME))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "video/QUICKTIME",
- GURL("http://file.aaa"));
-
- EXPECT_CALL(*sender_mock, SendPluginUMA(MissingPluginReporter::QUICKTIME))
- .Times(1)
- .RetiresOnSaturation();
- MissingPluginReporter::GetInstance()->ReportPluginMissing(
- "",
- GURL("http://file.MoV"));
+TEST_F(PluginUMATest, CaseSensitivity) {
+ ExpectUMAReport(PluginUMAReporter::QUICKTIME,
+ "video/QUICKTIME",
+ GURL("http://file.aaa"));
+ ExpectUMAReport(PluginUMAReporter::QUICKTIME,
+ "",
+ GURL("http://file.MoV"));
}
-
« no previous file with comments | « chrome/renderer/plugins/plugin_uma.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698