Skip to content

Commit

Permalink
utf8 tests
Browse files Browse the repository at this point in the history
  • Loading branch information
cen1 committed Oct 20, 2024
1 parent 088c59a commit 75c31ba
Showing 1 changed file with 31 additions and 2 deletions.
33 changes: 31 additions & 2 deletions qztest/testjlcompress.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -83,48 +83,70 @@ void TestJlCompress::compressFileOptions_data()
QTest::addColumn<QString>("fileName");
QTest::addColumn<QDateTime>("dateTime");
QTest::addColumn<JlCompress::Options::CompressionStrategy>("strategy");
QTest::addColumn<bool>("utf8");
QTest::addColumn<QString>("sha256sum_unix"); // Due to extra data archives are not identical
QTest::addColumn<QString>("sha256sum_win");
QTest::newRow("simple") << "jlsimplefile.zip"
<< "test0.txt"
<< QDateTime(QDate(2024, 9, 19), QTime(21, 0, 0), QTimeZone::utc())
<< JlCompress::Options::Default
<< false
<< "5eedd83aee92cf3381155d167fee54a4ef6e43b8bc7a979c903611d9aa28610a"
<< "cb1847dff1a5c33a805efde2558fc74024ad4c64c8607f8b12903e4d92385955";
QTest::newRow("simple-utf8") << "jlsimplefile-utf8.zip"
<< QString::fromUtf8("ありがとう。.txt")
<< QDateTime(QDate(2024, 9, 19), QTime(21, 0, 0), QTimeZone::utc())
<< JlCompress::Options::Default
<< true
<< ""
<< "";
QTest::newRow("simple-utf8-bad") << "jlsimplefile-utf8-bad.zip"
<< QString::fromUtf8("ありがとう。.txt")
<< QDateTime(QDate(2024, 9, 19), QTime(21, 0, 0), QTimeZone::utc())
<< JlCompress::Options::Default
<< false
<< ""
<< "";
QTest::newRow("simple-storage") << "jlsimplefile-storage.zip"
<< "test0.txt"
<< QDateTime(QDate(2024, 9, 19), QTime(21, 0, 0), QTimeZone::utc())
<< JlCompress::Options::Storage
<< false
<< ""
<< "";
QTest::newRow("simple-fastest") << "jlsimplefile-fastest.zip"
<< "test0.txt"
<< QDateTime(QDate(2024, 9, 19), QTime(21, 0, 0), QTimeZone::utc())
<< JlCompress::Options::Fastest
<< false
<< ""
<< "";
QTest::newRow("simple-faster") << "jlsimplefile-faster.zip"
<< "test0.txt"
<< QDateTime(QDate(2024, 9, 19), QTime(21, 0, 0), QTimeZone::utc())
<< JlCompress::Options::Faster
<< false
<< ""
<< "";
QTest::newRow("simple-standard") << "jlsimplefile-standard.zip"
<< "test0.txt"
<< QDateTime(QDate(2024, 9, 19), QTime(21, 0, 0), QTimeZone::utc())
<< JlCompress::Options::Standard
<< false
<< "5eedd83aee92cf3381155d167fee54a4ef6e43b8bc7a979c903611d9aa28610a"
<< "cb1847dff1a5c33a805efde2558fc74024ad4c64c8607f8b12903e4d92385955";
QTest::newRow("simple-better") << "jlsimplefile-better.zip"
<< "test0.txt"
<< QDateTime(QDate(2024, 9, 19), QTime(21, 0, 0), QTimeZone::utc())
<< JlCompress::Options::Better
<< false
<< ""
<< "";
QTest::newRow("simple-best") << "jlsimplefile-best.zip"
<< "test0.txt"
<< QDateTime(QDate(2024, 9, 19), QTime(21, 0, 0), QTimeZone::utc())
<< JlCompress::Options::Best
<< false
<< ""
<< "";
}
Expand All @@ -135,6 +157,7 @@ void TestJlCompress::compressFileOptions()
QFETCH(QString, fileName);
QFETCH(QDateTime, dateTime);
QFETCH(JlCompress::Options::CompressionStrategy, strategy);
QFETCH(bool, utf8);
QFETCH(QString, sha256sum_unix);
QFETCH(QString, sha256sum_win);
QDir curDir;
Expand All @@ -146,7 +169,7 @@ void TestJlCompress::compressFileOptions()
QFAIL("Can't create test file");
}

const JlCompress::Options options(dateTime, strategy);
const JlCompress::Options options(dateTime, strategy, utf8);
QVERIFY(JlCompress::compressFile(zipName, "tmp/" + fileName, options));
// get the file list and check it
QStringList fileList = JlCompress::getFileList(zipName);
Expand All @@ -167,7 +190,13 @@ void TestJlCompress::compressFileOptions()
if (!sha256sum_unix.isEmpty()) QCOMPARE(hash, sha256sum_unix);
#endif
zipFile.close();
removeTestFiles(QStringList() << fileName);

// Extract
QString flist = JlCompress::extractFile(zipName, fileName);
QFileInfo fileInfo(flist);
QVERIFY(fileInfo.fileName() == fileName);

removeTestFiles(QStringList() << fileName << flist);
curDir.remove(zipName);
}

Expand Down

0 comments on commit 75c31ba

Please sign in to comment.