Commit b918c9fb authored by Peter Varga's avatar Peter Varga
Browse files

Refactor tst_keyboardModifierMapping.qml quick auto test


Simplify code and remove unnecessary wait calls.

Change-Id: If3a783a2a4f97e84de993b9394f5cfa0df948ec2
Reviewed-by: default avatarAllan Sandfeld Jensen <allan.jensen@qt.io>
Showing with 13 additions and 29 deletions
...@@ -52,24 +52,26 @@ TestWebEngineView { ...@@ -52,24 +52,26 @@ TestWebEngineView {
onTriggered: parent.when = true onTriggered: parent.when = true
} }
function getPressedModifiers() {
var pressedModifiers;
runJavaScript("getPressedModifiers()", function(result) {
pressedModifiers = result;
});
tryVerify(function() { return pressedModifiers != undefined });
return pressedModifiers;
}
function test_keyboardModifierMapping() { function test_keyboardModifierMapping() {
webEngineView.url = Qt.resolvedUrl("keyboardModifierMapping.html") webEngineView.url = Qt.resolvedUrl("keyboardModifierMapping.html")
waitForLoadSucceeded(); waitForLoadSucceeded();
titleSpy.wait() titleSpy.wait()
var callbackCalled = false;
// Alt // Alt
keyPress(Qt.Key_Alt); keyPress(Qt.Key_Alt);
titleSpy.wait() titleSpy.wait()
runJavaScript("getPressedModifiers()", function(result) { compare(getPressedModifiers(), "alt:pressed ctrl:no meta:no");
compare(result, "alt:pressed ctrl:no meta:no");
callbackCalled = true;
});
wait(100);
verify(callbackCalled);
keyRelease(Qt.Key_Alt) keyRelease(Qt.Key_Alt)
titleSpy.wait() titleSpy.wait()
callbackCalled = false;
// Ctrl // Ctrl
// On mac Qt automatically translates Meta to Ctrl and vice versa. // On mac Qt automatically translates Meta to Ctrl and vice versa.
...@@ -78,36 +80,18 @@ TestWebEngineView { ...@@ -78,36 +80,18 @@ TestWebEngineView {
// For testing we assume that the flag Qt::AA_MacDontSwapCtrlAndMeta is NOT set. // For testing we assume that the flag Qt::AA_MacDontSwapCtrlAndMeta is NOT set.
keyPress(Qt.platform.os == "osx" ? Qt.Key_Meta : Qt.Key_Control); keyPress(Qt.platform.os == "osx" ? Qt.Key_Meta : Qt.Key_Control);
titleSpy.wait() titleSpy.wait()
runJavaScript("getPressedModifiers()", function(result) { compare(getPressedModifiers(), "alt:released ctrl:pressed meta:no");
compare(result, "alt:released ctrl:pressed meta:no");
callbackCalled = true;
});
wait(100);
verify(callbackCalled);
keyRelease(Qt.platform.os == "osx" ? Qt.Key_Meta : Qt.Key_Control); keyRelease(Qt.platform.os == "osx" ? Qt.Key_Meta : Qt.Key_Control);
titleSpy.wait() titleSpy.wait()
callbackCalled = false;
// Meta (Command on Mac) // Meta (Command on Mac)
keyPress(Qt.platform.os == "osx" ? Qt.Key_Control : Qt.Key_Meta); keyPress(Qt.platform.os == "osx" ? Qt.Key_Control : Qt.Key_Meta);
titleSpy.wait() titleSpy.wait()
runJavaScript("getPressedModifiers()", function(result) { compare(getPressedModifiers(), "alt:released ctrl:released meta:pressed");
compare(result, "alt:released ctrl:released meta:pressed");
callbackCalled = true;
});
wait(100);
verify(callbackCalled);
keyRelease(Qt.platform.os == "osx" ? Qt.Key_Control : Qt.Key_Meta); keyRelease(Qt.platform.os == "osx" ? Qt.Key_Control : Qt.Key_Meta);
titleSpy.wait() titleSpy.wait()
callbackCalled = false;
runJavaScript("getPressedModifiers()", function(result) { compare(getPressedModifiers(), "alt:released ctrl:released meta:released");
compare(result, "alt:released ctrl:released meta:released");
callbackCalled = true;
});
wait(100);
verify(callbackCalled);
callbackCalled = false;
} }
} }
} }
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment