blob: 2eaada9791fc10019424175c4ae86570943a0b74 [file] [log] [blame]
# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
from autotest_lib.client.common_lib import error
from autotest_lib.client.cros import auth_server, cros_ui_test, login
class login_BadAuthentication(cros_ui_test.UITest):
version = 1
auto_login = False
_errorString = None
def __login_denier(self, handler, url_args):
handler.send_response(403)
handler.end_headers()
handler.wfile.write(self._errorString)
def initialize(self, creds='$default'):
super(login_BadAuthentication, self).initialize(creds)
def start_authserver(self):
self._authServer = auth_server.GoogleAuthServer(
cl_responder=self.__login_denier)
self._authServer.run()
self.use_local_dns()
def run_once(self, error_string='BadAuthentication'):
self._errorString = "Error=" + error_string
try:
self.login(self.username, self.password)
# TODO(craigdh): Only catch LoginError once Chrome r138619 lands.
except:
pass
if self.logged_in():
raise error.TestFail('Should not have logged in')
self._authServer.wait_for_client_login()