summaryrefslogtreecommitdiffstats
path: root/tests/auto/xml/dom/qdom/tst_qdom.cpp
diff options
context:
space:
mode:
authorMarc Mutz <marc.mutz@qt.io>2022-03-23 18:47:13 +0100
committerMarc Mutz <marc.mutz@qt.io>2022-03-26 12:01:14 +0100
commitedb64351cd0896d27af15d54d5fa868c7567eced (patch)
tree13c7356caaeee51c3b18550d365aee19ca0f3528 /tests/auto/xml/dom/qdom/tst_qdom.cpp
parent64db79f8560472b458cd80de52a1939b5bae2703 (diff)
QDom: preserve empty CDATA sections
Restores Qt 5 behavior. Fixes: QTBUG-101992 Pick-to: 6.3 6.2 Change-Id: I3b9fc077c0a0fd30f4fcce7bfa342dbe96b2c582 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Sona Kurazyan <sona.kurazyan@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'tests/auto/xml/dom/qdom/tst_qdom.cpp')
-rw-r--r--tests/auto/xml/dom/qdom/tst_qdom.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/auto/xml/dom/qdom/tst_qdom.cpp b/tests/auto/xml/dom/qdom/tst_qdom.cpp
index b1c9b2e9c9..cc0eef3d02 100644
--- a/tests/auto/xml/dom/qdom/tst_qdom.cpp
+++ b/tests/auto/xml/dom/qdom/tst_qdom.cpp
@@ -87,6 +87,7 @@ private slots:
void invalidCharData();
void roundTripAttributes() const;
+ void roundTripCDATA() const;
void normalizeEndOfLine() const;
void normalizeAttributes() const;
void serializeWeirdEOL() const;
@@ -1441,6 +1442,17 @@ void tst_QDom::roundTripAttributes() const
QCOMPARE(QString::fromLatin1(serialized.constData()), QString::fromLatin1(expected.constData()));
}
+void tst_QDom::roundTripCDATA() const
+{
+ const QString input = u"<?xml version='1.0' encoding='UTF-8'?>\n"
+ "<content><![CDATA[]]></content>\n"_qs;
+ QString errorMsg;
+ QDomDocument doc;
+ QVERIFY(doc.setContent(input, false, &errorMsg));
+ QVERIFY(errorMsg.isEmpty());
+ QCOMPARE(doc.toString(), input);
+}
+
void tst_QDom::normalizeEndOfLine() const
{
QByteArray input("<a>\r\nc\rc\ra\na</a>");