mc tests- fixing intermittent crashes
This commit is contained in:
parent
932628981f
commit
9201c7caa7
@ -14,7 +14,6 @@ include $(topsrcdir)/config/rules.mk
|
||||
_BROWSER_TEST_FILES = \
|
||||
head.js \
|
||||
browser_pdfjs_main.js \
|
||||
browser_pdfjs_zoom.js \
|
||||
file_pdfjs_test.pdf \
|
||||
$(NULL)
|
||||
|
||||
|
@ -6,16 +6,28 @@ const RELATIVE_DIR = "browser/extensions/pdfjs/test/";
|
||||
const TESTROOT = "http://example.com/browser/" + RELATIVE_DIR;
|
||||
|
||||
function test() {
|
||||
waitForExplicitFinish();
|
||||
var tab;
|
||||
|
||||
var tab = gBrowser.addTab(TESTROOT + "file_pdfjs_test.pdf");
|
||||
waitForExplicitFinish();
|
||||
registerCleanupFunction(function() {
|
||||
gBrowser.removeTab(tab);
|
||||
});
|
||||
|
||||
tab = gBrowser.addTab(TESTROOT + "file_pdfjs_test.pdf");
|
||||
var newTabBrowser = gBrowser.getBrowserForTab(tab);
|
||||
newTabBrowser.addEventListener("pagechange", function onPageChange() {
|
||||
newTabBrowser.removeEventListener("pagechange", onPageChange, true);
|
||||
newTabBrowser.addEventListener("load", function eventHandler() {
|
||||
newTabBrowser.removeEventListener("load", eventHandler, true);
|
||||
|
||||
var document = newTabBrowser.contentDocument,
|
||||
window = newTabBrowser.contentWindow;
|
||||
|
||||
waitForElement(document, 'canvas#page1', function(err, page1) {
|
||||
runTests(document, window);
|
||||
});
|
||||
}, true);
|
||||
}
|
||||
|
||||
function runTests(document, window) {
|
||||
//
|
||||
// Overall sanity tests
|
||||
//
|
||||
@ -75,9 +87,4 @@ function test() {
|
||||
|
||||
finish();
|
||||
});
|
||||
}, true, true);
|
||||
|
||||
registerCleanupFunction(function() {
|
||||
gBrowser.removeTab(tab);
|
||||
});
|
||||
}
|
||||
|
@ -1,63 +0,0 @@
|
||||
/* Any copyright is dedicated to the Public Domain.
|
||||
* http://creativecommons.org/publicdomain/zero/1.0/
|
||||
*/
|
||||
|
||||
const RELATIVE_DIR = "browser/extensions/pdfjs/test/";
|
||||
const TESTROOT = "http://example.com/browser/" + RELATIVE_DIR;
|
||||
|
||||
function test() {
|
||||
waitForExplicitFinish();
|
||||
|
||||
var tab = gBrowser.addTab(TESTROOT + "file_pdfjs_test.pdf");
|
||||
var newTabBrowser = gBrowser.getBrowserForTab(tab);
|
||||
newTabBrowser.addEventListener("pagechange", function onPageChange() {
|
||||
newTabBrowser.removeEventListener("pagechange", onPageChange, true);
|
||||
|
||||
var document = newTabBrowser.contentDocument,
|
||||
window = newTabBrowser.contentWindow;
|
||||
|
||||
//
|
||||
// Zoom in/out
|
||||
//
|
||||
var zoomOut = document.querySelector('button.zoomOut'),
|
||||
zoomIn = document.querySelector('button.zoomIn');
|
||||
|
||||
var newWidth, oldWidth;
|
||||
|
||||
// We need to query the DOM every time since zoom in/out operations destroy the canvas element
|
||||
waitForElement(document, 'canvas#page1', function(error, page1) {
|
||||
if (error)
|
||||
finish();
|
||||
|
||||
oldWidth = page1.width;
|
||||
zoomIn.click();
|
||||
|
||||
waitForElement(document, 'canvas#page1', function(error, page1) {
|
||||
if (error)
|
||||
finish();
|
||||
|
||||
newWidth = page1.width;
|
||||
ok(oldWidth < newWidth, 'zooming in increases page width (old: '+oldWidth+', new: '+newWidth+')');
|
||||
|
||||
// Zoom out
|
||||
oldWidth = newWidth;
|
||||
zoomOut.click();
|
||||
|
||||
waitForElement(document, 'canvas#page1', function(error, page1) {
|
||||
if (error)
|
||||
finish();
|
||||
|
||||
newWidth = page1.width;
|
||||
ok(oldWidth > newWidth, 'zooming out decreases page width (old: '+oldWidth+', new: '+newWidth+')');
|
||||
|
||||
finish();
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
}, true, true);
|
||||
|
||||
registerCleanupFunction(function() {
|
||||
gBrowser.removeTab(tab);
|
||||
});
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user