Closed Bug 1288885 Opened 8 years ago Closed 8 years ago

Use xpcshell tests rather than mochitests where possible.

Categories

(WebExtensions :: Untriaged, defect)

defect
Not set
normal

Tracking

(firefox50 fixed)

RESOLVED FIXED
mozilla50
Tracking Status
firefox50 --- fixed

People

(Reporter: kmag, Assigned: kmag)

References

Details

(Whiteboard: triaged)

Attachments

(11 files)

(deleted), text/x-review-board-request
aswan
: review+
Details
(deleted), text/x-review-board-request
aswan
: review+
Details
(deleted), text/x-review-board-request
aswan
: review+
Details
(deleted), text/x-review-board-request
aswan
: review+
Details
(deleted), text/x-review-board-request
aswan
: review+
Details
(deleted), text/x-review-board-request
aswan
: review+
Details
(deleted), text/x-review-board-request
aswan
: review+
Details
(deleted), text/x-review-board-request
aswan
: review+
Details
(deleted), text/x-review-board-request
aswan
: review+
Details
(deleted), text/x-review-board-request
aswan
: review+
Details
(deleted), text/x-review-board-request
Details
No description provided.
Most of the test helper code is derived from the SpecialPowers/ExtensionTestUtils code that does the same. Eventually, the two implementations should probably be unified, but I don't think it's worth the trouble for now. Review commit: https://reviewboard.mozilla.org/r/66642/diff/#index_header See other reviews: https://reviewboard.mozilla.org/r/66642/
Attachment #8774013 - Flags: review?(aswan)
Attachment #8774014 - Flags: review?(aswan)
Attachment #8774015 - Flags: review?(aswan)
Attachment #8774016 - Flags: review?(aswan)
Attachment #8774017 - Flags: review?(aswan)
Attachment #8774018 - Flags: review?(aswan)
Attachment #8774019 - Flags: review?(aswan)
Attachment #8774020 - Flags: review?(aswan)
Attachment #8774021 - Flags: review?(aswan)
Comment on attachment 8774013 [details] Bug 1288885: Support testing WebExtensions from xpcshell tests. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/66642/diff/1-2/
Comment on attachment 8774014 [details] Bug 1288885: Migrate alarms tests to xpcshell. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/66644/diff/1-2/
Comment on attachment 8774015 [details] Bug 1288885: Migrate simple extension mochitests to xpcshell. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/66646/diff/1-2/
Comment on attachment 8774016 [details] Bug 1288885: Migrate localStorage mochitests to xpcshell. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/66648/diff/1-2/
Comment on attachment 8774017 [details] Bug 1288885: Migrate bookmarks mochitests to xpcshell. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/66650/diff/1-2/
Comment on attachment 8774018 [details] Bug 1288885: Migrate storage mochitests to xpcshell. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/66652/diff/1-2/
Comment on attachment 8774019 [details] Bug 1288885: Migrate downloads mochitests to xpcshell. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/66654/diff/1-2/
Comment on attachment 8774020 [details] Bug 1288885: Migrate background page mochitests to xpcshell. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/66656/diff/1-2/
Comment on attachment 8774021 [details] Bug 1288885: Migrate history mochitests to xpcshell. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/66658/diff/1-2/
Comment on attachment 8774023 [details] Bug 1288885: Split out the longest-running alarm tasks into separate units. Review request updated; see interdiff: https://reviewboard.mozilla.org/r/66664/diff/1-2/
https://reviewboard.mozilla.org/r/66642/#review63652 <p>Agreed that converging the test support code so we don't maintain separate code for xpcshell and mochitest would be good...</p> ::: toolkit/components/extensions/Extension.jsm:60 (Diff revision 1) > XPCOMUtils.defineLazyModuleGetter(this, "MessageChannel", > "resource://gre/modules/MessageChannel.jsm"); > XPCOMUtils.defineLazyModuleGetter(this, "AddonManager", > "resource://gre/modules/AddonManager.jsm"); > > +Cu.import("resource://gre/modules/ExtensionContent.jsm"); why is this needed? ::: toolkit/components/extensions/ExtensionXPCShellUtils.jsm:224 (Diff revision 1) > + }); > + }, > + > + addonManagerStarted: false, > + > + startAddonManager() { I'm probably missing something obvious but where does this actually get called from? ::: toolkit/components/extensions/ExtensionXPCShellUtils.jsm:230 (Diff revision 1) > + let tmpD = this.currentScope.do_get_profile().clone(); > + tmpD.append("tmp"); > + tmpD.create(Ci.nsIFile.DIRECTORY_TYPE, FileUtils.PERMS_DIRECTORY); > + > + > + let dirProvider = { > + getFile: function(prop, persistent) { > + persistent.value = false; > + if (prop == "TmpD") { > + return tmpD.clone(); > + } > + return null; > + }, > + > + QueryInterface: XPCOMUtils.generateQI([Ci.nsIDirectoryServiceProvider]), > + }; > + Services.dirsvc.registerProvider(dirProvider); > + > + > + this.currentScope.do_register_cleanup(() => { > + tmpD.remove(true); > + Services.dirsvc.unregisterProvider(dirProvider); > + > + this.currentScope = null; > + }); Why do we need to override the temporary directory? I'm also confused by the cleanup strategy, when the test finishes and the cleanup function is called, the temp directory goes away but the addon manager remains initialized. I don't think this matters in practice due to the way xpcshell tests work but doing partial cleanup just feels very confusing to people who come along and try to understand this code later. ::: toolkit/components/extensions/ExtensionXPCShellUtils.jsm:273 (Diff revision 1) > + let manager = Cc["@mozilla.org/addons/integration;1"].getService(Ci.nsIObserver) > + .QueryInterface(Ci.nsITimerCallback); > + manager.observe(null, "addons-startup", null); > + }, > + > + loadExtension(data, id = uuidGenerator.generateUUID().number) { Can we keep this consistent with the mochitest version? Adding the default generator over there would be reasonable but lets not make the two things that are called in the exact same way have subtly different defaults.
https://reviewboard.mozilla.org/r/66642/#review63652 > why is this needed? Because code in this file relies on an instance of this module being loaded in the main process when an extension is started. mconley already has a pending patch that does the same to handle this when we stop creating non-remote browsers by default in e10s builds. > I'm probably missing something obvious but where does this actually get called from? I took it from my experiments patch. It's necessary for tests that use `useAddonManager: true`. It's not currently used by anything in-tree, but it will be. > Why do we need to override the temporary directory? > I'm also confused by the cleanup strategy, when the test finishes and the cleanup function is called, the temp directory goes away but the addon manager remains initialized. > I don't think this matters in practice due to the way xpcshell tests work but doing partial cleanup just feels very confusing to people who come along and try to understand this code later. It should actually be in `init` rather than `startAddonManager`. It's necessary for the sake of `Extensions.generate`, which stores files in the temporary directory. > Can we keep this consistent with the mochitest version? Adding the default generator over there would be reasonable but lets not make the two things that are called in the exact same way have subtly different defaults. They work the same way. The only difference is the way the code is structured.
Whiteboard: triaged
Attachment #8774014 - Flags: review?(aswan) → review+
Comment on attachment 8774015 [details] Bug 1288885: Migrate simple extension mochitests to xpcshell. https://reviewboard.mozilla.org/r/66646/#review64084
Attachment #8774015 - Flags: review?(aswan) → review+
Comment on attachment 8774016 [details] Bug 1288885: Migrate localStorage mochitests to xpcshell. https://reviewboard.mozilla.org/r/66648/#review64090 ::: toolkit/components/extensions/ExtensionXPCShellUtils.jsm:218 (Diff revision 2) > + profileDir: null, > > init(scope) { > this.currentScope = scope; > > + this.profileDir = scope.do_get_profile(); This doesn't actually seem to be related to the main change in this patch?
Attachment #8774016 - Flags: review?(aswan) → review+
https://reviewboard.mozilla.org/r/66650/#review64096 why the changes to the test logic? also can you move this test to browser/components/extensions/test since the code being tested isn't in toolkit?
Attachment #8774018 - Flags: review?(aswan) → review+
https://reviewboard.mozilla.org/r/66648/#review64090 > This doesn't actually seem to be related to the main change in this patch? It is. xpcshell tests don't get a profile directory unless they call `do_get_profile`, and localStorage doesn't work unless there's a profile.
https://reviewboard.mozilla.org/r/66650/#review64096 The logic is the same. The only difference is the expected indices, since xpcshell tests start with an empty bookmarks database.
https://reviewboard.mozilla.org/r/66654/#review64106 ::: toolkit/components/extensions/test/xpcshell/test_ext_downloads_download.js:35 (Diff revision 2) > + let entries = downloadDir.directoryEntries; > + while (entries.hasMoreElements()) { > + let entry = entries.getNext().QueryInterface(Ci.nsIFile); > + ok(false, `Leftover file ${entry.path} in download directory`); > + entry.remove(false); > + } > + > + downloadDir.remove(false); If my memory is correct, I originally had this code this way but running ok() from a cleanup handler didn't work nicely. So if this code actually triggers, instead of seeing a nice failure explaining the problem, you get an obscure error about "reported test result after test finished" or something. ::: toolkit/components/extensions/test/xpcshell/test_ext_downloads_misc.js:591 (Diff revision 2) > > add_task(function* test_pause_resume_cancel_badargs() { > let BAD_ID = 1000; > > let msg = yield runInExtension("pause", BAD_ID); > - info(JSON.stringify(msg)); > + do_print(JSON.stringify(msg)); this looks like a stray debugging statement that could be safely removed. ::: toolkit/components/extensions/test/xpcshell/test_ext_downloads_misc.js:858 (Diff revision 2) > > msg = yield runInExtension("getFileIcon", id, {size: 128}); > - is(msg.status, "error", "getFileIcon() fails"); > + equal(msg.status, "error", "getFileIcon() fails"); > ok(msg.errmsg.includes("Error processing size"), "size is too big"); > + > + webNav.close(); I think this won't run if something above throws an exception (or to be more precise, if one of the yielded promises rejects)
Comment on attachment 8774020 [details] Bug 1288885: Migrate background page mochitests to xpcshell. https://reviewboard.mozilla.org/r/66656/#review64110
Attachment #8774020 - Flags: review?(aswan) → review+
Attachment #8774021 - Flags: review?(aswan) → review+
Attachment #8774023 - Flags: review?(aswan) → review+
Comment on attachment 8774023 [details] Bug 1288885: Split out the longest-running alarm tasks into separate units. https://reviewboard.mozilla.org/r/66664/#review64114
Attachment #8774017 - Flags: review?(aswan) → review+
https://reviewboard.mozilla.org/r/66654/#review64106 > If my memory is correct, I originally had this code this way but running ok() from a cleanup handler didn't work nicely. So if this code actually triggers, instead of seeing a nice failure explaining the problem, you get an obscure error about "reported test result after test finished" or something. It's not an issue for xpcshell tests, but not running the cleanup if we bail out early is. > I think this won't run if something above throws an exception (or to be more precise, if one of the yielded promises rejects) It won't, but it's not really an issue. GC will clean it up in that case.
Comment on attachment 8774013 [details] Bug 1288885: Support testing WebExtensions from xpcshell tests. https://reviewboard.mozilla.org/r/66642/#review64646
Attachment #8774013 - Flags: review?(aswan) → review+
Attachment #8774019 - Flags: review?(aswan) → review+
https://hg.mozilla.org/integration/mozilla-inbound/rev/8da1ed0adf15e8244e57f22c581bbee072a118b9 Bug 1288885: Support testing WebExtensions from xpcshell tests. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/2a6b728f83134c815e3c2b0cc0aceddced403ae5 Bug 1288885: Migrate alarms tests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/f9fd137c9691e75d9e01d61be14608e7f28c7815 Bug 1288885: Migrate simple extension mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/8f9b353347181aba8d2c5bbb8357251031367b27 Bug 1288885: Migrate localStorage mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/8c67ff2971ecc155ce26dc5d9905c5de7e4bfd4b Bug 1288885: Migrate bookmarks mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/d520f1245f5c43d6ca9d4c60684db344e183b0d0 Bug 1288885: Migrate storage mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/abd51b3d2b52da0669680153e5321b9b843d6cd2 Bug 1288885: Migrate downloads mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/fca55647234643b6fde3b62b3337e491432ab0dc Bug 1288885: Migrate background page mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/eeb6bc8a42e69e989bb70cc6daf56296936f60b0 Bug 1288885: Migrate history mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/43cf27f0e2edb5136c1fa3fe415841f52ee62ec9 Bug 1288885: Split out the longest-running alarm tasks into separate units. r=aswan
Backed these out for failure and crashes in test_ext_background_window_properties.js on Android in xpcshell and sets tests https://hg.mozilla.org/integration/mozilla-inbound/rev/0e6a8f2f83bc78796124d8711af413a0120d8fda https://hg.mozilla.org/integration/mozilla-inbound/rev/cbf0ba7fb62dcd88c82e8b0b3485b590d08912f1 https://hg.mozilla.org/integration/mozilla-inbound/rev/ca71e5fc9233252c1af5dfb924eb65e1b10b7674 https://hg.mozilla.org/integration/mozilla-inbound/rev/818d8bec0053ed3b3940dda5d713574cbc5a983d https://hg.mozilla.org/integration/mozilla-inbound/rev/ed8bccdad264d14be530518f2c14896e8626ff7d https://hg.mozilla.org/integration/mozilla-inbound/rev/f48a920ce8781ab00cdd96cf52f006805f0c03ec https://hg.mozilla.org/integration/mozilla-inbound/rev/68f0efbb38b4f0462f1229f65440f126bea6c5b9 https://hg.mozilla.org/integration/mozilla-inbound/rev/6254ca38371816e02e356e5a3a2067c4e1af3128 https://hg.mozilla.org/integration/mozilla-inbound/rev/0391561d533b6131fddacb3939208f85f1b966e0 https://hg.mozilla.org/integration/mozilla-inbound/rev/0cd3154a94eb67a71fcacf70537b70a88d4baf04 Push with failures: https://treeherder.mozilla.org/#/jobs?repo=mozilla-inbound&revision=43cf27f0e2edb5136c1fa3fe415841f52ee62ec9 Failure log: https://treeherder.mozilla.org/logviewer.html#?job_id=32758701&repo=mozilla-inbound 23:40:11 INFO - TEST-START | toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js 23:40:27 WARNING - TEST-UNEXPECTED-FAIL | toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js | xpcshell return code: 139 23:40:27 INFO - TEST-INFO took 16687ms 23:40:27 INFO - >>>>>>> 23:40:27 INFO - PROCESS | toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js | xpcw: cd /storage/sdcard/tests/xpc/toolkit/components/extensions/test/xpcshell 23:40:27 INFO - PROCESS | toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js | xpcw: xpcshell -r /storage/sdcard/tests/xpc/c/httpd.manifest --greomni /data/local/xpcb/fennec-50.0a1.en-US.android-arm.apk -m -s -e const _HEAD_JS_PATH = "/storage/sdcard/tests/xpc/head.js"; -e const _MOZINFO_JS_PATH = "/storage/sdcard/tests/xpc/p/mozinfo.json"; -e const _TESTING_MODULES_DIR = "/storage/sdcard/tests/xpc/m"; -f /storage/sdcard/tests/xpc/head.js -e const _SERVER_ADDR = "localhost" -e const _HEAD_FILES = ["/storage/sdcard/tests/xpc/toolkit/components/extensions/test/xpcshell/head.js"]; -e const _TAIL_FILES = []; -e const _JSDEBUGGER_PORT = 0; -e const _TEST_FILE = ["test_ext_background_window_properties.js"]; -e const _TEST_NAME = "toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js" -e _execute_test(); quit(0); 23:40:27 INFO - (xpcshell/head.js) | test MAIN run_test pending (1) 23:40:27 INFO - (xpcshell/head.js) | test run_next_test 0 pending (2) 23:40:27 INFO - (xpcshell/head.js) | test MAIN run_test finished (2) 23:40:27 INFO - running event loop 23:40:27 INFO - toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js | Starting testBackgroundWindowProperties 23:40:27 INFO - (xpcshell/head.js) | test testBackgroundWindowProperties pending (2) 23:40:27 INFO - "Extension loaded" 23:40:27 INFO - (xpcshell/head.js) | test run_next_test 0 finished (2) 23:40:27 INFO - PROCESS | toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js | JavaScript strict warning: chrome://global/content/bindings/browser.xml, line 369: ReferenceError: reference to undefined property tabBrowser.localName 23:40:27 INFO - "CONSOLE_MESSAGE: (warn) [JavaScript Warning: "ReferenceError: reference to undefined property tabBrowser.localName" {file: "chrome://global/content/bindings/browser.xml" line: 369}]" 23:40:27 INFO - PROCESS | toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js | Segmentation fault 23:40:27 INFO - PROCESS | toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js | 13 23:40:27 INFO - <<<<<<< 23:40:28 INFO - mozcrash Downloading symbols from: https://queue.taskcluster.net/v1/task/eakqDeHERkeE4UNsb2dCUg/artifacts/public/build/fennec-50.0a1.en-US.android-arm.crashreporter-symbols.zip 23:40:33 INFO - mozcrash Copy/paste: /builds/slave/test/build/linux64-minidump_stackwalk /tmp/tmpzrCiGb/6f949705-350b-f8f9-58695754-45315cd7.dmp /tmp/tmpG0TtwJ 23:40:45 INFO - mozcrash Saved minidump as /builds/slave/test/build/blobber_upload_dir/6f949705-350b-f8f9-58695754-45315cd7.dmp 23:40:45 INFO - mozcrash Saved app info as /builds/slave/test/build/blobber_upload_dir/6f949705-350b-f8f9-58695754-45315cd7.extra 23:40:45 WARNING - PROCESS-CRASH | toolkit/components/extensions/test/xpcshell/test_ext_background_window_properties.js | application crashed [@ mozilla::jni::GetEnvForThread] 23:40:45 INFO - Crash dump filename: /tmp/tmpzrCiGb/6f949705-350b-f8f9-58695754-45315cd7.dmp 23:40:45 INFO - Operating system: Android 23:40:45 INFO - 0.0.0 Linux 2.6.29-gea477bb #1 Wed Sep 26 11:04:45 PDT 2012 armv7l 23:40:45 INFO - CPU: arm 23:40:45 INFO - ARMv7 ARM Cortex-A8 features: swp,half,thumb,fastmult,vfpv2,edsp,neon,vfpv3 23:40:45 INFO - 1 CPU 23:40:45 INFO - Crash reason: SIGSEGV 23:40:45 INFO - Crash address: 0x0 23:40:45 INFO - Process uptime: not available 23:40:45 INFO - Thread 0 (crashed) 23:40:45 INFO - 0 libxul.so!mozilla::jni::GetEnvForThread [jni.h:43cf27f0e2ed : 1091 + 0x0] 23:40:45 INFO - r0 = 0x00000000 r1 = 0xbe8e1f64 r2 = 0x00000000 r3 = 0x426df93c 23:40:45 INFO - r4 = 0x00000000 r5 = 0x426df938 r6 = 0xbe8e1fa0 r7 = 0x47e13810 23:40:45 INFO - r8 = 0xbe8e2110 r9 = 0x47e13c00 r10 = 0xbe8e2278 r12 = 0x42697130 23:40:45 INFO - fp = 0xbe8e2354 sp = 0xbe8e1f60 lr = 0x41325cad pc = 0x41325cbc 23:40:45 INFO - Found by: given as instruction pointer in context 23:40:45 INFO - 1 libxul.so!mozilla::jni::Context<mozilla::java::GeckoAppShell, _jobject*>::Context [Refs.h:43cf27f0e2ed : 80 + 0x3] 23:40:45 INFO - r4 = 0xbe8e1f88 r5 = 0x013ce4fe r6 = 0xbe8e1fa0 r7 = 0x47e13810 23:40:45 INFO - r8 = 0xbe8e2110 r9 = 0x47e13c00 r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e1f78 pc = 0x41310661 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 2 libxul.so!mozilla::java::GeckoAppShell::EnableScreenOrientationNotifications [GeneratedJNIWrappers.cpp:43cf27f0e2ed : 226 + 0x5] 23:40:45 INFO - r4 = 0x47746ec0 r5 = 0x013ce4fe r6 = 0xbe8e1fa0 r7 = 0x47e13810 23:40:45 INFO - r8 = 0xbe8e2110 r9 = 0x47e13c00 r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e1f80 pc = 0x4131112d 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 3 libxul.so!mozilla::dom::ScreenOrientation::ScreenOrientation [ScreenOrientation.cpp:43cf27f0e2ed : 73 + 0x3] 23:40:45 INFO - r4 = 0x47746ec0 r5 = 0x00000000 r6 = 0xbe8e1fa0 r7 = 0x47e13810 23:40:45 INFO - r8 = 0xbe8e2110 r9 = 0x47e13c00 r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e1fa0 pc = 0x40bd2305 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 4 libxul.so!nsScreen::nsScreen [nsScreen.cpp:43cf27f0e2ed : 43 + 0x3] 23:40:45 INFO - r4 = 0x4804fac0 r5 = 0x47746ec0 r6 = 0x47e13810 r7 = 0x47e13810 23:40:45 INFO - r8 = 0xbe8e2110 r9 = 0x47e13c00 r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e1fd0 pc = 0x40c3d2e3 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 5 libxul.so!nsScreen::Create [nsScreen.cpp:43cf27f0e2ed : 37 + 0x3] 23:40:45 INFO - r4 = 0xbe8e200c r5 = 0xbe8e1fe4 r6 = 0x4804fac0 r7 = 0x47e13810 23:40:45 INFO - r8 = 0xbe8e2110 r9 = 0x47e13c00 r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e1fe0 pc = 0x40c3d335 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 6 libxul.so!nsGlobalWindow::GetScreen [nsGlobalWindow.cpp:43cf27f0e2ed : 3806 + 0x9] 23:40:45 INFO - r4 = 0x47e13800 r5 = 0x00000000 r6 = 0xbe8e2028 r7 = 0x4531e000 23:40:45 INFO - r8 = 0xbe8e2110 r9 = 0x47e13c00 r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e2000 pc = 0x40ba4c8b 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 7 libxul.so!mozilla::dom::WindowBinding::get_screen [WindowBinding.cpp:43cf27f0e2ed : 2973 + 0x3] 23:40:45 INFO - r4 = 0x00000000 r5 = 0x42525850 r6 = 0xbe8e2028 r7 = 0x4531e000 23:40:45 INFO - r8 = 0xbe8e2110 r9 = 0x47e13c00 r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e2020 pc = 0x40e7471b 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 8 libxul.so!mozilla::dom::WindowBinding::genericGetter [WindowBinding.cpp:43cf27f0e2ed : 13980 + 0x3] 23:40:45 INFO - r4 = 0x40e74701 r5 = 0x42525850 r6 = 0x00000000 r7 = 0x47e13800 23:40:45 INFO - r8 = 0x40e77759 r9 = 0x47e13c00 r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e2050 pc = 0x40e7782d 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 9 libxul.so!js::InternalCallOrConstruct [jscntxtinlines.h:43cf27f0e2ed : 232 + 0x3] 23:40:45 INFO - r4 = 0xbe8e2128 r5 = 0x4531e000 r6 = 0xbe8e20f0 r7 = 0xbe8e2098 23:40:45 INFO - r8 = 0x40e77759 r9 = 0x47e13c00 r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e2090 pc = 0x41c511e9 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 10 libxul.so!js::Call [Interpreter.cpp:43cf27f0e2ed : 517 + 0x3] 23:40:45 INFO - r4 = 0xbe8e20f0 r5 = 0x00000002 r6 = 0x47b76040 r7 = 0xffffff8c 23:40:45 INFO - r8 = 0xbe8e2400 r9 = 0xbe8e21fc r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e20d8 pc = 0x41c513b3 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 11 libxul.so!js::CallGetter [Interpreter.cpp:43cf27f0e2ed : 631 + 0x3] 23:40:45 INFO - r4 = 0x00000000 r5 = 0x00000002 r6 = 0xbe8e2278 r7 = 0xbe8e2150 23:40:45 INFO - r8 = 0xbe8e2400 r9 = 0xbe8e21fc r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e20e8 pc = 0x41c5141f 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 12 libxul.so!CallGetter [NativeObject.cpp:43cf27f0e2ed : 1737 + 0x3] 23:40:45 INFO - r4 = 0xbe8e2148 r5 = 0x47c5b008 r6 = 0xbe8e2270 r7 = 0x425f8e20 23:40:45 INFO - r8 = 0x453247c4 r9 = 0xbe8e21fc r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e2138 pc = 0x41c5147b 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 13 libxul.so!js::NativeGetProperty [NativeObject.cpp:43cf27f0e2ed : 1789 + 0xf] 23:40:45 INFO - r4 = 0xbe8e21a8 r5 = 0x4531e000 r6 = 0x425f8d48 r7 = 0x425f8e20 23:40:45 INFO - r8 = 0x453247c4 r9 = 0xbe8e21fc r10 = 0xbe8e2278 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e2170 pc = 0x41c516db 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 14 libxul.so!js::Wrapper::get [NativeObject.h:43cf27f0e2ed : 1478 + 0x9] 23:40:45 INFO - r4 = 0x00000000 r5 = 0xbe8e21f4 r6 = 0x47b6b0d0 r7 = 0xbe8e2340 23:40:45 INFO - r8 = 0x424bbc58 r9 = 0xbe8e2278 r10 = 0xbe8e2390 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e21e8 pc = 0x41bdfee7 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 15 libxul.so!nsOuterWindowProxy::get [nsGlobalWindow.cpp:43cf27f0e2ed : 1014 + 0xf] 23:40:45 INFO - r4 = 0xbe8e2400 r5 = 0xbe8e2348 r6 = 0xbe8e2354 r7 = 0x4531e000 23:40:45 INFO - r8 = 0x424bbc58 r9 = 0xbe8e2278 r10 = 0xbe8e2390 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e2218 pc = 0x40ba841f 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 16 libxul.so!js::Proxy::get [Proxy.cpp:43cf27f0e2ed : 310 + 0x7] 23:40:45 INFO - r4 = 0x40ba83cd r5 = 0x424bbc58 r6 = 0xbe8e2400 r7 = 0xbe8e2348 23:40:45 INFO - r8 = 0xbe8e2270 r9 = 0xbe8e2354 r10 = 0xbe8e2390 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e2248 pc = 0x41bd960b 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 17 libxul.so!js::jit::DoGetElemFallback [NativeObject.h:43cf27f0e2ed : 1477 + 0xb] 23:40:45 INFO - r4 = 0x4636e350 r5 = 0x4531e000 r6 = 0xbe8e2468 r7 = 0x00000092 23:40:45 INFO - r8 = 0xbe8e2420 r9 = 0xbe8e2368 r10 = 0x47164540 fp = 0xbe8e2354 23:40:45 INFO - sp = 0xbe8e22a8 pc = 0x41dead49 23:40:45 INFO - Found by: call frame info 23:40:45 INFO - 18 0x4282f9e2 23:40:45 INFO - r4 = 0xbe8e2400 r5 = 0xbe8e2418 r6 = 0x00000000 r7 = 0xffffff82 23:40:45 INFO - r8 = 0x00001844 r9 = 0x4636e350 r10 = 0x00000000 fp = 0xbe8e248c 23:40:45 INFO - sp = 0xbe8e23f0 pc = 0x4282f9e4 23:40:45 INFO - Found by: call frame info
Flags: needinfo?(kmaglione+bmo)
I'm not sure if bug 1285063 will land before this one, but if it does I think we'll need to have the calls to ExtensionManagement.registerScript and ExtensionManagement.registerSchema removed first.
It looks like the only tests that would be affected are the browser tests, history and bookmarks.
I'm just going to disable those tests on Android for now.
Flags: needinfo?(kmaglione+bmo)
https://hg.mozilla.org/integration/mozilla-inbound/rev/7cf25e2c60bebe17506582b213aa382c1cdeaa37 Bug 1288885: Support testing WebExtensions from xpcshell tests. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/0d9110f6340ac19845f5aeffc48703085f312915 Bug 1288885: Migrate alarms tests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/af745bd5c20928ef776a7c94c76cb9c87ac77c71 Bug 1288885: Migrate simple extension mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/f8d2367b1c62e9069bece909234c62320ec4f692 Bug 1288885: Migrate localStorage mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/642065cf0f131ce85447290ad737c0857dae9e65 Bug 1288885: Migrate bookmarks mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/50064b17c447b6e017347de5f80e210eec34368a Bug 1288885: Migrate storage mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/82c269c1788e2825aaa8e517b7644700e0ce4170 Bug 1288885: Migrate downloads mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/ab0e22ff676f205274c490bcd04bcdeb4bf5e042 Bug 1288885: Migrate background page mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/65c77163c69fb006738b598be090ac49c3ae5826 Bug 1288885: Migrate history mochitests to xpcshell. r=aswan https://hg.mozilla.org/integration/mozilla-inbound/rev/ef7029b01f880c3825cd59743ee02e0c233d6f7f Bug 1288885: Split out the longest-running alarm tasks into separate units. r=aswan
Blocks: 1290598
Product: Toolkit → WebExtensions
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: