diff options
author | JiDe Zhang <zccrs@live.com> | 2021-07-10 09:57:22 +0800 |
---|---|---|
committer | Mårten Nordheim <marten.nordheim@qt.io> | 2021-09-14 03:18:04 +0200 |
commit | 413098c3e38263741c1281a61156326457436744 (patch) | |
tree | b3b33ac795ea6015a0e997b316ef9a86399a4f4e /tests | |
parent | ec3260e5c7107490fd7c8e196fed82e6ca188dca (diff) |
feat: add new interfaces for std::filesystem::path
Add for QFile::exists/symLinkTarget/remove/moveToTrash/
rename/link/copy
Change-Id: I4cbb908e945f043b2a5278a6d8d5149b2f20e871
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io>
Diffstat (limited to 'tests')
-rw-r--r-- | tests/auto/corelib/io/qfile/tst_qfile.cpp | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/tests/auto/corelib/io/qfile/tst_qfile.cpp b/tests/auto/corelib/io/qfile/tst_qfile.cpp index 83a706e81d..b68690cd48 100644 --- a/tests/auto/corelib/io/qfile/tst_qfile.cpp +++ b/tests/auto/corelib/io/qfile/tst_qfile.cpp @@ -3920,13 +3920,27 @@ void tst_QFile::stdfilesystem() path = "tile-fest"; QVERIFY(file.rename(path)); QVERIFY(fs::exists(path)); +#ifdef Q_OS_WIN + fs::path linkfile { "test-link.lnk" }; +#else fs::path linkfile { "test-link" }; +#endif QVERIFY(file.link(linkfile)); QVERIFY(fs::exists(linkfile)); + QVERIFY(QFile::remove(linkfile)); + QVERIFY(QFile::link(file.filesystemFileName(), linkfile)); + QVERIFY(fs::exists(linkfile)); + QCOMPARE(QFileInfo(QFile::filesystemSymLinkTarget(linkfile)), + QFileInfo(file.filesystemFileName())); + QCOMPARE(QFileInfo(QFile(linkfile).filesystemSymLinkTarget()), + QFileInfo(file.filesystemFileName())); fs::path copyfile { "copy-file" }; QVERIFY(file.copy(copyfile)); QVERIFY(fs::exists(copyfile)); + QVERIFY(QFile::remove(copyfile)); + QVERIFY(QFile::copy(file.filesystemFileName(), copyfile)); + QVERIFY(fs::exists(copyfile)); QFileDevice::Permissions p = QFile::permissions(path); QVERIFY(p.testFlag(QFile::WriteUser) || p.testFlag(QFile::WriteOwner)); // some we know for sure @@ -3935,6 +3949,10 @@ void tst_QFile::stdfilesystem() else if (p.testFlag(QFile::ReadOwner)) p.setFlag(QFile::ReadOwner, false); QVERIFY(QFile::setPermissions(path, p)); + + path = "test-exists"; + fs::create_directory(path); + QVERIFY(QFile::exists(path) == fs::exists(path)); #else QSKIP("Not supported"); #endif |