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

Unified Diff: chrome/browser/chromeos/login/login_browsertest.cc

Issue 2794493002: Add AuthPolicyLoginHelper (Closed)
Patch Set: Switch to OnceCallback+Update on comments+rebase Created 3 years, 8 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
Index: chrome/browser/chromeos/login/login_browsertest.cc
diff --git a/chrome/browser/chromeos/login/login_browsertest.cc b/chrome/browser/chromeos/login/login_browsertest.cc
index c98ee6b2903d0d329d7fca5daa70e020ca077cb7..b93870da01179b6cdabfbe600668b673752e17ec 100644
--- a/chrome/browser/chromeos/login/login_browsertest.cc
+++ b/chrome/browser/chromeos/login/login_browsertest.cc
@@ -285,6 +285,23 @@ class ActiveDirectoryLoginTest : public LoginManagerTest {
js_checker().Evaluate(JSElement(kAdButton) + ".fire('tap')");
}
+ void SetupActiveDirectoryJSNotifications() {
+ js_checker().Evaluate(
+ "var testInvalidateAd = login.GaiaSigninScreen.invalidateAd;"
+ "login.GaiaSigninScreen.invalidateAd = function(user, errorState) {"
+ " testInvalidateAd(user, errorState);"
+ " window.domAutomationController.setAutomationId(0);"
+ " window.domAutomationController.send('ShowAuthError');"
+ "}");
+ }
+ void WaitForMessage(const std::string& expected_message) {
+ content::DOMMessageQueue message_queue;
xiyuan 2017/04/07 15:04:24 ditto
Roman Sorokin (ftl) 2017/04/10 16:09:00 Done.
+ std::string message;
+ do {
+ ASSERT_TRUE(message_queue.WaitForMessage(&message));
+ } while (message != expected_message);
+ }
+
protected:
// Returns string representing element with id=|element_id| inside Active
// Directory login element.
@@ -434,6 +451,7 @@ IN_PROC_BROWSER_TEST_F(ActiveDirectoryLoginTest, PRE_LoginErrors) {
// Test different UI errors for Active Directory login.
IN_PROC_BROWSER_TEST_F(ActiveDirectoryLoginTest, LoginErrors) {
+ SetupActiveDirectoryJSNotifications();
TestLoginVisible();
TestDomainVisible();
@@ -445,14 +463,21 @@ IN_PROC_BROWSER_TEST_F(ActiveDirectoryLoginTest, LoginErrors) {
TestPasswordError();
TestDomainVisible();
- fake_auth_policy_client_->set_auth_error(authpolicy::ERROR_BAD_USER_NAME);
SubmitActiveDirectoryCredentials(std::string(kTestActiveDirectoryUser) + "@",
kPassword);
TestUserError();
TestDomainHidden();
+ fake_auth_policy_client_->set_auth_error(authpolicy::ERROR_BAD_USER_NAME);
+ SubmitActiveDirectoryCredentials(
+ std::string(kTestActiveDirectoryUser) + "@" + kTestRealm, kPassword);
+ WaitForMessage("\"ShowAuthError\"");
+ TestUserError();
+ TestDomainVisible();
+
fake_auth_policy_client_->set_auth_error(authpolicy::ERROR_BAD_PASSWORD);
SubmitActiveDirectoryCredentials(kTestActiveDirectoryUser, kPassword);
+ WaitForMessage("\"ShowAuthError\"");
TestPasswordError();
TestDomainVisible();
}

Powered by Google App Engine
This is Rietveld 408576698