Bug 1316707 - Remove Marionette B2G update tests. draft
authorHenrik Skupin <mail@hskupin.info>
Thu, 10 Nov 2016 22:55:29 +0100
changeset 440463 debc146e6caaf2161800abc2ed78dc15663260ac
parent 440462 33eba6794b92ff0962c429668ca65b549d7bb887
child 440464 20f8764fbaf116fc680306ed32068b64c826de5f
push id36223
push userbmo:hskupin@gmail.com
push dateThu, 17 Nov 2016 15:08:12 +0000
bugs1316707
milestone53.0a1
Bug 1316707 - Remove Marionette B2G update tests. MozReview-Commit-ID: Kh0i6hWTZTp
python/mozbuild/mozbuild/frontend/context.py
python/mozbuild/mozbuild/testing.py
testing/marionette/harness/marionette/tests/update-tests.ini
testing/marionette/moz.build
toolkit/mozapps/update/tests/marionette/.eslintrc.js
toolkit/mozapps/update/tests/marionette/data/bad.xml
toolkit/mozapps/update/tests/marionette/data/err.cgi
toolkit/mozapps/update/tests/marionette/update-smoketests.ini
toolkit/mozapps/update/tests/marionette/update-tests.ini
toolkit/mozapps/update/tests/marionette/update_smoketest_ota_same_version.js
toolkit/mozapps/update/tests/marionette/update_smoketest_ota_same_version.py
toolkit/mozapps/update/tests/marionette/update_smoketest_ota_simple.js
toolkit/mozapps/update/tests/marionette/update_smoketest_ota_simple.py
toolkit/mozapps/update/tests/marionette/update_test_ota_simple.js
toolkit/mozapps/update/tests/marionette/update_test_ota_simple.py
toolkit/mozapps/update/tests/marionette/update_test_status.js
toolkit/mozapps/update/tests/marionette/update_test_status.py
--- a/python/mozbuild/mozbuild/frontend/context.py
+++ b/python/mozbuild/mozbuild/frontend/context.py
@@ -1530,20 +1530,16 @@ VARIABLES = {
     'MARIONETTE_LAYOUT_MANIFESTS': (ManifestparserManifestList, list,
         """List of manifest files defining marionette-layout tests.
         """),
 
     'MARIONETTE_UNIT_MANIFESTS': (ManifestparserManifestList, list,
         """List of manifest files defining marionette-unit tests.
         """),
 
-    'MARIONETTE_UPDATE_MANIFESTS': (ManifestparserManifestList, list,
-        """List of manifest files defining marionette-update tests.
-        """),
-
     'MARIONETTE_WEBAPI_MANIFESTS': (ManifestparserManifestList, list,
         """List of manifest files defining marionette-webapi tests.
         """),
 
     'METRO_CHROME_MANIFESTS': (ManifestparserManifestList, list,
         """List of manifest files defining metro browser chrome tests.
         """),
 
--- a/python/mozbuild/mozbuild/testing.py
+++ b/python/mozbuild/mozbuild/testing.py
@@ -282,17 +282,16 @@ TEST_MANIFESTS = dict(
     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),
 
     # 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_UPDATE=('marionette', 'marionette', '.', False),
     MARIONETTE_WEBAPI=('marionette', 'marionette', '.', False),
 
     METRO_CHROME=('metro-chrome', 'testing/mochitest', 'metro', True),
     MOCHITEST=('mochitest', 'testing/mochitest', 'tests', True),
     MOCHITEST_CHROME=('chrome', 'testing/mochitest', 'chrome', True),
     WEBRTC_SIGNALLING_TEST=('steeplechase', 'steeplechase', '.', True),
     XPCSHELL_TESTS=('xpcshell', 'xpcshell', '.', True),
 )
deleted file mode 100644
--- a/testing/marionette/harness/marionette/tests/update-tests.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[DEFAULT]
-run-if = buildapp == 'b2g'
-
-; this is currently only set by high level update smoketests
-smoketest = false
-
-; AUS tests
-[include:../../../../../toolkit/mozapps/update/tests/marionette/update-tests.ini]
--- a/testing/marionette/moz.build
+++ b/testing/marionette/moz.build
@@ -1,14 +1,13 @@
 # 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/.
 
 DIRS += ["components"]
 
 JAR_MANIFESTS += ["jar.mn"]
 MARIONETTE_UNIT_MANIFESTS += ["harness/marionette/tests/unit/unit-tests.ini"]
