File indexing completed on 2024-11-24 05:00:37
0001 /* 0002 SPDX-FileCopyrightText: 2011 Andriy Rysin <rysin@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 //#include <kapplication.h> 0008 0009 #include <QIcon> 0010 #include <QTest> 0011 0012 #include "../flags.h" 0013 #include "../keyboard_config.h" 0014 #include "../keyboard_daemon.h" 0015 #include "../xkb_rules.h" 0016 0017 class KeyboardDaemonTest : public QObject 0018 { 0019 Q_OBJECT 0020 0021 KeyboardDaemon *keyboardDaemon; 0022 // KApplication* kapplication; 0023 0024 private Q_SLOTS: 0025 void initTestCase() 0026 { 0027 // kapplication = new KApplication(); 0028 // const KAboutData* kAboutData = new KAboutData(i18n("a").toLatin1(), i18n("a").toLatin1(), KLocalizedString(), i18n("a").toLatin1()); 0029 // KCmdLineArgs::init(kAboutData); 0030 keyboardDaemon = new KeyboardDaemon(this, QList<QVariant>()); 0031 } 0032 0033 void cleanupTestCase() 0034 { 0035 delete keyboardDaemon; 0036 // delete kapplication; 0037 } 0038 0039 void testDaemon() 0040 { 0041 QVERIFY(keyboardDaemon != nullptr); 0042 0043 // QVERIFY( ! flags->getTransparentPixmap().isNull() ); 0044 // 0045 // const QIcon iconUs(flags->getIcon("us")); 0046 // QVERIFY( ! iconUs.isNull() ); 0047 // QVERIFY( flags->getIcon("--").isNull() ); 0048 // 0049 // KeyboardConfig keyboardConfig; 0050 // LayoutUnit layoutUnit("us"); 0051 // LayoutUnit layoutUnit1("us", "intl"); 0052 // layoutUnit1.setDisplayName("usi"); 0053 // LayoutUnit layoutUnit2("us", "other"); 0054 // 0055 // keyboardConfig.showFlag = true; 0056 // const QIcon iconUsFlag = flags->getIconWithText(layoutUnit, keyboardConfig); 0057 // QVERIFY( ! iconUsFlag.isNull() ); 0058 // QCOMPARE( image(iconUsFlag), image(iconUs) ); 0059 // 0060 // keyboardConfig.showFlag = false; 0061 // const QIcon iconUsText = flags->getIconWithText(layoutUnit, keyboardConfig); 0062 // QVERIFY( ! iconUsText.isNull() ); 0063 // QVERIFY( image(iconUsText) != image(iconUs) ); 0064 // 0065 // keyboardConfig.layouts.append(layoutUnit1); 0066 // QCOMPARE( flags->getShortText(layoutUnit, keyboardConfig), QString("us") ); 0067 // QCOMPARE( flags->getShortText(layoutUnit1, keyboardConfig), QString("usi") ); 0068 // QCOMPARE( flags->getShortText(layoutUnit2, keyboardConfig), QString("us") ); 0069 // 0070 // const Rules* rules = Rules::readRules(); 0071 // QCOMPARE( flags->getLongText(layoutUnit, rules), QString("USA") ); 0072 // QVERIFY( flags->getLongText(layoutUnit1, rules).startsWith("USA - International") ); 0073 // QCOMPARE( flags->getLongText(layoutUnit2, rules), QString("USA - other") ); 0074 // 0075 // flags->clearCache(); 0076 } 0077 0078 // void loadRulesBenchmark() { 0079 // QBENCHMARK { 0080 // Flags* flags = new Flags(); 0081 // delete flags; 0082 // } 0083 // } 0084 }; 0085 0086 // need GUI for xkb protocol in xkb_rules.cpp 0087 QTEST_MAIN(KeyboardDaemonTest) 0088 0089 #include "keyboard_daemon_test.moc"