summaryrefslogtreecommitdiffstats
path: root/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp')
-rw-r--r--tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp33
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp b/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp
index 69cd5f00dd..4d5af44ff1 100644
--- a/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp
+++ b/tests/auto/gui/text/qtextlayout/tst_qtextlayout.cpp
@@ -134,6 +134,7 @@ private slots:
void xToCursorForLigatures();
void cursorInNonStopChars();
void nbsp();
+ void noModificationOfInputString();
private:
QFont testFont;
@@ -2164,5 +2165,37 @@ void tst_QTextLayout::layoutWithCustomTabStops()
QVERIFY(longWidth > shortWidth);
}
+void tst_QTextLayout::noModificationOfInputString()
+{
+ QString s = QString(QChar(QChar::LineSeparator));
+ {
+ QTextLayout layout;
+ layout.setText(s);
+
+ layout.beginLayout();
+ layout.createLine();
+ layout.endLayout();
+
+ QCOMPARE(s.size(), 1);
+ QCOMPARE(s.at(0), QChar(QChar::LineSeparator));
+ }
+
+ {
+ QTextLayout layout;
+ layout.setText(s);
+
+ QTextOption option;
+ option.setFlags(QTextOption::ShowLineAndParagraphSeparators);
+ layout.setTextOption(option);
+
+ layout.beginLayout();
+ layout.createLine();
+ layout.endLayout();
+
+ QCOMPARE(s.size(), 1);
+ QCOMPARE(s.at(0), QChar(QChar::LineSeparator));
+ }
+}
+
QTEST_MAIN(tst_QTextLayout)
#include "tst_qtextlayout.moc"