void TestQuaZip::getFileList() { QFETCH(QString, zipName); QFETCH(QStringList, fileNames); qSort(fileNames); QDir curDir; if (curDir.exists(zipName)) { if (!curDir.remove(zipName)) QFAIL("Can't remove zip file"); } if (!createTestFiles(fileNames)) { QFAIL("Can't create test file"); } if (!createTestArchive(zipName, fileNames)) { QFAIL("Can't create test archive"); } QuaZip testZip(zipName); QVERIFY(testZip.open(QuaZip::mdUnzip)); QVERIFY(testZip.goToFirstFile()); QString firstFile = testZip.getCurrentFileName(); QStringList fileList = testZip.getFileNameList(); qSort(fileList); QCOMPARE(fileList, fileNames); QHash<QString, QFileInfo> srcInfo; foreach (QString fileName, fileNames) { srcInfo[fileName] = QFileInfo("tmp/" + fileName); }
void main() { forcePrint(testZip()); std::cout << testUnit() << std::endl; auto s = testCat(); lazyPrint(s); forcePrint(s); }
int main (int argc, char *argv[]){ testAdd(); testDelete(); testAppend(); testReverse(); testZip(); printf("All tests passed! You are awesome!\n"); return EXIT_SUCCESS; }
void TestQuaZipFile::zipUnzip() { QFETCH(QString, zipName); QFETCH(QStringList, fileNames); QFETCH(QByteArray, fileNameCodec); QFETCH(QByteArray, password); QFETCH(bool, zip64); QFile testFile(zipName); if (testFile.exists()) { if (!testFile.remove()) { QFAIL("Couldn't remove existing archive to create a new one"); } } if (!createTestFiles(fileNames)) { QFAIL("Couldn't create test files for zipping"); } QuaZip testZip(&testFile); testZip.setZip64Enabled(zip64); if (!fileNameCodec.isEmpty()) testZip.setFileNameCodec(fileNameCodec); QVERIFY(testZip.open(QuaZip::mdCreate)); QString comment = "Test comment"; testZip.setComment(comment); foreach (QString fileName, fileNames) { QFile inFile("tmp/" + fileName); if (!inFile.open(QIODevice::ReadOnly)) { qDebug("File name: %s", fileName.toUtf8().constData()); QFAIL("Couldn't open input file"); } QuaZipFile outFile(&testZip); QVERIFY(outFile.open(QIODevice::WriteOnly, QuaZipNewInfo(fileName, inFile.fileName()), password.isEmpty() ? NULL : password.constData())); for (qint64 pos = 0, len = inFile.size(); pos < len; ) { char buf[4096]; qint64 readSize = qMin(static_cast<qint64>(4096), len - pos); qint64 l; if ((l = inFile.read(buf, readSize)) != readSize) { qDebug("Reading %ld bytes from %s at %ld returned %ld", static_cast<long>(readSize), fileName.toUtf8().constData(), static_cast<long>(pos), static_cast<long>(l)); QFAIL("Read failure"); } QVERIFY(outFile.write(buf, readSize)); pos += readSize; } inFile.close(); outFile.close(); QCOMPARE(outFile.getZipError(), ZIP_OK); }