Make QTBF autotest support SMP code points in the test data
authorKonstantin Ritt <ritt.ks@gmail.com>
Mon, 11 Jun 2012 18:45:59 +0000 (21:45 +0300)
committerQt by Nokia <qt-info@nokia.com>
Sat, 16 Jun 2012 19:14:35 +0000 (21:14 +0200)
I didn't do this earlier since the current test data doesn't contain any SMP code points,
the Unicode 6.2 test data does - so, I can confirm this code really works.

Change-Id: Ieae35e8480a89e22d846fd038e79592fefbbf2ee
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
tests/auto/corelib/tools/qtextboundaryfinder/tst_qtextboundaryfinder.cpp

index eef2931..ad48ebf 100644 (file)
@@ -154,8 +154,12 @@ static void generateDataFromFile(const QString &fname)
             bool ok = true;
             uint ucs4 = part.toInt(&ok, 16);
             QVERIFY(ok && ucs4 > 0);
-            QVERIFY(!QChar::requiresSurrogates(ucs4));
-            testString.append(QChar(ucs4));
+            if (QChar::requiresSurrogates(ucs4)) {
+                testString.append(QChar::highSurrogate(ucs4));
+                testString.append(QChar::lowSurrogate(ucs4));
+            } else {
+                testString.append(QChar(ucs4));
+            }
         }
         QVERIFY(!testString.isEmpty());
         QVERIFY(!expectedBreakPositions.isEmpty());