summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp')
-rw-r--r--tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp102
1 files changed, 102 insertions, 0 deletions
diff --git a/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp b/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp
index a2ee14db45..a6134de497 100644
--- a/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp
+++ b/tests/auto/gui/kernel/qkeysequence/tst_qkeysequence.cpp
@@ -133,6 +133,10 @@ private slots:
void parseString();
void fromString_data();
void fromString();
+ void listToString_data();
+ void listToString();
+ void listFromString_data();
+ void listFromString();
#ifdef QT_BUILD_INTERNAL
void ensureSorted();
#endif
@@ -631,6 +635,104 @@ void tst_QKeySequence::fromString()
QCOMPARE(ks4, ks1);
}
+void tst_QKeySequence::listToString_data()
+{
+ QTest::addColumn<QString>("strSequences");
+ QTest::addColumn<QList<QKeySequence> >("sequences");
+
+ QList<QKeySequence> sequences;
+
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Left)
+ << QKeySequence(Qt::META + Qt::Key_A);
+ QTest::newRow("Ctrl+Left; Meta+A") << "Ctrl+Left; Meta+A" << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Semicolon)
+ << QKeySequence(Qt::META + Qt::Key_A);
+ QTest::newRow("Ctrl+;; Meta+A") << "Ctrl+;; Meta+A" << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::Key_Semicolon)
+ << QKeySequence(Qt::META + Qt::Key_A);
+ QTest::newRow(";; Meta+A") << ";; Meta+A" << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Left)
+ << QKeySequence(Qt::META + Qt::Key_Semicolon);
+ QTest::newRow("Ctrl+Left; Meta+;") << "Ctrl+Left; Meta+;" << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Left)
+ << QKeySequence();
+ QTest::newRow("Ctrl+Left; ") << "Ctrl+Left; " << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Left)
+ << QKeySequence()
+ << QKeySequence(Qt::META + Qt::Key_A);
+ QTest::newRow("Ctrl+Left; ; Meta+A") << "Ctrl+Left; ; Meta+A" << sequences;
+}
+
+void tst_QKeySequence::listToString()
+{
+ QFETCH(QList<QKeySequence>, sequences);
+ QFETCH(QString, strSequences);
+
+ QCOMPARE(QKeySequence::listToString(sequences), strSequences);
+}
+
+void tst_QKeySequence::listFromString_data()
+{
+ QTest::addColumn<QString>("strSequences");
+ QTest::addColumn<QList<QKeySequence> >("sequences");
+
+ QList<QKeySequence> sequences;
+
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Left)
+ << QKeySequence(Qt::META + Qt::Key_A);
+ QTest::newRow("Ctrl+Left; Meta+A") << "Ctrl+Left; Meta+A" << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Semicolon)
+ << QKeySequence(Qt::META + Qt::Key_A);
+ QTest::newRow("Ctrl+;; Meta+A") << "Ctrl+;; Meta+A" << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::Key_Semicolon)
+ << QKeySequence(Qt::META + Qt::Key_A);
+ QTest::newRow(";; Meta+A") << ";; Meta+A" << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Left)
+ << QKeySequence(Qt::META + Qt::Key_Semicolon);
+ QTest::newRow("Ctrl+Left; Meta+;") << "Ctrl+Left; Meta+;" << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Left)
+ << QKeySequence();
+ QTest::newRow("Ctrl+Left; ") << "Ctrl+Left; " << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Left)
+ << QKeySequence()
+ << QKeySequence(Qt::META + Qt::Key_A);
+ QTest::newRow("Ctrl+Left; ; Meta+A") << "Ctrl+Left; ; Meta+A" << sequences;
+
+ sequences.clear();
+ sequences << QKeySequence(Qt::CTRL + Qt::Key_Left)
+ << QKeySequence(Qt::Key_unknown)
+ << QKeySequence(Qt::META + Qt::Key_A);
+ QTest::newRow("Ctrl+Left; 4+3=2; Meta+A") << "Ctrl+Left; 4+3=2; Meta+A" << sequences;
+}
+
+void tst_QKeySequence::listFromString()
+{
+ QFETCH(QList<QKeySequence>, sequences);
+ QFETCH(QString, strSequences);
+
+ QCOMPARE(QKeySequence::listFromString(strSequences), sequences);
+}
+
#if !defined (Q_OS_MAC) && !defined (Q_OS_WINCE)
void tst_QKeySequence::translated_data()
{