File indexing completed on 2024-04-28 05:50:33
0001 /* 0002 SPDX-FileCopyrightText: 2014 Kurt Hindenburg <kurt.hindenburg@gmail.com> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 // Own 0008 #include "CharacterWidthTest.h" 0009 0010 // KDE 0011 #include <QTest> 0012 0013 #include "../characters/Character.h" 0014 #include "konsoleprivate_export.h" 0015 0016 using namespace Konsole; 0017 0018 void CharacterWidthTest::testWidth_data() 0019 { 0020 QTest::addColumn<uint>("character"); 0021 QTest::addColumn<int>("width"); 0022 0023 /* This is a work in progress.... */ 0024 0025 /* konsole_wcwidth uses -1 C0/C1 and DEL */ 0026 QTest::newRow("0x007F") << uint(0x007F) << -1; 0027 0028 QTest::newRow("0x0300") << uint(0x0300) << 0; 0029 QTest::newRow("0x070F") << uint(0x070F) << 0; 0030 QTest::newRow("0x1160") << uint(0x1160) << 0; 0031 QTest::newRow("0x10300") << uint(0x10300) << 1; 0032 0033 QTest::newRow("a") << uint('a') << 1; 0034 QTest::newRow("0x00AD") << uint(0x00AD) << 1; 0035 QTest::newRow("0x00A0") << uint(0x00A0) << 1; 0036 QTest::newRow("0x10FB") << uint(0x10FB) << 1; 0037 QTest::newRow("0xFF76") << uint(0xFF76) << 1; 0038 QTest::newRow("0x103A0") << uint(0x103A0) << 1; 0039 QTest::newRow("0x10A06") << uint(0x10A06) << 0; 0040 0041 QTest::newRow("0x3000") << uint(0x3000) << 2; 0042 QTest::newRow("0x300a") << uint(0x300a) << 2; 0043 QTest::newRow("0x300b") << uint(0x300b) << 2; 0044 QTest::newRow("0xFF01") << uint(0xFF01) << 2; 0045 QTest::newRow("0xFF5F") << uint(0xFF5F) << 2; 0046 QTest::newRow("0xFF60") << uint(0xFF60) << 2; 0047 QTest::newRow("0xFFe0") << uint(0xFFe6) << 2; 0048 0049 QTest::newRow("0x1F943 tumbler glass") << uint(0x1F943) << 2; 0050 QTest::newRow("0x1F944 spoon") << uint(0x1F944) << 2; 0051 0052 QTest::newRow("0x26A1 high voltage sign (BUG 378124)") << uint(0x026A1) << 2; 0053 QTest::newRow("0x2615 hot beverage (BUG 392171)") << uint(0x02615) << 2; 0054 QTest::newRow("0x26EA church (BUG 392171)") << uint(0x026EA) << 2; 0055 QTest::newRow("0x1D11E musical symbol g clef (BUG 339439)") << uint(0x1D11E) << 1; 0056 } 0057 0058 void CharacterWidthTest::testWidth() 0059 { 0060 QFETCH(uint, character); 0061 0062 QTEST(Character::width(character), "width"); 0063 } 0064 0065 QTEST_GUILESS_MAIN(CharacterWidthTest) 0066 0067 #include "moc_CharacterWidthTest.cpp"