def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        self.URL = 'https://pinning-test.badssl.com/'
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        self.svg_dir = "file://%s/svg/" % ts.t['options']['test_data_dir']
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        self.URL = "file://%s/testfile.pdf" % ts.t['options']['test_data_dir']
Exemple #4
0
 def test_navigator(self):
     osname = testsuite.TestSuite().t['tbbinfos']['os']
     if osname == 'Linux':
         ua_os = 'X11; Linux x86_64'
         app_version = "5.0 (X11)"
         platform = "Linux x86_64"
         oscpu = "Linux x86_64"
     if osname == 'Windows':
         ua_os = 'Windows NT 6.1; Win64; x64'
         app_version = "5.0 (Windows)"
         platform = "Win64"
         oscpu = "Windows NT 6.1; Win64; x64"
     if osname == 'MacOSX':
         ua_os = 'Macintosh; Intel Mac OS X 10.13'
         app_version = "5.0 (Macintosh)"
         platform = "MacIntel"
         oscpu = "Intel Mac OS X 10.13"
     nav_props[
         "userAgent"] = "Mozilla/5.0 (" + ua_os + "; rv:60.0) Gecko/20100101 Firefox/60.0"
     nav_props["appVersion"] = app_version
     nav_props["platform"] = platform
     nav_props["oscpu"] = oscpu
     with self.marionette.using_context('content'):
         self.marionette.navigate('about:robots')
         js = self.marionette.execute_script
         for nav_prop, expected_value in nav_props.iteritems():
             # cast to string on the JS side, otherwise we have issues
             # that raise from Python/JS type disparity
             self.marionette.set_context(self.marionette.CONTEXT_CONTENT)
             current_value = js("return ''+navigator['%s']" % nav_prop)
             self.assertEqual(
                 expected_value, current_value,
                 "Navigator property mismatch %s [%s != %s]" %
                 (nav_prop, current_value, expected_value))
Exemple #5
0
 def GenCases(self, debug):
     """Generate test case under this <multi_test_suites> tag."""
     for ts in self.tsNodes:
         # Init a testsuite instance
         Testsuite = testsuite.TestSuite(ts, self.tsType, self.configer, self.analyticsTools, self.datasets, \
                 self.paraHandler, self.algorithm, self.preParas, self.caseScheduleFileHd, \
                 self.caseSQLFileHd, self.testSuiteSqlHd, self.testItemSqlHd)
         Testsuite.GenCases(debug)
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        self.HTTP_URL = "http://httpbin.org/"
        self.HTTPS_URL = "https://httpbin.org/"
Exemple #7
0
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        self.http_url = "%s/noscript/" % ts.t['options']['test_data_url']
        self.https_url = "%s/noscript/" % ts.t['options']['test_data_url_https']
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        self.URLs = [
            'chrome://torlauncher/content/network-settings-wizard.xul',
        ]
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        self.test_page_url = ts.t['test']['fpcentral_url']

        if 'timeout' in ts.t['test']:
            self.timeout = ts.t['test']['timeout']
        else:
            self.timeout = 50000
