Index: tools/telemetry/telemetry/browser_credentials.py |
diff --git a/tools/telemetry/telemetry/browser_credentials.py b/tools/telemetry/telemetry/browser_credentials.py |
index 2950aeda2f8abb836dc0500aa29c57523218f38a..69501b37c34fc8aaa62e45f0a47d88e0da3492da 100644 |
--- a/tools/telemetry/telemetry/browser_credentials.py |
+++ b/tools/telemetry/telemetry/browser_credentials.py |
@@ -28,6 +28,13 @@ class BrowserCredentials(object): |
assert backend.credentials_type not in self._backends |
self._backends[backend.credentials_type] = backend |
+ def IsLoggedIn(self, credentials_type): |
+ if credentials_type not in self._backends: |
+ raise Exception('Unrecognized credentials type: %s', credentials_type) |
+ if credentials_type not in self._credentials: |
+ return False |
+ return self._backends[credentials_type].IsLoggedIn() |
+ |
def CanLogin(self, credentials_type): |
if credentials_type not in self._backends: |
raise Exception('Unrecognized credentials type: %s', credentials_type) |
@@ -62,6 +69,13 @@ class BrowserCredentials(object): |
self._extra_credentials[credentials_type][k] = v |
self._RebuildCredentials() |
+ def _ResetLoggedInState(self): |
+ """Makes the backends think we're not logged in even though we are. |
+ Should only be used in unit tests to simulate --dont-override-profile. |
+ """ |
+ for backend in self._backends.keys(): |
+ self._backends[backend]._ResetLoggedInState() # pylint: disable=W0212 |
+ |
def _RebuildCredentials(self): |
credentials = {} |
if self._credentials_path == None: |