From 2c7f9565ed152c742d360955d3237764998ab1f6 Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Mon, 6 Apr 2020 15:17:04 +0200 Subject: Always write XML documents as UTF-8 Remove support for setting a codec different from UTF-8 for writing XML files. All XML readers today can handle UTF-8, and there is no reason anymore to write a file in a different encoding. Change-Id: If89fb2d2474a2b55644d9bed7473c11ad91033eb Reviewed-by: Simon Hausmann --- .../serialization/qxmlstream/tst_qxmlstream.cpp | 91 ---------------------- 1 file changed, 91 deletions(-) (limited to 'tests') diff --git a/tests/auto/corelib/serialization/qxmlstream/tst_qxmlstream.cpp b/tests/auto/corelib/serialization/qxmlstream/tst_qxmlstream.cpp index 28922574b8..36689f773c 100644 --- a/tests/auto/corelib/serialization/qxmlstream/tst_qxmlstream.cpp +++ b/tests/auto/corelib/serialization/qxmlstream/tst_qxmlstream.cpp @@ -560,9 +560,7 @@ private slots: void crashInUTF16Codec() const; void hasAttributeSignature() const; void hasAttribute() const; - void writeWithCodec() const; void writeWithUtf8Codec() const; - void writeWithUtf16Codec() const; void writeWithStandalone() const; void entitiesAndWhitespace_1() const; void entitiesAndWhitespace_2() const; @@ -573,7 +571,6 @@ private slots: void checkCommentIndentation() const; void checkCommentIndentation_data() const; void crashInXmlStreamReader() const; - void write8bitCodec() const; void invalidStringCharacters_data() const; void invalidStringCharacters() const; void hasError() const; @@ -1258,66 +1255,16 @@ void tst_QXmlStream::hasAttribute() const QVERIFY(!reader.hasError()); } - -void tst_QXmlStream::writeWithCodec() const -{ - QByteArray outarray; - QXmlStreamWriter writer(&outarray); - writer.setAutoFormatting(true); - - QTextCodec *codec = QTextCodec::codecForName("ISO 8859-15"); - QVERIFY(codec); - writer.setCodec(codec); - - const char *latin2 = "h\xe9 h\xe9"; - const QString string = codec->toUnicode(latin2); - - - writer.writeStartDocument("1.0"); - - writer.writeTextElement("foo", string); - writer.writeEndElement(); - writer.writeEndDocument(); - - QVERIFY(outarray.contains(latin2)); - QVERIFY(outarray.contains(codec->name())); -} - void tst_QXmlStream::writeWithUtf8Codec() const { QByteArray outarray; QXmlStreamWriter writer(&outarray); - QTextCodec *codec = QTextCodec::codecForMib(106); // utf-8 - QVERIFY(codec); - writer.setCodec(codec); - writer.writeStartDocument("1.0"); static const char begin[] = ""; QVERIFY(outarray.startsWith(begin)); } -void tst_QXmlStream::writeWithUtf16Codec() const -{ - QByteArray outarray; - QXmlStreamWriter writer(&outarray); - - QTextCodec *codec = QTextCodec::codecForMib(1014); // utf-16LE - QVERIFY(codec); - writer.setCodec(codec); - - writer.writeStartDocument("1.0"); - static const char begin[] = " 1); - // check '<' - QCOMPARE(values[0] & 0x00FF, 0x4c); - // check '?' - QCOMPARE(values[1] & 0x00FF, 0x6F); - - // convert the start of the XML - const QString expected = (""); - QTextDecoder *decoder = codec->makeDecoder(); - QVERIFY(decoder); - QString decodedText = decoder->toUnicode(values); - delete decoder; - QVERIFY(decodedText.startsWith(expected)); -} - void tst_QXmlStream::invalidStringCharacters() const { // test scan in attributes -- cgit v1.2.3