tests/auto/qkeysequence/tst_qkeysequence.cpp
changeset 30 5dc02b23752f
parent 18 2f34d5167611
child 37 758a864f9613
equal deleted inserted replaced
29:b72c6db6890b 30:5dc02b23752f
   117     void compareConstructors_data();
   117     void compareConstructors_data();
   118     void compareConstructors();
   118     void compareConstructors();
   119     void symetricConstructors_data();
   119     void symetricConstructors_data();
   120     void symetricConstructors();
   120     void symetricConstructors();
   121     void checkMultipleNames();
   121     void checkMultipleNames();
       
   122     void checkMultipleCodes();
   122     void mnemonic_data();
   123     void mnemonic_data();
   123     void mnemonic();
   124     void mnemonic();
   124     void toString_data();
   125     void toString_data();
   125     void toString();
   126     void toString();
   126     void streamOperators_data();
   127     void streamOperators_data();
   131     void standardKeys_data();
   132     void standardKeys_data();
   132     void standardKeys();
   133     void standardKeys();
   133     void keyBindings();
   134     void keyBindings();
   134     void translated_data();
   135     void translated_data();
   135     void translated();
   136     void translated();
       
   137     void i18nKeys_data();
       
   138     void i18nKeys();
   136 
   139 
   137 
   140 
   138     void initTestCase();
   141     void initTestCase();
   139 private:
   142 private:
   140     QTranslator *ourTranslator;
   143     QTranslator *ourTranslator;
   261 void tst_QKeySequence::checkMultipleNames()
   264 void tst_QKeySequence::checkMultipleNames()
   262 {
   265 {
   263     QKeySequence oldK( "Ctrl+Page Up" );
   266     QKeySequence oldK( "Ctrl+Page Up" );
   264     QKeySequence newK( "Ctrl+PgUp" );
   267     QKeySequence newK( "Ctrl+PgUp" );
   265     QVERIFY( oldK == newK );
   268     QVERIFY( oldK == newK );
       
   269 }
       
   270 
       
   271 //TODO: could test third constructor, or test fromString on all constructor-data
       
   272 void tst_QKeySequence::checkMultipleCodes()
       
   273 {
       
   274     QKeySequence seq1("Alt+d, l");
       
   275     QKeySequence seq2 = QKeySequence::fromString("Alt+d, l");
       
   276     QVERIFY( seq1 == seq2 );
       
   277 
       
   278     QKeySequence seq3("Alt+d,l");
       
   279     QKeySequence seq4 = QKeySequence::fromString("Alt+d,l");
       
   280     QVERIFY( seq3 == seq4 );
   266 }
   281 }
   267 
   282 
   268 /*
   283 /*
   269 * We must ensure that the keyBindings data is allways sorted
   284 * We must ensure that the keyBindings data is allways sorted
   270 * so that we can safely perform binary searches.
   285 * so that we can safely perform binary searches.
   555     qApp->removeTranslator(ourTranslator);
   570     qApp->removeTranslator(ourTranslator);
   556     qApp->removeTranslator(qtTranslator);
   571     qApp->removeTranslator(qtTranslator);
   557 }
   572 }
   558 
   573 
   559 
   574 
       
   575 void tst_QKeySequence::i18nKeys_data()
       
   576 {
       
   577     QTest::addColumn<int>("keycode");
       
   578     QTest::addColumn<QString>("keystring");
       
   579 
       
   580     // Japanese keyboard support
       
   581     QTest::newRow("Kanji") << (int)Qt::Key_Kanji << QString("Kanji");
       
   582     QTest::newRow("Muhenkan") << (int)Qt::Key_Muhenkan << QString("Muhenkan");
       
   583     QTest::newRow("Henkan") << (int)Qt::Key_Henkan << QString("Henkan");
       
   584     QTest::newRow("Romaji") << (int)Qt::Key_Romaji << QString("Romaji");
       
   585     QTest::newRow("Hiragana") << (int)Qt::Key_Hiragana << QString("Hiragana");
       
   586     QTest::newRow("Katakana") << (int)Qt::Key_Katakana << QString("Katakana");
       
   587     QTest::newRow("Hiragana Katakana") << (int)Qt::Key_Hiragana_Katakana << QString("Hiragana Katakana");
       
   588     QTest::newRow("Zenkaku") << (int)Qt::Key_Zenkaku << QString("Zenkaku");
       
   589     QTest::newRow("Hankaku") << (int)Qt::Key_Hankaku << QString("Hankaku");
       
   590     QTest::newRow("Zenkaku Hankaku") << (int)Qt::Key_Zenkaku_Hankaku << QString("Zenkaku Hankaku");
       
   591     QTest::newRow("Touroku") << (int)Qt::Key_Touroku << QString("Touroku");
       
   592     QTest::newRow("Massyo") << (int)Qt::Key_Massyo << QString("Massyo");
       
   593     QTest::newRow("Kana Lock") << (int)Qt::Key_Kana_Lock << QString("Kana Lock");
       
   594     QTest::newRow("Kana Shift") << (int)Qt::Key_Kana_Shift << QString("Kana Shift");
       
   595     QTest::newRow("Eisu Shift") << (int)Qt::Key_Eisu_Shift << QString("Eisu Shift");
       
   596     QTest::newRow("Eisu_toggle") << (int)Qt::Key_Eisu_toggle << QString("Eisu toggle");
       
   597     QTest::newRow("Code input") << (int)Qt::Key_Codeinput << QString("Code input");
       
   598     QTest::newRow("Multiple Candidate") << (int)Qt::Key_MultipleCandidate << QString("Multiple Candidate");
       
   599     QTest::newRow("Previous Candidate") << (int)Qt::Key_PreviousCandidate << QString("Previous Candidate");
       
   600 
       
   601     // Korean keyboard support
       
   602     QTest::newRow("Hangul") << (int)Qt::Key_Hangul << QString("Hangul");
       
   603     QTest::newRow("Hangul Start") << (int)Qt::Key_Hangul_Start << QString("Hangul Start");
       
   604     QTest::newRow("Hangul End") << (int)Qt::Key_Hangul_End << QString("Hangul End");
       
   605     QTest::newRow("Hangul Hanja") << (int)Qt::Key_Hangul_Hanja << QString("Hangul Hanja");
       
   606     QTest::newRow("Hangul Jamo") << (int)Qt::Key_Hangul_Jamo << QString("Hangul Jamo");
       
   607     QTest::newRow("Hangul Romaja") << (int)Qt::Key_Hangul_Romaja << QString("Hangul Romaja");
       
   608     QTest::newRow("Hangul Jeonja") << (int)Qt::Key_Hangul_Jeonja << QString("Hangul Jeonja");
       
   609     QTest::newRow("Hangul Banja") << (int)Qt::Key_Hangul_Banja << QString("Hangul Banja");
       
   610     QTest::newRow("Hangul PreHanja") << (int)Qt::Key_Hangul_PreHanja << QString("Hangul PreHanja");
       
   611     QTest::newRow("Hangul PostHanja") << (int)Qt::Key_Hangul_PostHanja << QString("Hangul PostHanja");
       
   612     QTest::newRow("Hangul Special") << (int)Qt::Key_Hangul_Special << QString("Hangul Special");
       
   613 }
       
   614 
       
   615 void tst_QKeySequence::i18nKeys()
       
   616 {
       
   617     QFETCH(int, keycode);
       
   618     QFETCH(QString, keystring);
       
   619     QKeySequence seq(keycode);
       
   620 
       
   621     QCOMPARE(seq, QKeySequence(keystring));
       
   622     QCOMPARE(seq.toString(), keystring);
       
   623 }
       
   624 
   560 QTEST_MAIN(tst_QKeySequence)
   625 QTEST_MAIN(tst_QKeySequence)
   561 #include "tst_qkeysequence.moc"
   626 #include "tst_qkeysequence.moc"