From 6efefb3fe5c7c392bc4857d979dee51042a4f043 Mon Sep 17 00:00:00 2001 From: David Faure Date: Thu, 19 Jan 2012 12:40:52 +0100 Subject: QKeySequence: add tests, fix handling of '+' as key or separator. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I3c471dff9b46025aab762d36bb3a3adc64ced561 Reviewed-by: Morten Johan Sørvig Reviewed-by: Lars Knoll --- .../gui/kernel/qkeysequence/tst_qkeysequence.cpp | 33 ++++++++++++++++++++-- 1 file changed, 31 insertions(+), 2 deletions(-) (limited to 'tests') diff --git a/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp b/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp index 858ffd9aa4..31610cdbcb 100644 --- a/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp +++ b/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp @@ -529,17 +529,46 @@ void tst_QKeySequence::parseString_data() QTest::addColumn("strSequence"); QTest::addColumn("keycode"); + // Valid QTest::newRow("A") << "A" << QKeySequence(Qt::Key_A); QTest::newRow("a") << "a" << QKeySequence(Qt::Key_A); QTest::newRow("Ctrl+Left") << "Ctrl+Left" << QKeySequence(Qt::CTRL + Qt::Key_Left); - QTest::newRow("Ctrl++") << "Ctrl++" << QKeySequence(Qt::CTRL + Qt::Key_Plus); + QTest::newRow("CTRL+LEFT") << "CTRL+LEFT" << QKeySequence(Qt::CTRL + Qt::Key_Left); QTest::newRow("Meta+A") << "Meta+a" << QKeySequence(Qt::META + Qt::Key_A); + QTest::newRow("mEtA+A") << "mEtA+a" << QKeySequence(Qt::META + Qt::Key_A); + QTest::newRow("Ctrl++") << "Ctrl++" << QKeySequence(Qt::CTRL + Qt::Key_Plus); + + // Invalid modifiers QTest::newRow("Win+A") << "Win+a" << QKeySequence(Qt::Key_unknown); - QTest::newRow("4+3=2") << "4+3=2" << QKeySequence(Qt::Key_unknown); QTest::newRow("Super+Meta+A") << "Super+Meta+A" << QKeySequence(Qt::Key_unknown); + + // Invalid Keys QTest::newRow("Meta+Trolls") << "Meta+Trolls" << QKeySequence(Qt::Key_unknown); + QTest::newRow("Meta+Period") << "Meta+Period" << QKeySequence(Qt::Key_unknown); + QTest::newRow("Meta+Ypsilon") << "Meta+Period" << QKeySequence(Qt::Key_unknown); + + // Garbage + QTest::newRow("4+3=2") << "4+3=2" << QKeySequence(Qt::Key_unknown); QTest::newRow("Alabama") << "Alabama" << QKeySequence(Qt::Key_unknown); QTest::newRow("Simon+G") << "Simon+G" << QKeySequence(Qt::Key_unknown); + QTest::newRow("Shift+++2") << "Shift+++2" << QKeySequence(Qt::Key_unknown); + + // Wrong order + QTest::newRow("A+Meta") << "a+Meta" << QKeySequence(Qt::Key_unknown); + QTest::newRow("Meta+++Shift") << "Meta+++Shift" << QKeySequence(Qt::Key_unknown); + QTest::newRow("Meta+a+Shift") << "Meta+a+Shift" << QKeySequence(Qt::Key_unknown); + + // Only Modifiers - currently not supported + //QTest::newRow("Meta+Shift") << "Meta+Shift" << QKeySequence(Qt::META + Qt::SHIFT); + //QTest::newRow("Ctrl") << "Ctrl" << QKeySequence(Qt::CTRL); + //QTest::newRow("Shift") << "Shift" << QKeySequence(Qt::SHIFT); + + // Only Keys + QTest::newRow("a") << "a" << QKeySequence(Qt::Key_A); + QTest::newRow("A") << "A" << QKeySequence(Qt::Key_A); + + // Incomplete + QTest::newRow("Meta+Shift+") << "Meta+Shift+" << QKeySequence(Qt::Key_unknown); } void tst_QKeySequence::parseString() -- cgit v1.2.3