diff options
author | Lars Knoll <lars.knoll@qt.io> | 2020-04-27 15:08:50 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2020-05-14 07:48:42 +0200 |
commit | 3ce9162ab5b99594d59b654dcdf2009bc500d3d7 (patch) | |
tree | ac4b7f25d252ca1f68ce42d9803f0e3cc2b7ea61 /tests | |
parent | 2d43f735b4768c9924f9f7ce97211043b22cd84c (diff) |
Construct a string converter by name
Add a constructor, that allows constructing a string converter by
name. This is required in some cases and also makes it possible to
(in the future) extend the API to 3rd party encodings.
Also add a name() accessor.
Change-Id: I606d6ce9405ee967f76197b803615e27c5b001cf
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/corelib/text/qstringconverter/tst_qstringconverter.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/tests/auto/corelib/text/qstringconverter/tst_qstringconverter.cpp b/tests/auto/corelib/text/qstringconverter/tst_qstringconverter.cpp index c3dc8a0383..1419321679 100644 --- a/tests/auto/corelib/text/qstringconverter/tst_qstringconverter.cpp +++ b/tests/auto/corelib/text/qstringconverter/tst_qstringconverter.cpp @@ -39,6 +39,8 @@ class tst_QStringConverter : public QObject private slots: void threadSafety(); + void constructByName(); + void convertUtf8(); void nonFlaggedCodepointFFFF() const; @@ -59,6 +61,31 @@ private slots: void utfHeaders(); }; +void tst_QStringConverter::constructByName() +{ + QStringDecoder decoder("UTF-8"); + QVERIFY(decoder.isValid()); + QVERIFY(!strcmp(decoder.name(), "UTF-8")); + decoder = QStringDecoder("XXX"); + QVERIFY(!decoder.isValid()); + decoder = QStringDecoder("ISO-8859-1"); + QVERIFY(decoder.isValid()); + QVERIFY(!strcmp(decoder.name(), "ISO-8859-1")); + decoder = QStringDecoder("UTF-16LE"); + QVERIFY(decoder.isValid()); + QVERIFY(!strcmp(decoder.name(), "UTF-16LE")); + + decoder = QStringDecoder("utf8"); + QVERIFY(decoder.isValid()); + QVERIFY(!strcmp(decoder.name(), "UTF-8")); + decoder = QStringDecoder("iso8859-1"); + QVERIFY(decoder.isValid()); + QVERIFY(!strcmp(decoder.name(), "ISO-8859-1")); + decoder = QStringDecoder("utf-16"); + QVERIFY(decoder.isValid()); + QVERIFY(!strcmp(decoder.name(), "UTF-16")); +} + void tst_QStringConverter::convertUtf8() { QFile file(QFINDTESTDATA("utf8.txt")); |