diff options
Diffstat (limited to 'b2g/components/test/mochitest/screenshot_helper.js')
-rw-r--r-- | b2g/components/test/mochitest/screenshot_helper.js | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/b2g/components/test/mochitest/screenshot_helper.js b/b2g/components/test/mochitest/screenshot_helper.js new file mode 100644 index 000000000..0320a14c1 --- /dev/null +++ b/b2g/components/test/mochitest/screenshot_helper.js @@ -0,0 +1,40 @@ +var Cu = Components.utils; +var Ci = Components.interfaces; + +Cu.importGlobalProperties(['File']); + +const { Services } = Cu.import("resource://gre/modules/Services.jsm"); + +// Load a duplicated copy of the jsm to prevent messing with the currently running one +var scope = {}; +Services.scriptloader.loadSubScript("resource://gre/modules/Screenshot.jsm", scope); +const { Screenshot } = scope; + +var index = -1; +function next() { + index++; + if (index >= steps.length) { + assert.ok(false, "Shouldn't get here!"); + return; + } + try { + steps[index](); + } catch(ex) { + assert.ok(false, "Caught exception: " + ex); + } +} + +var steps = [ + function getScreenshot() { + let screenshot = Screenshot.get(); + assert.ok(screenshot instanceof File, + "Screenshot.get() returns a File"); + next(); + }, + + function endOfTest() { + sendAsyncMessage("finish"); + } +]; + +next(); |