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>
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());