Bug 1532607 - Add configuration to run telemetry tests directly; r=raphael,ahal
authorb4hand <bforehand@mozilla.com>
Mon, 20 May 2019 08:59:56 +0000
changeset 474536 2bb901b8e9f5f6ecc198393136a8bfbf25b16ba2
parent 474535 17f72de310de6d19e1e20b956cb757ed8e51d4c1
child 474537 04ddaab38b6008fbf9fc6b863a3a373a10b47b9b
push id36042
push userdvarga@mozilla.com
push dateTue, 21 May 2019 04:19:40 +0000
treeherdermozilla-central@ca560ff55451 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersraphael, ahal
bugs1532607
milestone69.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1532607 - Add configuration to run telemetry tests directly; r=raphael,ahal Differential Revision: https://phabricator.services.mozilla.com/D30663
python/mozbuild/mozbuild/frontend/context.py
python/mozbuild/mozbuild/testing.py
testing/mozbase/moztest/moztest/resolve.py
toolkit/components/telemetry/tests/marionette/moz.build
toolkit/toolkit.mozbuild
--- a/python/mozbuild/mozbuild/frontend/context.py
+++ b/python/mozbuild/mozbuild/frontend/context.py
@@ -1903,16 +1903,19 @@ VARIABLES = {
     'PYTHON_UNITTEST_MANIFESTS': (ManifestparserManifestList, list,
         """List of manifest files defining python unit tests.
         """),
 
     'CRAMTEST_MANIFESTS': (ManifestparserManifestList, list,
         """List of manifest files defining cram unit tests.
         """),
 
+    'TELEMETRY_TESTS_CLIENT_MANIFESTS': (ManifestparserManifestList, list,
+        """List of manifest files defining telemetry client tests.
+        """),
 
     # The following variables are used to control the target of installed files.
     'XPI_NAME': (unicode, unicode,
         """The name of an extension XPI to generate.
 
         When this variable is present, the results of this directory will end up
         being packaged into an extension instead of the main dist/bin results.
         """),
--- a/python/mozbuild/mozbuild/testing.py
+++ b/python/mozbuild/mozbuild/testing.py
@@ -44,16 +44,20 @@ TEST_MANIFESTS = dict(
     A11Y=('a11y', 'testing/mochitest', 'a11y', True),
     BROWSER_CHROME=('browser-chrome', 'testing/mochitest', 'browser', True),
     ANDROID_INSTRUMENTATION=('instrumentation', 'instrumentation', '.', False),
     FIREFOX_UI_FUNCTIONAL=('firefox-ui-functional', 'firefox-ui', '.', False),
     FIREFOX_UI_UPDATE=('firefox-ui-update', 'firefox-ui', '.', False),
     PUPPETEER_FIREFOX=('firefox-ui-functional', 'firefox-ui', '.', False),
     PYTHON_UNITTEST=('python', 'python', '.', False),
     CRAMTEST=('cram', 'cram', '.', False),
+    TELEMETRY_TESTS_CLIENT=(
+        'telemetry-tests-client',
+        'toolkit/components/telemetry/tests/marionette', '.', False
+    ),
 
     # marionette tests are run from the srcdir
     # TODO(ato): make packaging work as for other test suites
     MARIONETTE=('marionette', 'marionette', '.', False),
     MARIONETTE_UNIT=('marionette', 'marionette', '.', False),
     MARIONETTE_WEBAPI=('marionette', 'marionette', '.', False),
 
     MOCHITEST=('mochitest', 'testing/mochitest', 'tests', True),
--- a/testing/mozbase/moztest/moztest/resolve.py
+++ b/testing/mozbase/moztest/moztest/resolve.py
@@ -139,16 +139,22 @@ TEST_SUITES = {
     'mochitest-webgl1-ext': WebglSuite('webgl1-ext'),
     'mochitest-webgl2-core': WebglSuite('webgl2-core'),
     'mochitest-webgl2-ext': WebglSuite('webgl2-ext'),
     'mochitest-webgl2-deqp': WebglSuite('webgl2-deqp'),
     'python': {
         'mach_command': 'python-test',
         'kwargs': {'tests': None},
     },
+    'telemetry-tests-client': {
+        'aliases': ('ttc',),
+        'mach_command': 'telemetry-tests-client',
+        'kwargs': {},
+        'task_regex': ['telemetry-tests-client($|.*(-1|[^0-9])$)'],
+    },
     'reftest': {
         'aliases': ('rr',),
         'mach_command': 'reftest',
         'kwargs': {'tests': None},
         'task_regex': ['(opt|debug)-reftest($|.*(-1|[^0-9])$)',
                        'test-verify-gpu($|.*(-1|[^0-9])$)'],
     },
     'robocop': {
@@ -219,16 +225,17 @@ for i in range(1, MOCHITEST_TOTAL_CHUNKS
     'crashtest': 'crashtest',
     'firefox-ui-functional': 'firefox-ui-functional',
     'firefox-ui-update': 'firefox-ui-update',
     'marionette': 'marionette',
     'mochitest': 'mochitest-plain',
     'python': 'python',
     'reftest': 'reftest',
     'steeplechase': '',
+    'telemetry-tests-client': 'telemetry-tests-client',
     'web-platform-tests': 'web-platform-tests',
     'xpcshell': 'xpcshell',
 }
 
 _test_subsuites = {
     ('browser-chrome', 'devtools'): 'mochitest-devtools-chrome',
     ('browser-chrome', 'gpu'): 'mochitest-browser-chrome-gpu',
     ('browser-chrome', 'screenshots'): 'mochitest-browser-chrome-screenshots',
new file mode 100644
--- /dev/null
+++ b/toolkit/components/telemetry/tests/marionette/moz.build
@@ -0,0 +1,11 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# This Source Code Form is subject to the terms of the Mozilla Public
+# 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/.
+
+TELEMETRY_TESTS_CLIENT_MANIFESTS += ["tests/manifest.ini"]
+
+with Files("**"):
+    BUG_COMPONENT = ("Tookit", "Telemetry")
+    SCHEDULES.exclusive = ["telemetry-tests-client"]
\ No newline at end of file
--- a/toolkit/toolkit.mozbuild
+++ b/toolkit/toolkit.mozbuild
@@ -162,16 +162,17 @@ if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']
 
 if CONFIG['ENABLE_REMOTE_AGENT']:
     DIRS += ['/remote']
 
 if CONFIG['ENABLE_MARIONETTE']:
     DIRS += [
         '/testing/firefox-ui',
         '/testing/marionette',
+        '/toolkit/components/telemetry/tests/marionette',
     ]
 
 if CONFIG['ENABLE_GECKODRIVER'] and not CONFIG['MOZ_TSAN'] and not CONFIG['FUZZING_INTERFACES']:
     DIRS += ['/testing/geckodriver']
 
 DIRS += [
     '/tools/quitter',
     '/media/gmp-clearkey/0.1',