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

Unified Diff: chrome/browser/plugin_test.cc

Issue 10389111: Convert the remaining plugin_tests from ui_tests to browser_tests. Also remove the remaining refere… (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Don't run if the test data isn't there (since it's not public) Created 8 years, 7 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 | « build/all.gyp ('k') | chrome/chrome_tests.gypi » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/plugin_test.cc
===================================================================
--- chrome/browser/plugin_test.cc (revision 136820)
+++ chrome/browser/plugin_test.cc (working copy)
@@ -1,207 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Tests for the top plugins to catch regressions in our plugin host code, as
-// well as in the out of process code. Currently this tests:
-// Flash
-// Real
-// QuickTime
-// Windows Media Player
-// -this includes both WMP plugins. npdsplay.dll is the older one that
-// comes with XP. np-mswmp.dll can be downloaded from Microsoft and
-// needs SP2 or Vista.
-
-#include "build/build_config.h"
-
-#if defined(OS_WIN)
-#include <windows.h>
-#include <shellapi.h>
-#include <shlobj.h>
-#include <comutil.h>
-#endif
-
-#include <stdlib.h>
-#include <string.h>
-#include <memory.h>
-
-#include <string>
-
-#include "base/file_util.h"
-#include "base/path_service.h"
-#include "base/test/test_timeouts.h"
-#include "chrome/common/chrome_switches.h"
-#include "chrome/common/chrome_paths.h"
-#include "chrome/test/automation/automation_proxy.h"
-#include "chrome/test/automation/tab_proxy.h"
-#include "chrome/test/base/ui_test_utils.h"
-#include "chrome/test/ui/ui_test.h"
-#include "content/test/net/url_request_mock_http_job.h"
-#include "net/base/net_util.h"
-#include "third_party/npapi/bindings/npapi.h"
-#include "webkit/plugins/npapi/plugin_constants_win.h"
-#include "webkit/plugins/npapi/plugin_list.h"
-#include "webkit/plugins/plugin_switches.h"
-
-#if defined(OS_WIN)
-#include "base/win/registry.h"
-#endif
-
-class PluginTest : public UITest {
- public:
- // Generate the URL for testing a particular test.
- // HTML for the tests is all located in test_directory\plugin\<testcase>
- // Set |mock_http| to true to use mock HTTP server.
- static GURL GetTestUrl(const std::string& test_case,
- const std::string& query,
- bool mock_http) {
- static const FilePath::CharType kPluginPath[] = FILE_PATH_LITERAL("plugin");
- if (mock_http) {
- FilePath plugin_path = FilePath(kPluginPath).AppendASCII(test_case);
- GURL url = URLRequestMockHTTPJob::GetMockUrl(plugin_path);
- if (!query.empty()) {
- GURL::Replacements replacements;
- replacements.SetQueryStr(query);
- return url.ReplaceComponents(replacements);
- }
- return url;
- }
-
- FilePath path;
- PathService::Get(chrome::DIR_TEST_DATA, &path);
- path = path.Append(kPluginPath).AppendASCII(test_case);
- return ui_test_utils::GetFileUrlWithQuery(path, query);
- }
-
- protected:
- virtual void SetUp() {
-#if defined(OS_WIN)
- const testing::TestInfo* const test_info =
- testing::UnitTest::GetInstance()->current_test_info();
- if (strcmp(test_info->name(), "MediaPlayerNew") == 0) {
- // The installer adds our process names to the registry key below. Since
- // the installer might not have run on this machine, add it manually.
- base::win::RegKey regkey;
- if (regkey.Open(HKEY_LOCAL_MACHINE,
- L"Software\\Microsoft\\MediaPlayer\\ShimInclusionList",
- KEY_WRITE) == ERROR_SUCCESS) {
- regkey.CreateKey(L"CHROME.EXE", KEY_READ);
- }
- } else if (strcmp(test_info->name(), "MediaPlayerOld") == 0) {
- // When testing the old WMP plugin, we need to force Chrome to not load
- // the new plugin.
- launch_arguments_.AppendSwitch(switches::kUseOldWMPPlugin);
- } else if (strcmp(test_info->name(), "FlashSecurity") == 0) {
- launch_arguments_.AppendSwitchASCII(switches::kTestSandbox,
- "security_tests.dll");
- }
-#elif defined(OS_MACOSX)
- // The plugins directory isn't read by default on the Mac, so it needs to be
- // explicitly registered.
- launch_arguments_.AppendSwitchPath(
- switches::kExtraPluginDir, browser_directory_.AppendASCII("plugins"));
-#endif // defined(OS_WIN)
-
- launch_arguments_.AppendSwitch(switches::kAllowOutdatedPlugins);
- launch_arguments_.AppendSwitch(switches::kAlwaysAuthorizePlugins);
-
- UITest::SetUp();
- }
-
- void TestPlugin(const std::string& test_case,
- const std::string& query,
- int timeout,
- bool mock_http) {
- GURL url = GetTestUrl(test_case, query, mock_http);
- NavigateToURL(url);
- WaitForFinish(timeout, mock_http);
- }
-
- // Waits for the test case to finish.
- void WaitForFinish(const int wait_time, bool mock_http) {
- static const char kTestCompleteCookie[] = "status";
- static const char kTestCompleteSuccess[] = "OK";
-
- GURL url = GetTestUrl("done", "", mock_http);
- scoped_refptr<TabProxy> tab(GetActiveTab());
-
- const std::string result =
- WaitUntilCookieNonEmpty(tab, url, kTestCompleteCookie, wait_time);
- ASSERT_EQ(kTestCompleteSuccess, result);
- }
-};
-
-TEST_F(PluginTest, Flash) {
- // Note: This does not work with the npwrapper on 64-bit Linux. Install the
- // native 64-bit Flash to run the test.
- // TODO(thestig) Update this list if we decide to only test against internal
- // Flash plugin in the future?
- std::string kFlashQuery =
-#if defined(OS_WIN)
- "npswf32.dll"
-#elif defined(OS_MACOSX)
- "Flash Player.plugin"
-#elif defined(OS_POSIX)
- "libflashplayer.so"
-#endif
- "";
- TestPlugin("flash.html", kFlashQuery,
- TestTimeouts::action_max_timeout_ms(), false);
-}
-
-#if defined(OS_WIN)
-// Windows only test
-TEST_F(PluginTest, DISABLED_FlashSecurity) {
- TestPlugin("flash.html", "", TestTimeouts::action_max_timeout_ms(), false);
-}
-#endif // defined(OS_WIN)
-
-#if defined(OS_WIN)
-// TODO(port) Port the following tests to platforms that have the required
-// plugins.
-// Flaky: http://crbug.com/55915
-TEST_F(PluginTest, DISABLED_Quicktime) {
- TestPlugin("quicktime.html", "",
- TestTimeouts::action_max_timeout_ms(), false);
-}
-
-// Disabled - http://crbug.com/44662
-TEST_F(PluginTest, DISABLED_MediaPlayerNew) {
- TestPlugin("wmp_new.html", "", TestTimeouts::action_max_timeout_ms(), false);
-}
-
-// http://crbug.com/4809
-TEST_F(PluginTest, DISABLED_MediaPlayerOld) {
- TestPlugin("wmp_old.html", "", TestTimeouts::action_max_timeout_ms(), false);
-}
-
-// Disabled - http://crbug.com/44673
-TEST_F(PluginTest, DISABLED_Real) {
- TestPlugin("real.html", "", TestTimeouts::action_max_timeout_ms(), false);
-}
-
-TEST_F(PluginTest, FlashOctetStream) {
- TestPlugin("flash-octet-stream.html", "",
- TestTimeouts::action_max_timeout_ms(), false);
-}
-
-#if defined(OS_WIN)
-// http://crbug.com/53926
-TEST_F(PluginTest, DISABLED_FlashLayoutWhilePainting) {
-#else
-TEST_F(PluginTest, FlashLayoutWhilePainting) {
-#endif
- TestPlugin("flash-layout-while-painting.html", "",
- TestTimeouts::action_max_timeout_ms(), true);
-}
-
-// http://crbug.com/8690
-TEST_F(PluginTest, DISABLED_Java) {
- TestPlugin("Java.html", "", TestTimeouts::action_max_timeout_ms(), false);
-}
-
-TEST_F(PluginTest, Silverlight) {
- TestPlugin("silverlight.html", "",
- TestTimeouts::action_max_timeout_ms(), false);
-}
-#endif // defined(OS_WIN)
« no previous file with comments | « build/all.gyp ('k') | chrome/chrome_tests.gypi » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698