On Sat, Aug 9, 2014 at 7:19 PM, Bobby Holley <bobbyhol...@gmail.com> wrote: > I've mentioned this before [1], but recent checkins in mozilla-central > suggest that this message could use repeating. > > Please don't write new tests that do tricky things with SpecialPowers.wrap > and friends (like SpecialPowers.Cc and SpecialPowers.Cu, which do an > implicit .wrap()). > > These wrappers are intended to be a quick-and-dirty tool to frob things > from mochitest-plain, but have lots of quirks that cause complicated use > cases to fail in mysterious ways. Moreover, the transitive nature of the > wrappers usually cause them to spread much farther than the author > intended. This can waste a lot of time, and significantly reduces the value > of your tests, because they're testing a complicated/magical/best-effort > proxy layer rather than what we actually ship. > > Here are some Do's and Don'ts: > > Do: > * Poke various privileged controls (triggered GCs, setting prefs, clearing > caches) to improve the usefulness of a test. > * Examine cross-origin objects to avoid complicated postMessage-based tests. > > Don't: > * Import a framework like Task.jsm or Promise.jsm. > * Implement an XPCOM component. > * Interact directly with the JSM backend of a DOM API. > > If you find yourself itching to do something complicated, write a > mochitest-chrome test. The default template [2] now generates html files > (rather then XUL files), so the ergonomics there should be easier than > before. > > If you don't want to write a mochitest-chrome test for some reason, you can > also use SpecialPowers.loadChromeScript(uri), which lets mochitest-plain > asynchronously load a privileged JS file in its own privileged scope. > > Please enforce this during review, and don't hesitate to get in touch with > me if you have questions. > > Cheers, > bholley > > [1] > https://groups.google.com/d/msg/mozilla.dev.platform/AkX7jmLRQwg/KLqMxWLeQaYJ > [2] perl testing/mochitest/gen_template.pl -type chrome -b 555555 > _______________________________________________ > dev-platform mailing list > dev-platform@lists.mozilla.org > https://lists.mozilla.org/listinfo/dev-platform
Can you look at what Marionette uses SpecialPowers for to see if it is a problem? It might just be passing it through to the script the Marionette client wants to execute, I'm not sure. - Kyle _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform