diff options
author | tommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-16 20:36:09 +0000 |
---|---|---|
committer | tommi@chromium.org <tommi@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-02-16 20:36:09 +0000 |
commit | d23ca37c840cfd3b43a23d3e3e122f0674608935 (patch) | |
tree | ce19b5f4ba3f949f8e9d862e3741d611cc2746c1 /chrome_frame | |
parent | b75ee4f2d216e0970348b0f0698b7867efaf14b9 (diff) | |
download | chromium_src-d23ca37c840cfd3b43a23d3e3e122f0674608935.zip chromium_src-d23ca37c840cfd3b43a23d3e3e122f0674608935.tar.gz chromium_src-d23ca37c840cfd3b43a23d3e3e122f0674608935.tar.bz2 |
Fix cfinstance chrome tests. Before they were either failing to launch
chrome (if chrome itself wasn't installed) or launching the installed chrome
and not the one from the build directory.
TEST=Run *WidgetModeChrome_* unit tests.
BUG=35868
Review URL: http://codereview.chromium.org/606066
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39132 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome_frame')
-rw-r--r-- | chrome_frame/test/chrome_frame_test_utils.cc | 18 | ||||
-rw-r--r-- | chrome_frame/test/test_with_web_server.cc | 9 |
2 files changed, 21 insertions, 6 deletions
diff --git a/chrome_frame/test/chrome_frame_test_utils.cc b/chrome_frame/test/chrome_frame_test_utils.cc index 79f388b..3e8f0db 100644 --- a/chrome_frame/test/chrome_frame_test_utils.cc +++ b/chrome_frame/test/chrome_frame_test_utils.cc @@ -9,7 +9,9 @@ #include <iepmapi.h> #include <sddl.h> +#include "base/file_util.h" #include "base/message_loop.h" +#include "base/path_service.h" #include "base/registry.h" // to find IE and firefox #include "base/scoped_handle.h" #include "base/scoped_comptr_win.h" @@ -149,8 +151,20 @@ base::ProcessHandle LaunchSafari(const std::wstring& url) { } base::ProcessHandle LaunchChrome(const std::wstring& url) { - return LaunchExecutable(kChromeImageName, - StringPrintf(L"--%ls ", switches::kNoFirstRun) + url); + std::wstring path; + PathService::Get(base::DIR_MODULE, &path); + file_util::AppendToPath(&path, kChromeImageName); + + FilePath exe_path(path); + CommandLine cmd(exe_path); + std::wstring args(StringPrintf(L"--%ls ", + ASCIIToWide(switches::kNoFirstRun))); + args += url; + cmd.AppendLooseValue(args); + + base::ProcessHandle process = NULL; + base::LaunchApp(cmd, false, false, &process); + return process; } base::ProcessHandle LaunchOpera(const std::wstring& url) { diff --git a/chrome_frame/test/test_with_web_server.cc b/chrome_frame/test/test_with_web_server.cc index 7f39e41..56acce1 100644 --- a/chrome_frame/test/test_with_web_server.cc +++ b/chrome_frame/test/test_with_web_server.cc @@ -176,6 +176,7 @@ void ChromeFrameTestWithWebServer::SimpleBrowserTest(BrowserKind browser, void ChromeFrameTestWithWebServer::OptionalBrowserTest(BrowserKind browser, const wchar_t* page, const wchar_t* result_file_to_check) { + DCHECK(browser != CHROME) << "Chrome tests shouldn't be optional"; if (!LaunchBrowser(browser, page)) { LOG(ERROR) << "Failed to launch browser " << ToString(browser); } else { @@ -456,7 +457,7 @@ TEST_F(ChromeFrameTestWithWebServer, } TEST_F(ChromeFrameTestWithWebServer, WidgetModeChrome_CFInstanceIfrPost) { - OptionalBrowserTest(CHROME, kCFIIfrPostPage, L"CFInstanceIfrPost"); + SimpleBrowserTest(CHROME, kCFIIfrPostPage, L"CFInstanceIfrPost"); } TEST_F(ChromeFrameTestWithWebServer, WidgetModeSafari_CFInstanceIfrPost) { @@ -480,7 +481,7 @@ TEST_F(ChromeFrameTestWithWebServer, FLAKY_WidgetModeFF_CFInstancePost) { } TEST_F(ChromeFrameTestWithWebServer, WidgetModeChrome_CFInstancePost) { - OptionalBrowserTest(CHROME, kCFIPostPage, L"CFInstancePost"); + SimpleBrowserTest(CHROME, kCFIPostPage, L"CFInstancePost"); } TEST_F(ChromeFrameTestWithWebServer, WidgetModeSafari_CFInstancePost) { @@ -504,7 +505,7 @@ TEST_F(ChromeFrameTestWithWebServer, FLAKY_WidgetModeFF_CFInstanceRPC) { } TEST_F(ChromeFrameTestWithWebServer, WidgetModeChrome_CFInstanceRPC) { - OptionalBrowserTest(CHROME, kCFIRPCPage, L"CFInstanceRPC"); + SimpleBrowserTest(CHROME, kCFIRPCPage, L"CFInstanceRPC"); } TEST_F(ChromeFrameTestWithWebServer, WidgetModeSafari_CFInstanceRPC) { @@ -527,7 +528,7 @@ TEST_F(ChromeFrameTestWithWebServer, WidgetModeFF_CFInstanceRPCInternal) { } TEST_F(ChromeFrameTestWithWebServer, WidgetModeChrome_CFInstanceRPCInternal) { - OptionalBrowserTest(CHROME, kCFIRPCInternalPage, L"CFInstanceRPCInternal"); + SimpleBrowserTest(CHROME, kCFIRPCInternalPage, L"CFInstanceRPCInternal"); } TEST_F(ChromeFrameTestWithWebServer, WidgetModeSafari_CFInstanceRPCInternal) { |