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

Unified Diff: chrome/test/remoting/remote_desktop_browsertest.cc

Issue 838543002: Implement browser test for It2Me (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix merge conflicts Created 5 years, 11 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/test/remoting/remote_desktop_browsertest.h ('k') | chrome/test/remoting/scrollbar_browsertest.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/test/remoting/remote_desktop_browsertest.cc
diff --git a/chrome/test/remoting/remote_desktop_browsertest.cc b/chrome/test/remoting/remote_desktop_browsertest.cc
index 07d65feb49bb53fa05d09279f30e69e961e15d9f..2b32907cd68a30dd6f0781768daa71eb4e7d9208 100644
--- a/chrome/test/remoting/remote_desktop_browsertest.cc
+++ b/chrome/test/remoting/remote_desktop_browsertest.cc
@@ -169,8 +169,10 @@ void RemoteDesktopBrowserTest::VerifyChromotingLoaded(bool expected) {
ASSERT_EQ(installed, expected);
}
-void RemoteDesktopBrowserTest::LaunchChromotingApp(bool defer_start) {
- ASSERT_TRUE(extension_);
+content::WebContents* RemoteDesktopBrowserTest::LaunchChromotingApp(
+ bool defer_start,
+ WindowOpenDisposition window_open_disposition) {
+ _ASSERT_TRUE(extension_);
GURL chromoting_main = Chromoting_Main_URL();
// We cannot simply wait for any page load because the first page
@@ -186,11 +188,15 @@ void RemoteDesktopBrowserTest::LaunchChromotingApp(bool defer_start) {
extensions::FeatureSwitch::trace_app_source(),
defer_start);
+ if (is_platform_app()) {
+ window_open_disposition = NEW_WINDOW;
+ }
+
OpenApplication(AppLaunchParams(browser()->profile(), extension_,
is_platform_app()
? extensions::LAUNCH_CONTAINER_NONE
: extensions::LAUNCH_CONTAINER_TAB,
- is_platform_app() ? NEW_WINDOW : CURRENT_TAB,
+ window_open_disposition,
extensions::SOURCE_TEST));
observer.Wait();
@@ -202,11 +208,11 @@ void RemoteDesktopBrowserTest::LaunchChromotingApp(bool defer_start) {
content::Source<content::NavigationController>(observer.source()).ptr();
content::WebContents* web_contents = controller->GetWebContents();
+ _ASSERT_TRUE(web_contents);
+
if (web_contents != active_web_contents())
web_contents_stack_.push_back(web_contents);
- app_web_content_ = web_contents;
-
if (is_platform_app()) {
EXPECT_EQ(GetFirstAppWindowWebContents(), active_web_contents());
} else {
@@ -215,10 +221,16 @@ void RemoteDesktopBrowserTest::LaunchChromotingApp(bool defer_start) {
// injection to work.
// TODO(weitaosu): Find out whether there is a more appropriate notification
// to wait for so we can get rid of this wait.
- ASSERT_TRUE(TimeoutWaiter(base::TimeDelta::FromSeconds(5)).Wait());
+ _ASSERT_TRUE(TimeoutWaiter(base::TimeDelta::FromSeconds(5)).Wait());
}
EXPECT_EQ(Chromoting_Main_URL(), GetCurrentURL());
+ return web_contents;
+}
+
+content::WebContents* RemoteDesktopBrowserTest::LaunchChromotingApp(
+ bool defer_start) {
+ return LaunchChromotingApp(defer_start, CURRENT_TAB);
}
void RemoteDesktopBrowserTest::StartChromotingApp() {
@@ -485,18 +497,19 @@ void RemoteDesktopBrowserTest::Cleanup() {
ASSERT_TRUE(TimeoutWaiter(base::TimeDelta::FromSeconds(2)).Wait());
}
-void RemoteDesktopBrowserTest::SetUpTestForMe2Me() {
+content::WebContents* RemoteDesktopBrowserTest::SetUpTest() {
VerifyInternetAccess();
Install();
- LaunchChromotingApp(false);
- LoadBrowserTestJavaScript(app_web_content());
+ content::WebContents* app_web_content = LaunchChromotingApp(false);
Auth();
+ LoadBrowserTestJavaScript(app_web_content);
ExpandMe2Me();
// The call to EnsureRemoteConnectionEnabled() does a PIN reset.
// This causes the test to fail because of a recent bug:
// crbug.com/430676
// TODO(anandc): Reactivate this call after above bug is fixed.
- //EnsureRemoteConnectionEnabled();
+ //EnsureRemoteConnectionEnabled(app_web_content);
+ return app_web_content;
}
void RemoteDesktopBrowserTest::Auth() {
@@ -508,7 +521,8 @@ void RemoteDesktopBrowserTest::Auth() {
Approve();
}
-void RemoteDesktopBrowserTest::EnsureRemoteConnectionEnabled() {
+void RemoteDesktopBrowserTest::EnsureRemoteConnectionEnabled(
+ content::WebContents* app_web_contents) {
// browser_test.ensureRemoteConnectionEnabled is defined in
// browser_test.js, which must be loaded before calling this function.
// TODO(kelvinp): This function currently only works on linux when the user is
@@ -516,7 +530,7 @@ void RemoteDesktopBrowserTest::EnsureRemoteConnectionEnabled() {
// to Mac (https://crbug.com/397576) and Windows (https://crbug.com/397575).
bool result;
EXPECT_TRUE(content::ExecuteScriptAndExtractBool(
- app_web_content(),
+ app_web_contents,
"browserTest.ensureRemoteConnectionEnabled(" + me2me_pin() + ")",
&result));
EXPECT_TRUE(result) << "Cannot start the host with Pin:" << me2me_pin();
« no previous file with comments | « chrome/test/remoting/remote_desktop_browsertest.h ('k') | chrome/test/remoting/scrollbar_browsertest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698