Exemple #10
0
 def test_useragent(self):
     with self.marionette.using_context('content'):
         self.marionette.navigate('about:robots')
         js = self.marionette.execute_script
         # Check that useragent string is as expected
         # We better know the ESR version we're testing
         osname = testsuite.TestSuite().t['tbbinfos']['os']
         if osname == 'Linux':
             ua_os = 'X11; Linux x86_64'
         if osname == 'Windows':
             ua_os = 'Windows NT 6.1; Win64; x64'
         if osname == 'MacOSX':
             ua_os = 'Macintosh; Intel Mac OS X 10.13'
         self.assertEqual("Mozilla/5.0 (" + ua_os + "; rv:60.0) Gecko/20100101 Firefox/60.0",
                           js("return navigator.userAgent"))
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        if ts.t['test']['remote']:
            test_data_url = ts.t['options']['test_data_url']
        else:
            test_data_url = "file://%s" % ts.t['options']['test_data_dir']
        self.test_page_url = '%s/%s.html' % (test_data_url,
                                             ts.t['test']['name'])

        if ts.t['test']['timeout']:
            self.timeout = ts.t['test']['timeout']
        else:
            self.timeout = 50000
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        self.kSecuritySettings = {
            #                                                 1-high 2-m    3-m    4-low
            "javascript.options.ion": [0, False, False, False, True],
            "javascript.options.baselinejit": [0, False, False, False, True],
            "javascript.options.native_regexp": [0, False, False, False, True],
            "media.webaudio.enabled": [0, False, False, False, True],
            "mathml.disabled": [0, True, True, True, False],
            "gfx.font_rendering.opentype_svg.enabled":
            [0, False, False, True, True],
            "svg.disabled": [0, True, False, False, False],
        }

        # Settings for Tor Browser 6.0.* versions
        self.kSecuritySettings_60 = {}
    def test_settings(self):
        ts = testsuite.TestSuite()
        with self.marionette.using_context('content'):
            self.marionette.navigate('about:robots')

            settings = self.SETTINGS.copy()
            if self.ts.t['tbbinfos']['version'].startswith('8.0'):
                settings.update(self.SETTINGS_80)

            if self.ts.t['tbbinfos']['version'].startswith('8.5') or \
                    self.ts.t['tbbinfos']['version'] == 'tbb-nightly':
                settings.update(self.SETTINGS_85)

            errors = ''
            for name, val in settings.iteritems():
                if self.marionette.get_pref(name) != val:
                    errors += "%s: %s != %s\n" % (name, self.marionette.get_pref(name), val)



            self.assertEqual(errors, '', msg=errors)
 def setUp(self):
     MarionetteTestCase.setUp(self)
     ts = testsuite.TestSuite()
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        # This variable contains settings we want to check on all versions of
        # Tor Browser. See below for settings to check on specific versions.
        #
        # Most of the following checks and comments are taken from 
        # https://github.com/arthuredelstein/tor-browser/blob/12620/tbb-tests/browser_tor_TB4.js 
        self.SETTINGS = {
                "privacy.clearOnShutdown.cache": True,
                "privacy.clearOnShutdown.cookies": True,
                "privacy.clearOnShutdown.downloads": True,
                "privacy.clearOnShutdown.formdata": True,
                "privacy.clearOnShutdown.history": True,
                "privacy.clearOnShutdown.sessions": True,

                # #16632 : Turn on the background autoupdater
                "app.update.auto": True,

                "browser.search.update": False,
                "browser.rights.3.shown": True,

                # startup.homepage_welcome_url is changed by:
                # marionette/firefox-ui-tests/firefox_ui_harness/runners/base.py
                #"startup.homepage_welcome_url": "",

                # Disk activity: Disable Browsing History Storage
                "browser.privatebrowsing.autostart": True,
                "browser.cache.disk.enable": False,
                "browser.cache.offline.enable": False,
                "dom.indexedDB.enabled": True,
                "permissions.memory_only": True,
                "network.cookie.lifetimePolicy": 2,
                "browser.download.manager.retention": 1,
                "security.nocertdb": True,

                # Disk activity: TBB Directory Isolation
                "browser.download.useDownloadDir": False,
                "browser.shell.checkDefaultBrowser": False,
                "browser.download.manager.addToRecentDocs": False,

                # Misc privacy: Disk
                "signon.rememberSignons": False,
                "browser.formfill.enable": False,
                "signon.autofillForms": False,
                "browser.sessionstore.privacy_level": 2,

                # Misc privacy: Remote
                "browser.send_pings": False,
                "geo.enabled": False,
                "geo.wifi.uri": "",
                "browser.search.suggest.enabled": False,
                "browser.safebrowsing.enabled": False,
                "browser.safebrowsing.malware.enabled": False,
                "browser.download.manager.scanWhenDone": False, # prevents AV remote reporting of downloads
                "extensions.ui.lastCategory": "addons://list/extension",
                "datareporting.healthreport.service.enabled": False, # Yes, all three of these must be set
                "datareporting.healthreport.uploadEnabled": False,
                "datareporting.policy.dataSubmissionEnabled": False,
                "security.mixed_content.block_active_content": True, # Activated with bug #21323

                # Don't fetch a localized remote page that Tor Browser interacts with, see
                # #16727. And, yes, it is "reportUrl" and not "reportURL".
                "datareporting.healthreport.about.reportUrl": "data:text/plain,",
                "datareporting.healthreport.about.reportUrlUnified": "data:text/plain,",

                # Make sure Unified Telemetry is really disabled, see: #18738.
                "toolkit.telemetry.unified": False,
                "toolkit.telemetry.enabled": False,
                # No experiments, use Tor Browser. See 21797.
                "experiments.enabled": False,
                "browser.syncPromoViewsLeftMap": "{\"addons\":0, \"passwords\":0, \"bookmarks\":0}", # Don't promote sync
                "identity.fxaccounts.enabled": False, # Disable sync by default
                "services.sync.engine.prefs": False, # Never sync prefs, addons, or tabs with other browsers
                "services.sync.engine.addons": False,
                "services.sync.engine.tabs": False,
                "extensions.getAddons.cache.enabled": False, # https://blog.mozilla.org/addons/how-to-opt-out-of-add-on-metadata-updates/
                "browser.newtabpage.preload": False, # Bug 16316 - Avoid potential confusion over tiles for now.
                "browser.search.countryCode": "US", # The next three prefs disable GeoIP search lookups (#16254)
                "browser.search.region": "US",
                "browser.search.geoip.url": "",
                "browser.fixup.alternate.enabled": False, # Bug #16783: Prevent .onion fixups
                # Make sure there is no Tracking Protection active in Tor Browser, see: #17898.
                "privacy.trackingprotection.pbmode.enabled": False,
                # Disable the Pocket extension (Bug #18886)
                "browser.pocket.enabled": False,
                "browser.pocket.api": "",
                "browser.pocket.site": "",
                "network.http.referer.hideOnionSource": True,

                # Fingerprinting
                "webgl.disable-extensions": True,
                "webgl.disable-fail-if-major-performance-caveat": True,
                "webgl.enable-webgl2": False,
                "gfx.downloadable_fonts.fallback_delay": -1,
                "general.appname.override": "Netscape",
                "general.appversion.override": "5.0 (Windows)",
                "general.oscpu.override": "Windows NT 6.1",
                "general.platform.override": "Win32",
                "general.productSub.override": "20100101",
                "general.buildID.override": "20100101",
                "browser.startup.homepage_override.buildID": "20100101",
                "general.useragent.vendor": "",
                "general.useragent.vendorSub": "",
                "dom.enable_performance": False,
                "plugin.expose_full_path": False,
                "browser.zoom.siteSpecific": False,
                "intl.charset.default": "windows-1252",
                "browser.link.open_newwindow.restriction": 0, # Bug 9881: Open popups in new tabs (to avoid fullscreen popups)
                "dom.gamepad.enabled": False, # bugs.torproject.org/13023
                # Disable video statistics fingerprinting vector (bug 15757)
                "media.video_stats.enabled": False,
                # Set video VP9 to 0 for everyone (bug 22548)
                "media.benchmark.vp9.threshold": 0,
                # Disable device sensors as possible fingerprinting vector (bug 15758)
                "device.sensors.enabled": False,
                "dom.enable_resource_timing": False, # Bug 13024: To hell with this API
                "dom.enable_user_timing": False, # Bug 16336: To hell with this API
                "privacy.resistFingerprinting": True,
                "privacy.resistFingerprinting.block_mozAddonManager": True, # Bug 26114
                "dom.event.highrestimestamp.enabled": True, # Bug #17046: "Highres" (but truncated) timestamps prevent uptime leaks
                "privacy.suppressModifierKeyEvents": True, # Bug #17009: Suppress ALT and SHIFT events"
                "ui.use_standins_for_native_colors": True, # https://bugzilla.mozilla.org/232227
                "privacy.use_utc_timezone": True,
                "media.webspeech.synth.enabled": False, # Bug 10283: Disable SpeechSynthesis API
                "dom.webaudio.enabled": False, # Bug 13017: Disable Web Audio API
                "dom.maxHardwareConcurrency": 1, # Bug 21675: Spoof single-core cpu
                "dom.w3c_touch_events.enabled": 0, # Bug 10286: Always disable Touch API
                "dom.w3c_pointer_events.enabled": False,
                "dom.vr.enabled": False, # Bug 21607: Disable WebVR for now
                # Disable randomised Firefox HTTP cache decay user test groups (Bug: 13575)
                "security.webauth.webauthn": False, # Bug 26614: Disable Web Authentication API for now
                "browser.cache.frecency_experiment": -1,
                
                # Third party stuff
                "network.cookie.cookieBehavior": 1,
                "privacy.firstparty.isolate": True,
                "network.http.spdy.allow-push": False, # Disabled for now. See https://bugs.torproject.org/27127
                "network.predictor.enabled": False, # Temporarily disabled. See https://bugs.torproject.org/16633
                
                # Proxy and proxy security
                "network.proxy.socks": "127.0.0.1",
                "network.proxy.socks_remote_dns": True,
                "network.proxy.no_proxies_on": "", # For fingerprinting and local service vulns (#10419)
                "network.proxy.type": 1,
                "network.security.ports.banned": "9050,9051,9150,9151",
                "network.dns.disablePrefetch": True,
                "network.protocol-handler.external-default": False,
                "network.protocol-handler.external.mailto": False,
                "network.protocol-handler.external.news": False,
                "network.protocol-handler.external.nntp": False,
                "network.protocol-handler.external.snews": False,
                "network.protocol-handler.warn-external.mailto": True,
                "network.protocol-handler.warn-external.news": True,
                "network.protocol-handler.warn-external.nntp": True,
                "network.protocol-handler.warn-external.snews": True,
                "plugins.click_to_play": True,
                "plugin.state.flash": 1,
                "media.peerconnection.enabled": False, # Disable WebRTC interfaces
                # Disables media devices but only if `media.peerconnection.enabled` is set to
                # `false` as well. (see bug 16328 for this defense-in-depth measure)
                "media.navigator.enabled": False,
                # GMPs: We make sure they don't show up on the Add-on panel and confuse users.
                # And the external update/donwload server must not get pinged. We apply a
                # clever solution for https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=769716.
                "media.gmp-provider.enabled": False,
                "media.gmp-manager.url.override": "data:text/plain,",
                # Since ESR52 it is not enough anymore to block pinging the GMP update/download
                # server. There is a local fallback that must be blocked now as well. See:
                # https://bugzilla.mozilla.org/show_bug.cgi?id=1267495.
                "media.gmp-manager.updateEnabled": False,
                # Mozilla is relying on preferences to make sure no DRM blob is downloaded and
                # run. Even though those prefs should be set correctly by specifying
                # --disable-eme (which we do), we disable all of them here as well for defense
                # in depth.
                "browser.eme.ui.enabled": False,
                "media.gmp-eme-adobe.visible": False,
                "media.gmp-eme-adobe.enabled": False,
                "media.gmp-widevinecdm.visible": False,
                "media.gmp-widevinecdm.enabled": False,
                "media.eme.enabled": False,
                "media.eme.apiVisible": False,
                # WebIDE can bypass proxy settings for remote debugging. It also downloads
                # some additional addons that we have not reviewed. Turn all that off.
                "devtools.webide.autoinstallADBHelper": False,
                "devtools.webide.autoinstallFxdtAdapters": False,
                "devtools.webide.enabled": False,
                "devtools.appmanager.enabled": False,
                # The in-browser debugger for debugging chrome code is not coping with our
                # restrictive DNS look-up policy. We use "127.0.0.1" instead of "localhost" as
                # a workaround. See bug 16523 for more details.
                "devtools.debugger.chrome-debugging-host": "127.0.0.1",
                # Disable using UNC paths (bug 26424 and Mozilla's bug 1413868)
                "network.file.disable_unc_paths": True,
                # Enhance our treatment of file:// to avoid proxy bypasses (see Mozilla's bug
                # 1412081)
                "network.file.path_blacklist": "/net",

                # Network and performance
                "security.ssl.enable_false_start": True,
                "network.http.connection-retry-timeout": 0,
                "network.http.max-persistent-connections-per-proxy": 256,
                "network.manage-offline-status": False,
                # No need to leak things to Mozilla, see bug 21790
                "network.captive-portal-service.enabled": False,
                # As a "defense in depth" measure, configure an empty push server URL (the
                # DOM Push features are disabled by default via other prefs).
                "dom.push.serverURL": "",

                
                # Extension support
                "extensions.autoDisableScopes": 0,
                "extensions.bootstrappedAddons": "{}",
                "extensions.checkCompatibility.4.*": False,
                "extensions.enabledAddons": "https-everywhere%40eff.org:3.1.4,%7B73a6fe31-595d-460b-a920-fcc0f8843232%7D:2.6.6.1,torbutton%40torproject.org:1.5.2,ubufox%40ubuntu.com:2.6,tor-launcher%40torproject.org:0.1.1pre-alpha,%7B972ce4c6-7e08-4474-a285-3208198ce6fd%7D:17.0.5",
                "extensions.enabledItems": "[email protected]:,{73a6fe31-595d-460b-a920-fcc0f8843232}:1.9.9.57,{e0204bd5-9d31-402b-a99d-a6aa8ffebdca}:1.2.4,{972ce4c6-7e08-4474-a285-3208198ce6fd}:3.5.8",
                # extensions.enabledScopes is set to 5 by marionette_driver
                #"extensions.enabledScopes": 1,
                "extensions.pendingOperations": False,
                "xpinstall.whitelist.add": "",
                "xpinstall.whitelist.add.36": "",
                # We don't know what extensions Mozilla is advertising to our users and we
                # don't want to have some random Google Analytics script running either on the
                # about:addons page, see bug 22073 and 22900.
                "extensions.getAddons.showPane": False,
                # Show our legacy extensions directly on about:addons and get rid of the
                # warning for the default theme.
                "extensions.legacy.exceptions": "{972ce4c6-7e08-4474-a285-3208198ce6fd},[email protected],[email protected]",
                # Bug 26114: Allow NoScript to access addons.mozilla.org etc.
                "extensions.webextensions.restrictedDomains": "",

                # Audio_data is deprecated in future releases, but still present
                # in FF24. This is a dangerous combination (spotted by iSec)
                "media.audio_data.enabled": False,
                
                "dom.enable_resource_timing": False,

                # If true, remote JAR files will not be opened, regardless of content type
                # Patch written by Jeff Gibat (iSEC).
                "network.jar.block-remote-files": True,

                # Disable RC4 fallback. This will go live in Firefox 44, Chrome and IE/Edge:
                # https://blog.mozilla.org/security/2015/09/11/deprecating-the-rc4-cipher/
                "security.tls.unrestricted_rc4_fallback": False,

                # Enforce certificate pinning, see: https://bugs.torproject.org/16206
                "security.cert_pinning.enforcement_level": 2,

                # Don't allow MitM via Microsoft Family Safety, see bug 21686
                "security.family_safety.mode": 0,

                # Enforce SHA1 deprecation, see: bug 18042.
                "security.pki.sha1_enforcement_level": 2,

                # Disable the language pack signing check for now, see: bug 26465
                "extensions.langpacks.signatures.required": False,

                # Avoid report TLS errors to Mozilla. We might want to repurpose this feature
                # one day to help detecting bad relays (which is bug 19119). For now we just
                # hide the checkbox, see bug 22072.
                "security.ssl.errorReporting.enabled": False,

                # Workaround for https://bugs.torproject.org/13579. Progress on
                # `about:downloads` is only shown if the following preference is set to `true`
                # in case the download panel got removed from the toolbar.
                "browser.download.panel.shown": True,

                # Treat .onions as secure
                "dom.securecontext.whitelist_onions": True,

                # checking torbrowser.version match the version from the filename
                "torbrowser.version": ts.t["tbbinfos"]["version"],
                
                # Disable device sensors as possible fingerprinting vector (bug 15758)
                "device.sensors.enabled": False,
                # Disable video statistics fingerprinting vector (bug 15757)
                "media.video_stats.enabled": False,

                "startup.homepage_override_url": "https://blog.torproject.org/category/tags/tor-browser",
                "network.jar.block-remote-files": True,
                }

        # Settings for the Tor Browser 8.0
        self.SETTINGS_80 = {
                }

        # Settings for the Tor Browser 8.5 and Nightly
        self.SETTINGS_85 = {
                }
 def setUp(self):
     MarionetteTestCase.setUp(self)
     ts = testsuite.TestSuite()
     self.test_page_url = '%s/acid3/' % ts.t['options']['test_data_url']
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        # The list of expected DOM objects
        self.interfaceNamesInGlobalScope = [
            "AbortController",
            "AbortSignal",
            "addEventListener",
            "adjustToolbarIconArrow",
            "alert",
            "AnalyserNode",
            "Animation",
            "AnimationEffect",
            "AnimationEvent",
            "AnimationPlayer",
            "AnimationTimeline",
            "AnonymousContent",
            "Application",
            "applicationCache",
            "ArchiveRequest",
            "Array",
            "ArrayBuffer",
            "AsyncScrollEventDetail",
            "atob",
            "Attr",
            "Audio",
            "AudioBuffer",
            "AudioBufferSourceNode",
            "AudioContext",
            "AudioDestinationNode",
            "AudioListener",
            "AudioNode",
            "AudioParam",
            "AudioProcessingEvent",
            "AudioScheduledSourceNode",
            "AudioStreamTrack",
            "back",
            "BarProp",
            "BaseAudioContext",
            "BatteryManager",
            "BeforeUnloadEvent",
            "BiquadFilterNode",
            "Blob",
            "BlobEvent",
            "blur",
            "Boolean",
            "BoxObject",
            "BroadcastChannel",
            "BrowserFeedWriter",
            "btoa",
            "Cache",
            "caches",
            "CacheStorage",
            "CameraCapabilities",
            "CameraClosedEvent",
            "CameraConfigurationEvent",
            "CameraControl",
            "CameraDetectedFace",
            "CameraFacesDetectedEvent",
            "CameraManager",
            "CameraRecorderAudioProfile",
            "CameraRecorderProfile",
            "CameraRecorderProfiles",
            "CameraRecorderVideoProfile",
            "CameraStateChangeEvent",
            "cancelAnimationFrame",
            "cancelIdleCallback",
            "CanvasCaptureMediaStream",
            "CanvasGradient",
            "CanvasPattern",
            "CanvasRenderingContext2D",
            "captureEvents",
            "CaretPosition",
            "CDATASection",
            "ChannelMergerNode",
            "ChannelSplitterNode",
            "CharacterData",
            "ChromeMessageBroadcaster",
            "ChromeMessageSender",
            "ChromeWindow",
            "ChromeWorker",
            "clearInterval",
            "clearTimeout",
            "ClientInformation",
            "ClientRect",
            "ClientRectList",
            "ClipboardEvent",
            "close",
            "closed",
            "CloseEvent",
            "CommandEvent",
            "Comment",
            "Components",
            "CompositionEvent",
            "confirm",
            "console",
            "Console",
            "Contact",
            "ContactManager",
            "_content",
            "content",
            "ContentFrameMessageManager",
            "ContentProcessMessageManager",
            "controllers",
            "Controllers",
            "ConvolverNode",
            "Counter",
            "createImageBitmap",
            "CRMFObject",
            "crypto",
            "Crypto",
            "CryptoDialogs",
            "CryptoKey",
            "CSS",
            "CSS2Properties",
            "CSSCharsetRule",
            "CSSConditionRule",
            "CSSCounterStyleRule",
            "CSSFontFaceRule",
            "CSSFontFeatureValuesRule",
            "CSSGroupingRule",
            "CSSGroupRuleRuleList",
            "CSSImportRule",
            "CSSKeyframeRule",
            "CSSKeyframesRule",
            "CSSMediaRule",
            "CSSMozDocumentRule",
            "CSSNamespaceRule",
            "CSSNameSpaceRule",
            "CSSPageRule",
            "CSSPrimitiveValue",
            "CSSRect",
            "CSSRule",
            "CSSRuleList",
            "CSSStyleDeclaration",
            "CSSStyleRule",
            "CSSStyleSheet",
            "CSSSupportsRule",
            "CSSUnknownRule",
            "CSSValue",
            "CSSValueList",
            "CustomEvent",
            "DataChannel",
            "DataContainerEvent",
            "DataErrorEvent",
            "DataTransfer",
            "DataTransferItem",
            "DataTransferItemList",
            "DataView",
            "Date",
            "decodeURI",
            "decodeURIComponent",
            "DelayNode",
            "DesktopNotification",
            "DesktopNotificationCenter",
            "DeviceAcceleration",
            "DeviceLightEvent",
            "DeviceMotionEvent",
            "DeviceOrientationEvent",
            "devicePixelRatio",
            "DeviceProximityEvent",
            "DeviceRotationRate",
            "DeviceStorage",
            "DeviceStorageChangeEvent",
            "DeviceStorageCursor",
            "Directory",
            "dispatchEvent",
            "document",
            "Document",
            "DocumentFragment",
            "DocumentTouch",
            "DocumentType",
            "DocumentXBL",
            "DOMApplication",
            "DOMApplicationsManager",
            "DOMConstructor",
            "DOMCursor",
            "DOMError",
            "DOMException",
            "DOMImplementation",
            "DOMMatrix",
            "DOMMatrixReadOnly",
            "DOMMMIError",
            "DOMParser",
            "DOMPoint",
            "DOMPointReadOnly",
            "DOMQuad",
            "DOMRect",
            "DOMRectList",
            "DOMRectReadOnly",
            "DOMRequest",
            "DOMSettableTokenList",
            "DOMStringList",
            "DOMStringMap",
            "DOMTokenList",
            "DOMTransactionEvent",
            "DragEvent",
            "dump",
            "DynamicsCompressorNode",
            "Element",
            "ElementCSSInlineStyle",
            "ElementReplaceEvent",
            "ElementTimeControl",
            "encodeURI",
            "encodeURIComponent",
            "Error",
            "ErrorEvent",
            "escape",
            "eval",
            "EvalError",
            "Event",
            "EventListener",
            "EventListenerInfo",
            "EventSource",
            "EventTarget",
            "external",
            "External",
            "fetch",
            "File",
            "FileHandle",
            "FileList",
            "FileReader",
            "FileRequest",
            "FileSystem",
            "FileSystemDirectoryEntry",
            "FileSystemDirectoryReader",
            "FileSystemEntry",
            "FileSystemFileEntry",
            "find",
            "Float32Array",
            "Float64Array",
            "focus",
            "FocusEvent",
            "FontFace",
            "FontFaceList",
            "FontFaceSet",
            "FontFaceSetLoadEvent",
            "FormData",
            "forward",
            "frameElement",
            "frames",
            "fullScreen",
            "Function",
            "FutureResolver",
            "GainNode",
            "Gamepad",
            "GamepadAxisMoveEvent",
            "GamepadButtonEvent",
            "GamepadEvent",
            "GamepadHapticActuator",
            "GamepadPose",
            "GeoGeolocation",
            "GeoPosition",
            "GeoPositionCallback",
            "GeoPositionCoords",
            "GeoPositionError",
            "GeoPositionErrorCallback",
            "getComputedStyle",
            "getDefaultComputedStyle",
            "getInterface",
            "getSelection",
            "GetUserMediaErrorCallback",
            "GetUserMediaSuccessCallback",
            "GlobalObjectConstructor",
            "GlobalPropertyInitializer",
            "HashChangeEvent",
            "Headers",
            "history",
            "History",
            "home",
            "HTMLAllCollection",
            "HTMLAnchorElement",
            "HTMLAppletElement",
            "HTMLAreaElement",
            "HTMLAudioElement",
            "HTMLBaseElement",
            "HTMLBodyElement",
            "HTMLBRElement",
            "HTMLButtonElement",
            "HTMLByteRanges",
            "HTMLCanvasElement",
            "HTMLCollection",
            "HTMLCommandElement",
            "HTMLContentElement",
            "HTMLDataElement",
            "HTMLDataListElement",
            "HTMLDetailsElement",
            "HTMLDirectoryElement",
            "HTMLDivElement",
            "HTMLDListElement",
            "HTMLDocument",
            "HTMLElement",
            "HTMLEmbedElement",
            "HTMLFieldSetElement",
            "HTMLFontElement",
            "HTMLFormControlsCollection",
            "HTMLFormElement",
            "HTMLFrameElement",
            "HTMLFrameSetElement",
            "HTMLHeadElement",
            "HTMLHeadingElement",
            "HTMLHRElement",
            "HTMLHtmlElement",
            "HTMLIFrameElement",
            "HTMLImageElement",
            "HTMLInputElement",
            "HTMLLabelElement",
            "HTMLLegendElement",
            "HTMLLIElement",
            "HTMLLinkElement",
            "HTMLMapElement",
            "HTMLMediaElement",
            "HTMLMenuElement",
            "HTMLMenuItemElement",
            "HTMLMetaElement",
            "HTMLMeterElement",
            "HTMLModElement",
            "HTMLObjectElement",
            "HTMLOListElement",
            "HTMLOptGroupElement",
            "HTMLOptionElement",
            "HTMLOptionsCollection",
            "HTMLOutputElement",
            "HTMLParagraphElement",
            "HTMLParamElement",
            "HTMLPictureElement",
            "HTMLPreElement",
            "HTMLProgressElement",
            "HTMLPropertiesCollection",
            "HTMLQuoteElement",
            "HTMLScriptElement",
            "HTMLSelectElement",
            "HTMLShadowElement",
            "HTMLSourceElement",
            "HTMLSpanElement",
            "HTMLStyleElement",
            "HTMLTableCaptionElement",
            "HTMLTableCellElement",
            "HTMLTableColElement",
            "HTMLTableElement",
            "HTMLTableRowElement",
            "HTMLTableSectionElement",
            "HTMLTemplateElement",
            "HTMLTextAreaElement",
            "HTMLTimeElement",
            "HTMLTitleElement",
            "HTMLTrackElement",
            "HTMLUListElement",
            "HTMLUnknownElement",
            "HTMLVideoElement",
            "IDBCursor",
            "IDBCursorWithValue",
            "IDBDatabase",
            "IDBFactory",
            "IDBFileHandle",
            "IDBFileRequest",
            "IDBIndex",
            "IDBKeyRange",
            "IDBMutableFile",
            "IDBObjectStore",
            "IDBOpenDBRequest",
            "IDBRequest",
            "IDBTransaction",
            "IDBVersionChangeEvent",
            "IdleDeadline",
            "Image",
            "ImageBitmap",
            "ImageBitmapRenderingContext",
            "ImageData",
            "ImageDocument",
            "indexedDB",
            "Infinity",
            "innerHeight",
            "innerWidth",
            "InputEvent",
            "insertPropertyStrings",
            "InstallTrigger",
            "InstallTriggerImpl",
            "Int16Array",
            "Int32Array",
            "Int8Array",
            "InternalError",
            "IntersectionObserver",
            "IntersectionObserverEntry",
            "Intl",
            "isFinite",
            "isNaN",
            "isSecureContext",
            "Iterator",
            "JSON",
            "JSWindow",
            "KeyboardEvent",
            "KeyEvent",
            "length",
            "LinkStyle",
            "LoadStatus",
            "LocalMediaStream",
            "localStorage",
            "location",
            "Location",
            "locationbar",
            "LockedFile",
            "LSProgressEvent",
            "Map",
            "matchMedia",
            "Math",
            "MediaElementAudioSourceNode",
            "MediaEncryptedEvent",
            "MediaError",
            "MediaKeys",
            "MediaKeyError",
            "MediaKeyMessageEvent",
            "MediaKeySession",
            "MediaKeyStatusMap",
            "MediaKeySystemAccess",
            "MediaList",
            "MediaQueryList",
            "MediaQueryListEvent",
            "MediaQueryListListener",
            "MediaRecorder",
            "MediaRecorderErrorEvent",
            "MediaSource",
            "MediaStream",
            "MediaStreamAudioDestinationNode",
            "MediaStreamAudioSourceNode",
            "MediaStreamTrack",
            "MediaStreamTrackEvent",
            "menubar",
            "MenuBoxObject",
            "MessageChannel",
            "MessageEvent",
            "MessagePort",
            "MimeType",
            "MimeTypeArray",
            "ModalContentWindow",
            "MouseEvent",
            "MouseScrollEvent",
            "moveBy",
            "moveTo",
            "MozAlarmsManager",
            "mozAnimationStartTime",
            "MozApplicationEvent",
            "MozBlobBuilder",
            "MozBrowserFrame",
            "mozCancelAnimationFrame",
            "mozCancelRequestAnimationFrame",
            "MozCanvasPrintState",
            "MozConnection",
            "mozContact",
            "MozContactChangeEvent",
            "MozCSSKeyframeRule",
            "MozCSSKeyframesRule",
            "mozIndexedDB",
            "mozInnerScreenX",
            "mozInnerScreenY",
            "MozMmsEvent",
            "MozMmsMessage",
            "MozMobileCellInfo",
            "MozMobileConnectionInfo",
            "MozMobileMessageManager",
            "MozMobileMessageThread",
            "MozMobileNetworkInfo",
            "MozNamedAttrMap",
            "MozNavigatorMobileMessage",
            "MozNavigatorNetwork",
            "MozNavigatorSms",
            "MozNavigatorTime",
            "MozNetworkStats",
            "MozNetworkStatsData",
            "MozNetworkStatsManager",
            "mozPaintCount",
            "MozPowerManager",
            "mozRequestAnimationFrame",
            "mozRequestOverfill",
            "MozSelfSupport",
            "MozSettingsEvent",
            "MozSettingsTransactionEvent",
            "MozSmsEvent",
            "MozSmsFilter",
            "MozSmsManager",
            "MozSmsMessage",
            "MozSmsSegmentInfo",
            "MozTimeManager",
            "MozTouchEvent",
            "MozWakeLock",
            "MozWakeLockListener",
            "MutationEvent",
            "MutationObserver",
            "MutationRecord",
            "name",
            "NamedNodeMap",
            "NaN",
            "navigator",
            "Navigator",
            "NavigatorCamera",
            "NavigatorDesktopNotification",
            "NavigatorDeviceStorage",
            "NavigatorGeolocation",
            "NavigatorUserMedia",
            "netscape",
            "Node",
            "NodeFilter",
            "NodeIterator",
            "NodeList",
            "NodeSelector",
            "__noscriptStorage",
            "Notification",
            "NotifyAudioAvailableEvent",
            "NotifyPaintEvent",
            "NSEditableElement",
            "NSEvent",
            "NSRGBAColor",
            "NSXPathExpression",
            "Number",
            "Object",
            "OfflineAudioCompletionEvent",
            "OfflineAudioContext",
            "OfflineResourceList",
            "onabort",
            "onabsolutedeviceorientation",
            "onafterprint",
            "onanimationcancel",
            "onanimationend",
            "onanimationiteration",
            "onanimationstart",
            "onauxclick",
            "onbeforeprint",
            "onbeforeunload",
            "onblur",
            "oncanplay",
            "oncanplaythrough",
            "onchange",
            "onclick",
            "onclose",
            "oncontextmenu",
            "ondblclick",
            "ondevicelight",
            "ondevicemotion",
            "ondeviceorientation",
            "ondeviceproximity",
            "ondrag",
            "ondragend",
            "ondragenter",
            "ondragexit",
            "ondragleave",
            "ondragover",
            "ondragstart",
            "ondrop",
            "ondurationchange",
            "onemptied",
            "onended",
            "onerror",
            "onfocus",
            "ongotpointercapture",
            "onhashchange",
            "oninput",
            "oninvalid",
            "onkeydown",
            "onkeypress",
            "onkeyup",
            "onlanguagechange",
            "onload",
            "onLoad",
            "onloadeddata",
            "onloadedmetadata",
            "onloadend",
            "onloadstart",
            "onlostpointercapture",
            "onmessage",
            "onmessageerror",
            "onmousedown",
            "onmouseenter",
            "onmouseleave",
            "onmousemove",
            "onmouseout",
            "onmouseover",
            "onmouseup",
            "onmozfullscreenchange",
            "onmozfullscreenerror",
            "onmozpointerlockchange",
            "onmozpointerlockerror",
            "onoffline",
            "ononline",
            "onpagehide",
            "onpageshow",
            "onpause",
            "onplay",
            "onplaying",
            "onpointercancel",
            "onpointerdown",
            "onpointerenter",
            "onpointerleave",
            "onpointermove",
            "onpointerout",
            "onpointerover",
            "onpointerup",
            "onpopstate",
            "onprogress",
            "onratechange",
            "onreset",
            "onresize",
            "onscroll",
            "onseeked",
            "onseeking",
            "onselect",
            "onselectstart",
            "onshow",
            "onstalled",
            "onstorage",
            "onsubmit",
            "onsuspend",
            "ontimeupdate",
            "ontoggle",
            "ontransitioncancel",
            "ontransitionend",
            "ontransitionrun",
            "ontransitionstart",
            "onunload",
            "onuserproximity",
            "onvolumechange",
            "onwaiting",
            "onwebkitanimationend",
            "onwebkitanimationiteration",
            "onwebkitanimationstart",
            "onwebkittransitionend",
            "onwheel",
            "open",
            "openDialog",
            "opener",
            "OpenWindowEventDetail",
            "Option",
            "origin",
            "OscillatorNode",
            "outerHeight",
            "outerWidth",
            "PageTransitionEvent",
            "pageXOffset",
            "pageYOffset",
            "PaintRequest",
            "PaintRequestList",
            "PannerNode",
            "parent",
            "parseFloat",
            "parseInt",
            "Parser",
            "ParserJS",
            "Path2D",
            "PaymentRequestInfo",
            "performance",
            "Performance",
            "PerformanceEntry",
            "PerformanceMark",
            "PerformanceMeasure",
            "PerformanceNavigation",
            "PerformanceNavigationTiming",
            "PerformanceObserver",
            "PerformanceObserverEntryList",
            "PerformanceResourceTiming",
            "PerformanceTiming",
            "PeriodicWave",
            "Permissions",
            "PermissionSettings",
            "PermissionStatus",
            "personalbar",
            "PhoneNumberService",
            "Pkcs11",
            "Plugin",
            "PluginArray",
            "PluginCrashedEvent",
            "PointerEvent",
            "PopStateEvent",
            "PopupBlockedEvent",
            "PopupBoxObject",
            "postMessage",
            "print",
            "ProcessingInstruction",
            "ProgressEvent",
            "Promise",
            "PromiseDebugging",
            "prompt",
            "PropertyNodeList",
            "Proxy",
            "PushManager",
            "QueryInterface",
            "RadioNodeList",
            "Range",
            "RangeError",
            "realFrameElement",
            "RecordErrorEvent",
            "Rect",
            "ReferenceError",
            "RegExp",
            "releaseEvents",
            "removeEventListener",
            "Request",
            "requestAnimationFrame",
            "requestIdleCallback",
            "RequestService",
            "resizeBy",
            "resizeTo",
            "Response",
            "RGBColor",
            "RTCIceCandidate",
            "RTCPeerConnection",
            "RTCPeerConnectionIdentityErrorEvent",
            "RTCPeerConnectionIdentityEvent",
            "RTCSessionDescription",
            "screen",
            "Screen",
            "ScreenOrientation",
            "screenX",
            "screenY",
            "ScriptProcessorNode",
            "scroll",
            "ScrollAreaEvent",
            "scrollbars",
            "scrollBy",
            "scrollByLines",
            "scrollByPages",
            "scrollMaxX",
            "scrollMaxY",
            "scrollTo",
            "ScrollViewChangeEvent",
            "scrollX",
            "scrollY",
            "Selection",
            "SelectionStateChangedEvent",
            "self",
            "Serializer",
            "Services",
            "sessionStorage",
            "Set",
            "setInterval",
            "setResizable",
            "setTimeout",
            "SettingsLock",
            "SettingsManager",
            "SharedWorker",
            "showModalDialog",
            "sidebar",
            "SimpleGestureEvent",
            "sizeToContent",
            "SmartCardEvent",
            "SourceBuffer",
            "SourceBufferList",
            "SpeechRecognitionError",
            "SpeechRecognitionEvent",
            "speechSynthesis",
            "SpeechSynthesisEvent",
            "status",
            "statusbar",
            "StereoPannerNode",
            "stop",
            "StopIteration",
            "Storage",
            "StorageEvent",
            "StorageIndexedDB",
            "StorageItem",
            "StorageManager",
            "StorageObsolete",
            "String",
            "StyleRuleChangeEvent",
            "StyleSheet",
            "StyleSheetApplicableStateChangeEvent",
            "StyleSheetChangeEvent",
            "StyleSheetList",
            "SubtleCrypto",
            "SVGAElement",
            "SVGAltGlyphElement",
            "SVGAngle",
            "SVGAnimatedAngle",
            "SVGAnimatedBoolean",
            "SVGAnimatedEnumeration",
            "SVGAnimatedInteger",
            "SVGAnimatedLength",
            "SVGAnimatedLengthList",
            "SVGAnimatedNumber",
            "SVGAnimatedNumberList",
            "SVGAnimatedPathData",
            "SVGAnimatedPoints",
            "SVGAnimatedPreserveAspectRatio",
            "SVGAnimatedRect",
            "SVGAnimatedString",
            "SVGAnimatedTransformList",
            "SVGAnimateElement",
            "SVGAnimateMotionElement",
            "SVGAnimateTransformElement",
            "SVGAnimationElement",
            "SVGCircleElement",
            "SVGClipPathElement",
            "SVGComponentTransferFunctionElement",
            "SVGDefsElement",
            "SVGDescElement",
            "SVGDocument",
            "SVGElement",
            "SVGEllipseElement",
            "SVGEvent",
            "SVGFEBlendElement",
            "SVGFEColorMatrixElement",
            "SVGFEComponentTransferElement",
            "SVGFECompositeElement",
            "SVGFEConvolveMatrixElement",
            "SVGFEDiffuseLightingElement",
            "SVGFEDisplacementMapElement",
            "SVGFEDistantLightElement",
            "SVGFEDropShadowElement",
            "SVGFEFloodElement",
            "SVGFEFuncAElement",
            "SVGFEFuncBElement",
            "SVGFEFuncGElement",
            "SVGFEFuncRElement",
            "SVGFEGaussianBlurElement",
            "SVGFEImageElement",
            "SVGFEMergeElement",
            "SVGFEMergeNodeElement",
            "SVGFEMorphologyElement",
            "SVGFEOffsetElement",
            "SVGFEPointLightElement",
            "SVGFESpecularLightingElement",
            "SVGFESpotLightElement",
            "SVGFETileElement",
            "SVGFETurbulenceElement",
            "SVGFilterElement",
            "SVGFilterPrimitiveStandardAttributes",
            "SVGFitToViewBox",
            "SVGForeignObjectElement",
            "SVGGElement",
            "SVGGeometryElement",
            "SVGGradientElement",
            "SVGGraphicsElement",
            "SVGImageElement",
            "SVGLength",
            "SVGLengthList",
            "SVGLinearGradientElement",
            "SVGLineElement",
            "SVGLocatable",
            "SVGMarkerElement",
            "SVGMaskElement",
            "SVGMatrix",
            "SVGMetadataElement",
            "SVGMpathElement",
            "SVGMPathElement",
            "SVGNumber",
            "SVGNumberList",
            "SVGPathElement",
            "SVGPathSeg",
            "SVGPathSegArcAbs",
            "SVGPathSegArcRel",
            "SVGPathSegClosePath",
            "SVGPathSegCurvetoCubicAbs",
            "SVGPathSegCurvetoCubicRel",
            "SVGPathSegCurvetoCubicSmoothAbs",
            "SVGPathSegCurvetoCubicSmoothRel",
            "SVGPathSegCurvetoQuadraticAbs",
            "SVGPathSegCurvetoQuadraticRel",
            "SVGPathSegCurvetoQuadraticSmoothAbs",
            "SVGPathSegCurvetoQuadraticSmoothRel",
            "SVGPathSegLinetoAbs",
            "SVGPathSegLinetoHorizontalAbs",
            "SVGPathSegLinetoHorizontalRel",
            "SVGPathSegLinetoRel",
            "SVGPathSegLinetoVerticalAbs",
            "SVGPathSegLinetoVerticalRel",
            "SVGPathSegList",
            "SVGPathSegMovetoAbs",
            "SVGPathSegMovetoRel",
            "SVGPatternElement",
            "SVGPoint",
            "SVGPointList",
            "SVGPolygonElement",
            "SVGPolylineElement",
            "SVGPreserveAspectRatio",
            "SVGRadialGradientElement",
            "SVGRect",
            "SVGRectElement",
            "SVGScriptElement",
            "SVGSetElement",
            "SVGStopElement",
            "SVGStringList",
            "SVGStylable",
            "SVGStyleElement",
            "SVGSVGElement",
            "SVGSwitchElement",
            "SVGSymbolElement",
            "SVGTests",
            "SVGTextContentElement",
            "SVGTextElement",
            "SVGTextPathElement",
            "SVGTextPositioningElement",
            "SVGTitleElement",
            "SVGTransform",
            "SVGTransformable",
            "SVGTransformList",
            "SVGTSpanElement",
            "SVGUnitTypes",
            "SVGURIReference",
            "SVGUseElement",
            "SVGViewElement",
            "SVGViewSpec",
            "SVGZoomAndPan",
            "SVGZoomEvent",
            "Symbol",
            "SyntaxError",
            "TCPSocket",
            "Text",
            "TextDecoder",
            "TextEncoder",
            "TextMetrics",
            "TextTrack",
            "TextTrackCue",
            "TextTrackCueList",
            "TextTrackList",
            "TimeEvent",
            "TimeRanges",
            "toolbar",
            "top",
            "toStaticHTML",
            "ToString",
            "Touch",
            "TouchEvent",
            "TouchList",
            "TrackEvent",
            "TransitionEvent",
            "TreeColumn",
            "TreeColumns",
            "TreeContentView",
            "TreeSelection",
            "TreeWalker",
            "TypeError",
            "UIEvent",
            "Uint16Array",
            "Uint32Array",
            "Uint8Array",
            "Uint8ClampedArray",
            "undefined",
            "UndoManager",
            "unescape",
            "uneval",
            "updateCommands",
            "URIError",
            "URL",
            "URLSearchParams",
            "UserDataHandler",
            "UserProximityEvent",
            "USSDReceivedEvent",
            "ValidityState",
            "VideoPlaybackQuality",
            "VideoStreamTrack",
            "VTTCue",
            "VTTRegion",
            "WaveShaperNode",
            "WeakMap",
            "WeakSet",
            "WebGLActiveInfo",
            "WebGLBuffer",
            "WebGLContextEvent",
            "WebGLFramebuffer",
            "WebGLProgram",
            "WebGLQuery",
            "WebGLRenderbuffer",
            "WebGLRenderingContext",
            "WebGLShader",
            "WebGLShaderPrecisionFormat",
            "WebGLTexture",
            "WebGLUniformLocation",
            "WebGLVertexArray",
            "WebGLVertexArrayObject",
            "WebKitCSSMatrix",
            "WebSocket",
            "WheelEvent",
            "window",
            "Window",
            "WindowCollection",
            "WindowInternal",
            "WindowPerformance",
            "WindowRoot",
            "WindowUtils",
            "Worker",
            "__XBLClassObjectMap__",
            "XMLDocument",
            "XMLHttpRequest",
            "XMLHttpRequestEventTarget",
            "XMLHttpRequestUpload",
            "XMLSerializer",
            "XMLStylesheetProcessingInstruction",
            "XPathEvaluator",
            "XPathExpression",
            "XPathNamespace",
            "XPathNSResolver",
            "XPathResult",
            "XPCNativeWrapper",
            "XSLTProcessor",
            "XULButtonElement",
            "XULCheckboxElement",
            "XULCommandDispatcher",
            "XULCommandEvent",
            "XULContainerElement",
            "XULContainerItemElement",
            "XULControlElement",
            "XULControllers",
            "XULDescriptionElement",
            "XULDocument",
            "XULElement",
            "XULImageElement",
            "XULLabeledControlElement",
            "XULLabelElement",
            "XULMenuListElement",
            "XULMultiSelectControlElement",
            "XULPopupElement",
            "XULRelatedElement",
            "XULSelectControlElement",
            "XULSelectControlItemElement",
            "XULTemplateBuilder",
            "XULTextBoxElement",
            "XULTreeBuilder",
            "XULTreeElement",
        ]
    def setUp(self):
        MarionetteTestCase.setUp(self)

        ts = testsuite.TestSuite()
        self.ts = ts

        self.expectedObjects = [
            "AbortController",
            "AbortSignal",
            "addEventListener",
            "Array",
            "ArrayBuffer",
            "atob",
            "Blob",
            "Boolean",
            "BroadcastChannel",
            "btoa",
            "Cache",
            "caches",
            "CacheStorage",
            "clearInterval",
            "clearTimeout",
            "close",
            "CloseEvent",
            "console",
            "constructor",
            "createImageBitmap",
            "crypto",
            "Crypto",
            "CustomEvent",
            "DataView",
            "Date",
            "decodeURI",
            "decodeURIComponent",
            "DedicatedWorkerGlobalScope",
            "__defineGetter__",
            "__defineSetter__",
            "Directory",
            "dispatchEvent",
            "DOMCursor",
            "DOMError",
            "DOMException",
            "DOMRequest",
            "DOMStringList",
            "dump",
            "encodeURI",
            "encodeURIComponent",
            "Error",
            "ErrorEvent",
            "escape",
            "eval",
            "EvalError",
            "Event",
            "EventSource",
            "EventTarget",
            "fetch",
            "File",
            "FileList",
            "FileReader",
            "FileReaderSync",
            "Float32Array",
            "Float64Array",
            "FormData",
            "Function",
            "getAllPropertyNames",
            "hasOwnProperty",
            "Headers",
            "IDBCursor",
            "IDBCursorWithValue",
            "IDBDatabase",
            "IDBFactory",
            "IDBIndex",
            "IDBKeyRange",
            "IDBObjectStore",
            "IDBOpenDBRequest",
            "IDBRequest",
            "IDBTransaction",
            "IDBVersionChangeEvent",
            "ImageBitmap",
            "ImageBitmapRenderingContext",
            "ImageData",
            "importScripts",
            "indexedDB",
            "Infinity",
            "Int16Array",
            "Int32Array",
            "Int8Array",
            "InternalError",
            "Intl",
            "isFinite",
            "isNaN",
            "isPrototypeOf",
            "isSecureContext",
            "Iterator",
            "JSON",
            "location",
            "__lookupGetter__",
            "__lookupSetter__",
            "Map",
            "Math",
            "MessageChannel",
            "MessageEvent",
            "MessagePort",
            "name",
            "NaN",
            "navigator",
            "Notification",
            "Number",
            "Object",
            "onclose",
            "onerror",
            "onmessage",
            "onmessageerror",
            "onoffline",
            "ononline",
            "origin",
            "parseFloat",
            "parseInt",
            "performance",
            "Performance",
            "PerformanceEntry",
            "PerformanceMark",
            "PerformanceMeasure",
            "PerformanceObserver",
            "PerformanceObserverEntryList",
            "PerformanceResourceTiming",
            "postMessage",
            "ProgressEvent",
            "Promise",
            "propertyIsEnumerable",
            "__proto__",
            "Proxy",
            "RangeError",
            "ReferenceError",
            "Reflect",
            "RegExp",
            "removeEventListener",
            "Request",
            "Response",
            "self",
            "Set",
            "setInterval",
            "setTimeout",
            "StopIteration",
            "StorageManager",
            "String",
            "SubtleCrypto",
            "Symbol",
            "SyntaxError",
            "TextDecoder",
            "TextEncoder",
            "toLocaleString",
            "toSource",
            "toString",
            "TypeError",
            "Uint16Array",
            "Uint32Array",
            "Uint8Array",
            "Uint8ClampedArray",
            "undefined",
            "unescape",
            "uneval",
            "unwatch",
            "URIError",
            "URL",
            "URLSearchParams",
            "valueOf",
            "watch",
            "WeakMap",
            "WeakSet",
            "WebAssembly",
            "WebSocket",
            "Worker",
            "WorkerGlobalScope",
            "WorkerLocation",
            "WorkerNavigator",
            "XMLHttpRequest",
            "XMLHttpRequestEventTarget",
            "XMLHttpRequestUpload",
        ]