diff options
author | Konstantin Ritt <ritt.ks@gmail.com> | 2012-04-16 11:26:41 +0300 |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-04-17 18:44:13 +0200 |
commit | 087cda285f8a743427fa40d12e354e9ab7d1d84e (patch) | |
tree | cb25fca010ba4f622d34e9c4d73a4a1a606e6855 /tests/auto | |
parent | b8d1abe65b666dd49e2fbd0859070e32e304458e (diff) |
fix QChar::isPrint() returns an incorrect result.
results are now equals to results of ICU's u_isprint() for the entire set
of the Unicode code points
Change-Id: I763f4b37cccd285eb01543d486f25bd7ea011241
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
Diffstat (limited to 'tests/auto')
-rw-r--r-- | tests/auto/corelib/tools/qchar/tst_qchar.cpp | 59 |
1 files changed, 58 insertions, 1 deletions
diff --git a/tests/auto/corelib/tools/qchar/tst_qchar.cpp b/tests/auto/corelib/tools/qchar/tst_qchar.cpp index 14c43d0088..56613a90c2 100644 --- a/tests/auto/corelib/tools/qchar/tst_qchar.cpp +++ b/tests/auto/corelib/tools/qchar/tst_qchar.cpp @@ -276,8 +276,65 @@ void tst_QChar::isLetterOrNumber() void tst_QChar::isPrint() { + // noncharacters, reserved (General_Gategory =Cn) + QVERIFY(!QChar(0x2064).isPrint()); + QVERIFY(!QChar(0x2069).isPrint()); + QVERIFY(!QChar(0xfdd0).isPrint()); + QVERIFY(!QChar(0xfdef).isPrint()); + QVERIFY(!QChar(0xfff0).isPrint()); + QVERIFY(!QChar(0xfff8).isPrint()); + QVERIFY(!QChar(0xfffe).isPrint()); + QVERIFY(!QChar(0xffff).isPrint()); +/* + QVERIFY(!QChar::isPrint(0xe0000u)); + QVERIFY(!QChar::isPrint(0xe0002u)); + QVERIFY(!QChar::isPrint(0xe001fu)); + QVERIFY(!QChar::isPrint(0xe0080u)); + QVERIFY(!QChar::isPrint(0xe00ffu)); +*/ + + // Other_Default_Ignorable_Code_Point, Variation_Selector + QVERIFY(QChar(0x034f).isPrint()); + QVERIFY(QChar(0x115f).isPrint()); + QVERIFY(QChar(0x180b).isPrint()); + QVERIFY(QChar(0x180d).isPrint()); + QVERIFY(QChar(0x3164).isPrint()); + QVERIFY(QChar(0xfe00).isPrint()); + QVERIFY(QChar(0xfe0f).isPrint()); + QVERIFY(QChar(0xffa0).isPrint()); +/* + QVERIFY(QChar::isPrint(0xe0100u)); + QVERIFY(QChar::isPrint(0xe01efu)); +*/ + + // Cf, Cs, Cc, White_Space, Annotation Characters + QVERIFY(!QChar(0x0008).isPrint()); + QVERIFY(!QChar(0x000a).isPrint()); + QVERIFY(QChar(0x0020).isPrint()); + QVERIFY(QChar(0x00a0).isPrint()); + QVERIFY(!QChar(0x00ad).isPrint()); + QVERIFY(!QChar(0x0085).isPrint()); + QVERIFY(!QChar(0xd800).isPrint()); + QVERIFY(!QChar(0xdc00).isPrint()); + QVERIFY(!QChar(0xfeff).isPrint()); +/* + QVERIFY(!QChar::isPrint(0x1d173u)); +*/ + + QVERIFY(QChar('0').isPrint()); QVERIFY(QChar('A').isPrint()); - QVERIFY(!QChar(0x1aff).isPrint()); // General_Gategory =Cn + QVERIFY(QChar('a').isPrint()); + + QVERIFY(!QChar(0x0370).isPrint()); // assigned in 5.1 + QVERIFY(!QChar(0x0524).isPrint()); // assigned in 5.2 + QVERIFY(!QChar(0x0526).isPrint()); // assigned in 6.0 + QVERIFY(!QChar(0x08a0).isPrint()); // assigned in 6.1 + QVERIFY(!QChar(0x1aff).isPrint()); // not assigned + QVERIFY(!QChar(0x1e9e).isPrint()); // assigned in 5.1 +/* + QVERIFY(!QChar::isPrint(0x1b000u)); // assigned in 6.0 + QVERIFY(!QChar::isPrint(0x110d0u)); // assigned in 5.1 +*/ } void tst_QChar::isUpper() |