зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1488468 - Remove wait.until calls and improve formatting in test_main_tab_scalar; r=davehunt
Depends on D7904 Differential Revision: https://phabricator.services.mozilla.com/D7905 --HG-- extra : moz-landing-system : lando
This commit is contained in:
Родитель
57fd289426
Коммит
eb225d3d97
|
@ -2,34 +2,46 @@
|
|||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
from marionette_driver.wait import Wait
|
||||
|
||||
from telemetry_harness.testcase import TelemetryTestCase
|
||||
|
||||
|
||||
def check_is_shutdown_ping(ping):
|
||||
"""Check for a shutdown ping."""
|
||||
|
||||
if ping["type"] != "main":
|
||||
return False
|
||||
|
||||
if ping["payload"]["info"]["reason"] != "shutdown":
|
||||
return False
|
||||
|
||||
return True
|
||||
|
||||
|
||||
class TestMainTabScalars(TelemetryTestCase):
|
||||
"""Tests for Telemetry Scalars."""
|
||||
|
||||
def test_main_tab_scalars(self):
|
||||
wait = Wait(self.marionette, 10)
|
||||
"""Test for Telemetry Scalars."""
|
||||
|
||||
with self.marionette.using_context(self.marionette.CONTEXT_CHROME):
|
||||
tab1 = self.browser.tabbar.selected_tab
|
||||
|
||||
tab2 = self.browser.tabbar.open_tab()
|
||||
wait.until(lambda m: len(self.browser.tabbar.tabs) == 2)
|
||||
self.browser.tabbar.switch_to(tab2)
|
||||
|
||||
tab3 = self.browser.tabbar.open_tab()
|
||||
wait.until(lambda m: len(self.browser.tabbar.tabs) == 3)
|
||||
self.browser.tabbar.switch_to(tab3)
|
||||
|
||||
self.browser.tabbar.close_tab(tab3, force=True)
|
||||
wait.until(lambda m: len(self.browser.tabbar.tabs) == 2)
|
||||
self.browser.tabbar.close_tab(tab2, force=True)
|
||||
wait.until(lambda m: len(self.browser.tabbar.tabs) == 1)
|
||||
|
||||
self.browser.tabbar.switch_to(tab1)
|
||||
ping = self.wait_for_ping(self.restart_browser, lambda p: p['type'] == 'main'
|
||||
and p['payload']['info']['reason'] == 'shutdown')
|
||||
assert ping['type'] == 'main'
|
||||
assert ping['clientId'] == self.client_id
|
||||
scalars = ping['payload']['processes']['parent']['scalars']
|
||||
assert scalars['browser.engagement.max_concurrent_tab_count'] == 3
|
||||
assert scalars['browser.engagement.tab_open_event_count'] == 2
|
||||
assert scalars['browser.engagement.max_concurrent_window_count'] == 1
|
||||
|
||||
ping = self.wait_for_ping(self.restart_browser, check_is_shutdown_ping)
|
||||
assert ping["type"] == "main"
|
||||
assert ping["clientId"] == self.client_id
|
||||
|
||||
scalars = ping["payload"]["processes"]["parent"]["scalars"]
|
||||
assert scalars["browser.engagement.max_concurrent_tab_count"] == 3
|
||||
assert scalars["browser.engagement.tab_open_event_count"] == 2
|
||||
assert scalars["browser.engagement.max_concurrent_window_count"] == 1
|
||||
|
|
Загрузка…
Ссылка в новой задаче