mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 966612 part.2 Add tests on printpreview UI r=enndeakin
This commit is contained in:
parent
c17d522c9f
commit
cc7c2b4704
@ -288,6 +288,7 @@ run-if = crashreporter
|
||||
[browser_popupNotification.js]
|
||||
skip-if = toolkit == "windows" # Disabled on Windows due to frequent failures (bugs 825739, 841341)
|
||||
[browser_popupUI.js]
|
||||
[browser_printpreview.js]
|
||||
[browser_private_browsing_window.js]
|
||||
[browser_private_no_prompt.js]
|
||||
[browser_relatedTabs.js]
|
||||
|
65
browser/base/content/test/general/browser_printpreview.js
Normal file
65
browser/base/content/test/general/browser_printpreview.js
Normal file
@ -0,0 +1,65 @@
|
||||
function test() {
|
||||
waitForExplicitFinish();
|
||||
|
||||
ok(!gInPrintPreviewMode,
|
||||
"Should NOT be in print preview mode at starting this tests");
|
||||
// Skip access key test on platforms which don't support access key.
|
||||
if (!/Win|Linux/.test(navigator.platform)) {
|
||||
openPrintPreview(testClosePrintPreviewWithEscKey);
|
||||
} else {
|
||||
openPrintPreview(testClosePrintPreviewWithAccessKey);
|
||||
}
|
||||
}
|
||||
|
||||
function testClosePrintPreviewWithAccessKey() {
|
||||
EventUtils.synthesizeKey("c", { altKey: true });
|
||||
checkPrintPreviewClosed(function (aSucceeded) {
|
||||
ok(aSucceeded,
|
||||
"print preview mode should be finished by access key");
|
||||
openPrintPreview(testClosePrintPreviewWithEscKey);
|
||||
});
|
||||
}
|
||||
|
||||
function testClosePrintPreviewWithEscKey() {
|
||||
EventUtils.synthesizeKey("VK_ESCAPE", {});
|
||||
checkPrintPreviewClosed(function (aSucceeded) {
|
||||
ok(aSucceeded,
|
||||
"print preview mode should be finished by Esc key press");
|
||||
openPrintPreview(testClosePrintPreviewWithClosingWindowShortcutKey);
|
||||
});
|
||||
}
|
||||
|
||||
function testClosePrintPreviewWithClosingWindowShortcutKey() {
|
||||
EventUtils.synthesizeKey("w", { accelKey: true });
|
||||
checkPrintPreviewClosed(function (aSucceeded) {
|
||||
ok(aSucceeded,
|
||||
"print preview mode should be finished by closing window shortcut key");
|
||||
finish();
|
||||
});
|
||||
}
|
||||
|
||||
function openPrintPreview(aCallback) {
|
||||
document.getElementById("cmd_printPreview").doCommand();
|
||||
executeSoon(function () {
|
||||
if (gInPrintPreviewMode) {
|
||||
executeSoon(aCallback);
|
||||
return;
|
||||
}
|
||||
executeSoon(arguments.callee);
|
||||
});
|
||||
}
|
||||
|
||||
function checkPrintPreviewClosed(aCallback) {
|
||||
let count = 0;
|
||||
executeSoon(function () {
|
||||
if (!gInPrintPreviewMode) {
|
||||
executeSoon(function () { aCallback(count < 1000); });
|
||||
return;
|
||||
}
|
||||
if (++count == 1000) {
|
||||
// The test might fail.
|
||||
PrintUtils.exitPrintPreview();
|
||||
}
|
||||
executeSoon(arguments.callee);
|
||||
});
|
||||
}
|
Loading…
Reference in New Issue
Block a user