From 6b7c1f5b82246146df0eb25950956307b64b0945 Mon Sep 17 00:00:00 2001 From: Alexander Volkov Date: Wed, 25 May 2016 14:05:55 +0300 Subject: Add a convenience function QTemporaryDir::filePath() It allows to write more readable code: QString filePath = tmpDir.filePath(fileName); instead of QString filePath = tmpDir.path() + QLatin1Char('/') + fileName; Change-Id: I85aa54fd365e3bdd3ca41018ead7ed8741352b16 Reviewed-by: Friedemann Kleint Reviewed-by: David Faure --- .../corelib/io/qtemporarydir/tst_qtemporarydir.cpp | 25 ++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'tests/auto/corelib/io/qtemporarydir/tst_qtemporarydir.cpp') diff --git a/tests/auto/corelib/io/qtemporarydir/tst_qtemporarydir.cpp b/tests/auto/corelib/io/qtemporarydir/tst_qtemporarydir.cpp index 487c13be94..758bbead84 100644 --- a/tests/auto/corelib/io/qtemporarydir/tst_qtemporarydir.cpp +++ b/tests/auto/corelib/io/qtemporarydir/tst_qtemporarydir.cpp @@ -57,6 +57,8 @@ private slots: void fileTemplate_data(); void getSetCheck(); void fileName(); + void filePath_data(); + void filePath(); void autoRemove(); void nonWritableCurrentDir(); void openOnRootDrives(); @@ -204,6 +206,29 @@ void tst_QTemporaryDir::fileName() QCOMPARE(absoluteFilePath, absoluteTempPath); } +void tst_QTemporaryDir::filePath_data() +{ + QTest::addColumn("templatePath"); + QTest::addColumn("fileName"); + + QTest::newRow("0") << QString() << "/tmpfile"; + QTest::newRow("1") << QString() << "tmpfile"; + QTest::newRow("2") << "XXXXX" << "tmpfile"; + QTest::newRow("3") << "YYYYY" << "subdir/file"; +} + +void tst_QTemporaryDir::filePath() +{ + QFETCH(QString, templatePath); + QFETCH(QString, fileName); + + QTemporaryDir dir(templatePath); + const QString filePath = dir.filePath(fileName); + const QString expectedFilePath = QDir::isAbsolutePath(fileName) ? + QString() : dir.path() + QLatin1Char('/') + fileName; + QCOMPARE(filePath, expectedFilePath); +} + void tst_QTemporaryDir::autoRemove() { // Test auto remove -- cgit v1.2.3