-MARIONETTE_UPDATE_MANIFESTS += ["harness/marionette/tests/update-tests.ini"]
 MARIONETTE_WEBAPI_MANIFESTS += ["harness/marionette/tests/webapi-tests.ini"]
 XPCSHELL_TESTS_MANIFESTS += ["unit.ini"]
 
 with Files("**"):
     BUG_COMPONENT = ("Testing", "Marionette")
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/.eslintrc.js
+++ /dev/null
@@ -1,7 +0,0 @@
-"use strict";
-
-module.exports = {
-  "extends": [
-    "../../../../../testing/marionette/marionette.eslintrc.js"
-  ]
-};
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/data/bad.xml
+++ /dev/null
@@ -1,1 +0,0 @@
-<updates
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/data/err.cgi
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/system/bin/sh
-print "Status: $QUERY_STRING\r\n\r\n"
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/update-smoketests.ini
+++ /dev/null
@@ -1,5 +0,0 @@
-[DEFAULT]
-smoketest = true
-
-[update_smoketest_ota_simple.py]
-[update_smoketest_ota_same_version.py]
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/update-tests.ini
+++ /dev/null
@@ -1,8 +0,0 @@
-[DEFAULT]
-smoketest = false
-
-[update_test_ota_simple.py]
-[update_test_status.py]
-
-; smoketests
-[include:update-smoketests.ini]
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/update_smoketest_ota_same_version.js
+++ /dev/null
@@ -1,27 +0,0 @@
-/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
-
-/* import-globals-from ../../../../../testing/marionette/harness/marionette/atoms/b2g_update_test.js */
-
-function testSameVersion() {
-  let mozSettings = window.navigator.mozSettings;
-  let forceSent = false;
-
-  mozSettings.addObserver("gecko.updateStatus", function statusObserver(setting) {
-    if (!forceSent) {
-      return;
-    }
-
-    mozSettings.removeObserver("gecko.updateStatus", statusObserver);
-    is(setting.settingValue, "already-latest-version");
-    cleanUp();
-  });
-
-  sendContentEvent("force-update-check");
-  forceSent = true;
-}
-
-// Update lifecycle callbacks
-function preUpdate() {
-  testSameVersion();
-}
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/update_smoketest_ota_same_version.py
+++ /dev/null
@@ -1,17 +0,0 @@
-from b2g_update_test import B2GUpdateSmokeTestCase, OTA, FOTA
-import os
-
-this_dir = os.path.dirname(__file__)
-
-class OTASameVersion(B2GUpdateSmokeTestCase):
-    JS_PATH          = os.path.join(this_dir, "update_smoketest_ota_same_version.js")
-    START_WITH_BUILD = "finish"
-    APPLY            = None
-
-    def test_ota_same_version_complete(self):
-        self.stage_update(build="finish", mar="complete")
-        self.execute_smoketest()
-
-    def test_ota_same_version_partial(self):
-        self.stage_update(build="finish", mar="partial")
-        self.execute_smoketest()
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/update_smoketest_ota_simple.js
+++ /dev/null
@@ -1,75 +0,0 @@
-/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
-
-/* import-globals-from ../../../../../testing/marionette/harness/marionette/atoms/b2g_update_test.js */
-/* globals Services */
-
-function testForceCheck() {
-  addChromeEventListener("update-available", function(evt) {
-    isFinishUpdate(evt.detail);
-    statusSettingIs("check-complete", testDownload);
-    return true;
-  });
-  sendContentEvent("force-update-check");
-}
-
-function testDownload() {
-  let gotStarted = false, gotProgress = false, gotStopped = false;
-  let progress = 0, total = 0;
-
-  addChromeEventListener("update-download-started", function(evt) {
-    gotStarted = true;
-    return true;
-  });
-  addChromeEventListener("update-download-progress", function(evt) {
-    progress = evt.detail.progress;
-    total = evt.detail.total;
-    gotProgress = true;
-    if (total == progress) {
-      ok(gotStarted);
-      return true;
-    }
-    return false;
-  });
-  addChromeEventListener("update-download-stopped", function(evt) {
-    is(evt.detail.paused, false);
-    gotStopped = true;
-    ok(gotStarted);
-    ok(gotProgress);
-    return true;
-  });
-  addChromeEventListener("update-downloaded", function(evt) {
-    ok(gotStarted);
-    ok(gotProgress);
-    ok(gotStopped);
-    is(progress, total);
-    return true;
-  });
-  addChromeEventListener("update-prompt-apply", function(evt) {
-    isStartToFinishUpdate(evt.detail);
-    cleanUp();
-  });
-  sendContentEvent("update-available-result", {
-    result: "download"
-  });
-}
-
-function testApplied() {
-  let finish = getFinishBuild();
-  is(Services.appinfo.version, finish.app_version,
-     "Services.appinfo.version should be " + finish.app_version);
-  is(Services.appinfo.platformVersion, finish.platform_milestone,
-     "Services.appinfo.platformVersion should be " + finish.platform_milestone);
-  is(Services.appinfo.appBuildID, finish.app_build_id,
-     "Services.appinfo.appBuildID should be " + finish.app_build_id);
-  cleanUp();
-}
-
-// Update lifecycle callbacks
-function preUpdate() {
-  testForceCheck();
-}
-
-function postUpdate() {
-  testApplied();
-}
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/update_smoketest_ota_simple.py
+++ /dev/null
@@ -1,21 +0,0 @@
-from b2g_update_test import B2GUpdateSmokeTestCase, OTA, FOTA
-import os
-
-this_dir = os.path.dirname(__file__)
-
-class OTASimple(B2GUpdateSmokeTestCase):
-    JS_PATH          = os.path.join(this_dir, "update_smoketest_ota_simple.js")
-    START_WITH_BUILD = "start"
-    STAGE_PREFS      = {
-        "b2g.update.apply-idle-timeout": 0,
-        "b2g.update.apply-prompt-timeout": 5 * 60 * 1000
-    }
-    TIMEOUT     = 5 * 60 * 1000
-
-    def test_ota_simple_complete(self):
-        self.stage_update(build="finish", mar="complete")
-        self.execute_smoketest()
-
-    def test_ota_simple_partial(self):
-        self.stage_update(build="finish", mar="partial")
-        self.execute_smoketest()
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/update_test_ota_simple.js
+++ /dev/null
@@ -1,74 +0,0 @@
-/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
-
-/* import-globals-from ../../../../../testing/marionette/harness/marionette/atoms/b2g_update_test.js */
-
-function testForceCheck() {
-  addChromeEventListener("update-available", function(evt) {
-    let update = evt.detail;
-    is(update.displayVersion, "99.0");
-    is(update.isOSUpdate, false);
-    statusSettingIs("check-complete", testDownload);
-    return true;
-  });
-  sendContentEvent("force-update-check");
-}
-
-function testDownload() {
-  let gotStarted = false, gotProgress = false, gotStopped = false;
-  let progress = 0, total = 0;
-
-  addChromeEventListener("update-download-started", function(evt) {
-    gotStarted = true;
-    return true;
-  });
-  addChromeEventListener("update-download-progress", function(evt) {
-    progress = evt.detail.progress;
-    total = evt.detail.total;
-    gotProgress = true;
-    if (total == progress) {
-      ok(gotStarted);
-      return true;
-    }
-    return false;
-  });
-  addChromeEventListener("update-download-stopped", function(evt) {
-    is(evt.detail.paused, false);
-    gotStopped = true;
-    ok(gotStarted);
-    ok(gotProgress);
-    return true;
-  });
-  addChromeEventListener("update-downloaded", function(evt) {
-    ok(gotStarted);
-    ok(gotProgress);
-    ok(gotStopped);
-    is(progress, total);
-    return true;
-  });
-  addChromeEventListener("update-prompt-apply", function(evt) {
-    let update = evt.detail;
-    is(update.displayVersion, "99.0");
-    is(update.isOSUpdate, false);
-    cleanUp();
-  });
-  sendContentEvent("update-available-result", {
-    result: "download"
-  });
-}
-
-function testApplied() {
-  let updateFile = Cc["@mozilla.org/file/local;1"].createInstance(Ci.nsIFile);
-  updateFile.initWithPath("/system/b2g/update_test/UpdateTestAddFile");
-  ok(updateFile.exists());
-  cleanUp();
-}
-
-// Update lifecycle callbacks
-function preUpdate() {
-  testForceCheck();
-}
-
-function postUpdate() {
-  testApplied();
-}
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/update_test_ota_simple.py
+++ /dev/null
@@ -1,20 +0,0 @@
-from b2g_update_test import B2GUpdateTestCase, OTA, FOTA
-import os
-
-update_test_dir = os.path.dirname(os.path.dirname(__file__))
-
-class UpdateTestOTASimple(B2GUpdateTestCase):
-    def setUp(self):
-        prefs = {
-            "b2g.update.apply-idle-timeout": 0
-        }
-        mar_path = os.path.join(update_test_dir, "unit", "data", "simple.mar")
-        self.stage_update(complete_mar=mar_path, prefs=prefs)
-        B2GUpdateTestCase.setUp(self)
-
-    def test_ota_simple(self):
-        self.marionette.set_script_timeout(60 * 1000 * 5)
-
-        ota_simple_js = os.path.join(os.path.dirname(__file__),
-                                     "update_test_ota_simple.js")
-        self.execute_update_test(ota_simple_js, apply=OTA)
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/update_test_status.js
+++ /dev/null
@@ -1,58 +0,0 @@
-/* Any copyright is dedicated to the Public Domain.
- * http://creativecommons.org/publicdomain/zero/1.0/ */
-
-/* import-globals-from ../../../../../testing/marionette/harness/marionette/atoms/b2g_update_test.js */
-
-const TEST_URL = "http://localhost";
-
-setPref("b2g.update.apply-idle-timeout", 0);
-setPref("app.update.backgroundErrors", 0);
-setPref("app.update.backgroundMaxErrors", 100);
-
-function forceCheckAndTestStatus(status, next) {
-  let mozSettings = window.navigator.mozSettings;
-  let forceSent = false;
-
-  mozSettings.addObserver("gecko.updateStatus", function statusObserver(setting) {
-    if (!forceSent) {
-      return;
-    }
-
-    mozSettings.removeObserver("gecko.updateStatus", statusObserver);
-    is(setting.settingValue, status, "gecko.updateStatus");
-    next();
-  });
-
-  sendContentEvent("force-update-check");
-  forceSent = true;
-}
-
-function testBadXml() {
-  setDefaultPref("app.update.url", TEST_URL + "/bad.xml");
-  forceCheckAndTestStatus("check-error-http-200", testAccessDenied);
-}
-
-function testAccessDenied() {
-  setDefaultPref("app.update.url", TEST_URL + "/cgi-bin/err.cgi?403");
-  forceCheckAndTestStatus("check-error-http-403", testNoUpdateXml);
-}
-
-function testNoUpdateXml() {
-  setDefaultPref("app.update.url", TEST_URL + "/none.html");
-  forceCheckAndTestStatus("check-error-http-404", testInternalServerError);
-}
-
-function testInternalServerError() {
-  setDefaultPref("app.update.url", TEST_URL + "/cgi-bin/err.cgi?500");
-  forceCheckAndTestStatus("check-error-http-500", testBadHostStatus);
-}
-
-function testBadHostStatus() {
-  setDefaultPref("app.update.url", "http://bad-host-doesnt-exist-sorry.com");
-  forceCheckAndTestStatus("check-error-" + Cr.NS_ERROR_UNKNOWN_HOST, cleanUp);
-}
-
-// Update test functions
-function preUpdate() {
-  testBadXml();
-}
deleted file mode 100644
--- a/toolkit/mozapps/update/tests/marionette/update_test_status.py
+++ /dev/null
@@ -1,29 +0,0 @@
-from b2g_update_test import B2GUpdateTestCase, OTA, FOTA
-import os
-
-this_dir = os.path.abspath(os.path.dirname(__file__))
-update_test_dir = os.path.dirname(this_dir)
-
-class UpdateTestStatus(B2GUpdateTestCase):
-    B2G_UPDATES = "/data/local/b2g-updates"
-
-    def setUp(self):
-        # Stage a phony update to get the http server up and running
-        mar_path = os.path.join(update_test_dir, "unit", "data", "simple.mar")
-        self.stage_update(complete_mar=mar_path)
-
-        bad_xml = os.path.join(this_dir, "data", "bad.xml")
-        err_cgi = os.path.join(this_dir, "data", "err.cgi")
-        self.runner.adb.push(bad_xml, self.B2G_UPDATES + "/bad.xml")
-        self.runner.adb.shell("mkdir " + self.B2G_UPDATES + "/cgi-bin")
-        self.runner.adb.push(err_cgi, self.B2G_UPDATES + "/cgi-bin/err.cgi")
-        self.runner.adb.shell("chmod 755 " + self.B2G_UPDATES + "/cgi-bin/err.cgi")
-
-        B2GUpdateTestCase.setUp(self)
-
-    def test_status(self):
-        self.marionette.set_script_timeout(30 * 1000)
-        status_js = os.path.join(os.path.dirname(__file__),
-                                 "update_test_status.js")
-        self.execute_update_test(status_js)
-