From 26a029d407be480d791972afb5975cf62c9360a6 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Fri, 19 Apr 2024 02:47:55 +0200 Subject: Adding upstream version 124.0.1. Signed-off-by: Daniel Baumann --- ...orary_extension_serviceworkers_not_persisted.py | 54 ++++++++++++++++++++++ 1 file changed, 54 insertions(+) create mode 100644 toolkit/components/extensions/test/marionette/test_temporary_extension_serviceworkers_not_persisted.py (limited to 'toolkit/components/extensions/test/marionette/test_temporary_extension_serviceworkers_not_persisted.py') diff --git a/toolkit/components/extensions/test/marionette/test_temporary_extension_serviceworkers_not_persisted.py b/toolkit/components/extensions/test/marionette/test_temporary_extension_serviceworkers_not_persisted.py new file mode 100644 index 0000000000..57c0696385 --- /dev/null +++ b/toolkit/components/extensions/test/marionette/test_temporary_extension_serviceworkers_not_persisted.py @@ -0,0 +1,54 @@ +# 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/. + +import os +import sys + +from marionette_driver import Wait +from marionette_driver.addons import Addons + +# Add this directory to the import path. +sys.path.append(os.path.dirname(__file__)) + +from service_worker_testutils import ( + EXT_DIR_PATH, + EXT_ID, + PREF_BG_SW_ENABLED, + MarionetteServiceWorkerTestCase, +) + + +class TemporarilyInstalledAddonServiceWorkerNotPersisted( + MarionetteServiceWorkerTestCase +): + def setUp(self): + super(TemporarilyInstalledAddonServiceWorkerNotPersisted, self).setUp() + self.test_extension_id = EXT_ID + # Flip the "mirror: once" pref and restart Firefox to be able + # to run the extension successfully. + self.marionette.set_pref(PREF_BG_SW_ENABLED, True) + self.marionette.restart(in_app=True) + + def tearDown(self): + self.marionette.restart(in_app=False, clean=True) + super(TemporarilyInstalledAddonServiceWorkerNotPersisted, self).tearDown() + + def test_temporarily_installed_addon_serviceWorkers_not_persisted(self): + self.install_temporary_extension_with_service_worker() + # Make sure the extension worker registration is persisted + # across restarts when the pref stays set to true. + self.marionette.restart(in_app=True) + self.assertFalse(self.is_extension_service_worker_registered) + + def install_temporary_extension_with_service_worker(self): + addons = Addons(self.marionette) + test_extension_path = os.path.join( + os.path.dirname(self.filepath), "data", EXT_DIR_PATH + ) + addons.install(test_extension_path, temp=True) + self.test_extension_base_url = self.get_extension_url() + Wait(self.marionette).until( + lambda _: self.is_extension_service_worker_registered, + message="Wait the extension service worker to be registered", + ) -- cgit v1.2.3