diff options
author | nednguyen <nednguyen@google.com> | 2015-06-23 00:52:54 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-06-23 07:53:28 +0000 |
commit | 744b58f43d089ccf47ba66224139cb54a10e54bf (patch) | |
tree | 26127555ecc9b8e04d18a5eb07b79ca63a89b701 | |
parent | 03a88dd00ad0da2af69e2ce2ff4c0f9246d55c49 (diff) | |
download | chromium_src-744b58f43d089ccf47ba66224139cb54a10e54bf.zip chromium_src-744b58f43d089ccf47ba66224139cb54a10e54bf.tar.gz chromium_src-744b58f43d089ccf47ba66224139cb54a10e54bf.tar.bz2 |
[Telemetry] Make sure that browser.tabs.__iter__() return the tab object instead of tab's context_id
BUG=473202
CQ_EXTRA_TRYBOTS=tryserver.chromium.perf:linux_perf_bisect;tryserver.chromium.perf:mac_perf_bisect;tryserver.chromium.perf:android_nexus5_perf_bisect
Review URL: https://codereview.chromium.org/1197473002
Cr-Commit-Position: refs/heads/master@{#335643}
5 files changed, 13 insertions, 11 deletions
diff --git a/tools/perf/measurements/tab_switching.py b/tools/perf/measurements/tab_switching.py index d4110e1..22d9370 100644 --- a/tools/perf/measurements/tab_switching.py +++ b/tools/perf/measurements/tab_switching.py @@ -81,8 +81,7 @@ class TabSwitching(page_test.PageTest): histogram_type, histogram_name, tab) prev_histogram = first_histogram - for i in xrange(len(tab.browser.tabs)): - t = tab.browser.tabs[i] + for t in tab.browser.tabs: t.Activate() def _IsDone(): cur_histogram = histogram_util.GetHistogram( diff --git a/tools/telemetry/telemetry/core/backends/chrome/extension_backend.py b/tools/telemetry/telemetry/core/backends/chrome/extension_backend.py index aba475d..f0f4e7e 100644 --- a/tools/telemetry/telemetry/core/backends/chrome/extension_backend.py +++ b/tools/telemetry/telemetry/core/backends/chrome/extension_backend.py @@ -28,7 +28,7 @@ class ExtensionBackendDict(collections.Mapping): def __getitem__(self, extension_id): extensions = [] - for context_id in self._extension_backend_list: + for context_id in self._extension_backend_list.IterContextIds(): if self.ContextIdToExtensionId(context_id) == extension_id: extensions.append( self._extension_backend_list.GetBackendFromContextId(context_id)) @@ -37,8 +37,8 @@ class ExtensionBackendDict(collections.Mapping): return extensions def __iter__(self): - for context_id in self._extension_backend_list: - yield self.ContextIdToExtensionId(context_id) + for context_id in self._extension_backend_list.IterContextIds(): + yield self._extension_backend_list.GetBackendFromContextId(context_id) def __len__(self): return len(self._extension_backend_list) diff --git a/tools/telemetry/telemetry/core/backends/chrome/tab_list_backend.py b/tools/telemetry/telemetry/core/backends/chrome/tab_list_backend.py index e63bacc..bd89946 100644 --- a/tools/telemetry/telemetry/core/backends/chrome/tab_list_backend.py +++ b/tools/telemetry/telemetry/core/backends/chrome/tab_list_backend.py @@ -48,7 +48,7 @@ class TabListBackend(inspector_backend_list.InspectorBackendList): if response != 'Target is closing': raise TabUnexpectedResponseException('Received response: %s' % response) - util.WaitFor(lambda: tab_id not in self, timeout=5) + util.WaitFor(lambda: tab_id not in self.IterContextIds(), timeout=5) def ActivateTab(self, tab_id, timeout=30): """Activates the tab with the given debugger_url. diff --git a/tools/telemetry/telemetry/core/backends/chrome/tab_list_backend_unittest.py b/tools/telemetry/telemetry/core/backends/chrome/tab_list_backend_unittest.py index c5a81c4..98a2dc8 100644 --- a/tools/telemetry/telemetry/core/backends/chrome/tab_list_backend_unittest.py +++ b/tools/telemetry/telemetry/core/backends/chrome/tab_list_backend_unittest.py @@ -16,7 +16,7 @@ class TabListBackendTest(tab_test_case.TabTestCase): # Check that the tab.id matches context_id. tabs = [] - for context_id in self.tabs: + for context_id in self.tabs._tab_list_backend.IterContextIds(): tab = self.tabs.GetTabById(context_id) self.assertEquals(tab.id, context_id) tabs.append(self.tabs.GetTabById(context_id)) @@ -27,9 +27,7 @@ class TabListBackendTest(tab_test_case.TabTestCase): while len(self.tabs) < 2: self.tabs.New() - tabs = [] - for context_id in self.tabs: - tabs.append(self.tabs.GetTabById(context_id)) + tabs = [t for t in self.tabs] # Crash the first tab. self.assertRaises(exceptions.DevtoolsTargetCrashException, diff --git a/tools/telemetry/telemetry/core/backends/chrome_inspector/inspector_backend_list.py b/tools/telemetry/telemetry/core/backends/chrome_inspector/inspector_backend_list.py index 3521866..7e1f8fb 100644 --- a/tools/telemetry/telemetry/core/backends/chrome_inspector/inspector_backend_list.py +++ b/tools/telemetry/telemetry/core/backends/chrome_inspector/inspector_backend_list.py @@ -82,10 +82,15 @@ class InspectorBackendList(collections.Sequence): self._wrapper_dict[context_id] = wrapper return self._wrapper_dict[context_id] - def __iter__(self): + def IterContextIds(self): self._Update() return iter(self._filtered_context_ids) + def __iter__(self): + self._Update() + for context_id in self._filtered_context_ids: + yield self.GetTabById(context_id) + def __len__(self): self._Update() return len(self._filtered_context_ids) |