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 <cstring> | 5 #include <cstring> |
6 #include <memory> | 6 #include <memory> |
7 #include <string> | 7 #include <string> |
8 #include <utility> | 8 #include <utility> |
9 | 9 |
10 #include "base/bind.h" | 10 #include "base/bind.h" |
(...skipping 346 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
357 OobeBaseTest::SetUpOnMainThread(); | 357 OobeBaseTest::SetUpOnMainThread(); |
358 } | 358 } |
359 | 359 |
360 void SetupAuthFlowChangeListener() { | 360 void SetupAuthFlowChangeListener() { |
361 content::ExecuteScriptAsync( | 361 content::ExecuteScriptAsync( |
362 GetLoginUI()->GetWebContents(), | 362 GetLoginUI()->GetWebContents(), |
363 "$('gaia-signin').gaiaAuthHost_.addEventListener('authFlowChange'," | 363 "$('gaia-signin').gaiaAuthHost_.addEventListener('authFlowChange'," |
364 " function f() {" | 364 " function f() {" |
365 " $('gaia-signin').gaiaAuthHost_.removeEventListener(" | 365 " $('gaia-signin').gaiaAuthHost_.removeEventListener(" |
366 " 'authFlowChange', f);" | 366 " 'authFlowChange', f);" |
367 " window.domAutomationController.setAutomationId(0);" | |
368 " window.domAutomationController.send(" | 367 " window.domAutomationController.send(" |
369 " $('gaia-signin').isSAML() ? 'SamlLoaded' : 'GaiaLoaded');" | 368 " $('gaia-signin').isSAML() ? 'SamlLoaded' : 'GaiaLoaded');" |
370 " });"); | 369 " });"); |
371 } | 370 } |
372 | 371 |
373 virtual void StartSamlAndWaitForIdpPageLoad(const std::string& gaia_email) { | 372 virtual void StartSamlAndWaitForIdpPageLoad(const std::string& gaia_email) { |
374 WaitForSigninScreen(); | 373 WaitForSigninScreen(); |
375 | 374 |
376 SetupAuthFlowChangeListener(); | 375 SetupAuthFlowChangeListener(); |
377 | 376 |
(...skipping 138 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
516 IN_PROC_BROWSER_TEST_F(SamlTest, ScrapedSingle) { | 515 IN_PROC_BROWSER_TEST_F(SamlTest, ScrapedSingle) { |
517 fake_saml_idp()->SetLoginHTMLTemplate("saml_login.html"); | 516 fake_saml_idp()->SetLoginHTMLTemplate("saml_login.html"); |
518 StartSamlAndWaitForIdpPageLoad(kFirstSAMLUserEmail); | 517 StartSamlAndWaitForIdpPageLoad(kFirstSAMLUserEmail); |
519 | 518 |
520 // Make sure that the password is scraped correctly. | 519 // Make sure that the password is scraped correctly. |
521 ASSERT_TRUE(content::ExecuteScript( | 520 ASSERT_TRUE(content::ExecuteScript( |
522 GetLoginUI()->GetWebContents(), | 521 GetLoginUI()->GetWebContents(), |
523 "$('gaia-signin').gaiaAuthHost_.addEventListener('authCompleted'," | 522 "$('gaia-signin').gaiaAuthHost_.addEventListener('authCompleted'," |
524 " function(e) {" | 523 " function(e) {" |
525 " var password = e.detail.password;" | 524 " var password = e.detail.password;" |
526 " window.domAutomationController.setAutomationId(0);" | |
527 " window.domAutomationController.send(password);" | 525 " window.domAutomationController.send(password);" |
528 " });")); | 526 " });")); |
529 | 527 |
530 // Fill-in the SAML IdP form and submit. | 528 // Fill-in the SAML IdP form and submit. |
531 SetSignFormField("Email", "fake_user"); | 529 SetSignFormField("Email", "fake_user"); |
532 SetSignFormField("Password", "fake_password"); | 530 SetSignFormField("Password", "fake_password"); |
533 | 531 |
534 // Scraping a single password should finish the login and start the session. | 532 // Scraping a single password should finish the login and start the session. |
535 content::WindowedNotificationObserver session_start_waiter( | 533 content::WindowedNotificationObserver session_start_waiter( |
536 chrome::NOTIFICATION_SESSION_STARTED, | 534 chrome::NOTIFICATION_SESSION_STARTED, |
(...skipping 577 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1114 fake_session_manager_client_->set_device_policy(device_policy_->GetBlob()); | 1112 fake_session_manager_client_->set_device_policy(device_policy_->GetBlob()); |
1115 fake_session_manager_client_->OnPropertyChangeComplete(true); | 1113 fake_session_manager_client_->OnPropertyChangeComplete(true); |
1116 run_loop.Run(); | 1114 run_loop.Run(); |
1117 } | 1115 } |
1118 | 1116 |
1119 void SAMLPolicyTest::ShowGAIALoginForm() { | 1117 void SAMLPolicyTest::ShowGAIALoginForm() { |
1120 login_screen_load_observer_->Wait(); | 1118 login_screen_load_observer_->Wait(); |
1121 ASSERT_TRUE(content::ExecuteScript( | 1119 ASSERT_TRUE(content::ExecuteScript( |
1122 GetLoginUI()->GetWebContents(), | 1120 GetLoginUI()->GetWebContents(), |
1123 "$('gaia-signin').gaiaAuthHost_.addEventListener('ready', function() {" | 1121 "$('gaia-signin').gaiaAuthHost_.addEventListener('ready', function() {" |
1124 " window.domAutomationController.setAutomationId(0);" | |
1125 " window.domAutomationController.send('ready');" | 1122 " window.domAutomationController.send('ready');" |
1126 "});" | 1123 "});" |
1127 "$('add-user-button').click();")); | 1124 "$('add-user-button').click();")); |
1128 content::DOMMessageQueue message_queue; | 1125 content::DOMMessageQueue message_queue; |
1129 std::string message; | 1126 std::string message; |
1130 ASSERT_TRUE(message_queue.WaitForMessage(&message)); | 1127 ASSERT_TRUE(message_queue.WaitForMessage(&message)); |
1131 EXPECT_EQ("\"ready\"", message); | 1128 EXPECT_EQ("\"ready\"", message); |
1132 } | 1129 } |
1133 | 1130 |
1134 void SAMLPolicyTest::ShowSAMLInterstitial() { | 1131 void SAMLPolicyTest::ShowSAMLInterstitial() { |
1135 login_screen_load_observer_->Wait(); | 1132 login_screen_load_observer_->Wait(); |
1136 ASSERT_TRUE(content::ExecuteScript( | 1133 ASSERT_TRUE(content::ExecuteScript( |
1137 GetLoginUI()->GetWebContents(), | 1134 GetLoginUI()->GetWebContents(), |
1138 "$('saml-interstitial').addEventListener(" | 1135 "$('saml-interstitial').addEventListener(" |
1139 " 'samlInterstitialPageReady'," | 1136 " 'samlInterstitialPageReady'," |
1140 " function() {" | 1137 " function() {" |
1141 " window.domAutomationController.setAutomationId(0);" | |
1142 " window.domAutomationController.send(" | 1138 " window.domAutomationController.send(" |
1143 " 'samlInterstitialPageReady');" | 1139 " 'samlInterstitialPageReady');" |
1144 " });" | 1140 " });" |
1145 "$('add-user-button').click();")); | 1141 "$('add-user-button').click();")); |
1146 | 1142 |
1147 content::DOMMessageQueue message_queue; | 1143 content::DOMMessageQueue message_queue; |
1148 std::string message; | 1144 std::string message; |
1149 ASSERT_TRUE(message_queue.WaitForMessage(&message)); | 1145 ASSERT_TRUE(message_queue.WaitForMessage(&message)); |
1150 EXPECT_EQ("\"samlInterstitialPageReady\"", message); | 1146 EXPECT_EQ("\"samlInterstitialPageReady\"", message); |
1151 } | 1147 } |
(...skipping 12 matching lines...) Expand all Loading... |
1164 ASSERT_TRUE(message_queue.WaitForMessage(&message)); | 1160 ASSERT_TRUE(message_queue.WaitForMessage(&message)); |
1165 } while (message != "\"SamlLoaded\""); | 1161 } while (message != "\"SamlLoaded\""); |
1166 EXPECT_EQ("\"SamlLoaded\"", message); | 1162 EXPECT_EQ("\"SamlLoaded\"", message); |
1167 } | 1163 } |
1168 | 1164 |
1169 void SAMLPolicyTest::ClickChangeAccountOnSAMLInterstitialPage() { | 1165 void SAMLPolicyTest::ClickChangeAccountOnSAMLInterstitialPage() { |
1170 login_screen_load_observer_->Wait(); | 1166 login_screen_load_observer_->Wait(); |
1171 ASSERT_TRUE(content::ExecuteScript( | 1167 ASSERT_TRUE(content::ExecuteScript( |
1172 GetLoginUI()->GetWebContents(), | 1168 GetLoginUI()->GetWebContents(), |
1173 "$('gaia-signin').gaiaAuthHost_.addEventListener('ready', function() {" | 1169 "$('gaia-signin').gaiaAuthHost_.addEventListener('ready', function() {" |
1174 " window.domAutomationController.setAutomationId(0);" | |
1175 " window.domAutomationController.send('ready');" | 1170 " window.domAutomationController.send('ready');" |
1176 "});" | 1171 "});" |
1177 "$('saml-interstitial').changeAccountLink.click();")); | 1172 "$('saml-interstitial').changeAccountLink.click();")); |
1178 | 1173 |
1179 content::DOMMessageQueue message_queue; | 1174 content::DOMMessageQueue message_queue; |
1180 std::string message; | 1175 std::string message; |
1181 ASSERT_TRUE(message_queue.WaitForMessage(&message)); | 1176 ASSERT_TRUE(message_queue.WaitForMessage(&message)); |
1182 EXPECT_EQ("\"ready\"", message); | 1177 EXPECT_EQ("\"ready\"", message); |
1183 } | 1178 } |
1184 | 1179 |
(...skipping 291 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1476 ->SetContentSettingDefaultScope(url3, url3, | 1471 ->SetContentSettingDefaultScope(url3, url3, |
1477 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA, | 1472 CONTENT_SETTINGS_TYPE_MEDIASTREAM_CAMERA, |
1478 std::string(), CONTENT_SETTING_ALLOW); | 1473 std::string(), CONTENT_SETTING_ALLOW); |
1479 | 1474 |
1480 EXPECT_FALSE( | 1475 EXPECT_FALSE( |
1481 MediaCaptureDevicesDispatcher::GetInstance()->CheckMediaAccessPermission( | 1476 MediaCaptureDevicesDispatcher::GetInstance()->CheckMediaAccessPermission( |
1482 web_contents, url3, content::MEDIA_DEVICE_VIDEO_CAPTURE)); | 1477 web_contents, url3, content::MEDIA_DEVICE_VIDEO_CAPTURE)); |
1483 } | 1478 } |
1484 | 1479 |
1485 } // namespace chromeos | 1480 } // namespace chromeos |
OLD | NEW |