File indexing completed on 2025-02-16 04:37:45

0001 /*
0002     SPDX-FileCopyrightText: 2010 Joris Guisson <joris.guisson@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 #include <QObject>
0007 #include <QtTest>
0008 #include <solid/device.h>
0009 #include <solid/storageaccess.h>
0010 #include <util/error.h>
0011 #include <util/fileops.h>
0012 #include <util/functions.h>
0013 #include <util/log.h>
0014 
0015 using namespace bt;
0016 
0017 class FileOpsTest : public QObject
0018 {
0019     Q_OBJECT
0020 public:
0021 private Q_SLOTS:
0022     void initTestCase()
0023     {
0024         bt::InitLog("fileopstest.log");
0025     }
0026 
0027     void cleanupTestCase()
0028     {
0029     }
0030 
0031     void testMountPointDetermination()
0032     {
0033         const QList<Solid::Device> devs = Solid::Device::listFromType(Solid::DeviceInterface::StorageAccess);
0034         QString mountpoint;
0035 
0036         for (const Solid::Device &dev : devs) {
0037             const Solid::StorageAccess *sa = dev.as<Solid::StorageAccess>();
0038             if (sa->isAccessible()) {
0039                 QVERIFY(bt::MountPoint(sa->filePath()) == sa->filePath());
0040 
0041                 QString path = sa->filePath() + "/some/random/path/test.foobar";
0042                 Out(SYS_GEN | LOG_DEBUG) << "Testing " << path << endl;
0043                 QVERIFY(bt::MountPoint(path) == sa->filePath());
0044             }
0045         }
0046     }
0047 };
0048 
0049 QTEST_MAIN(FileOpsTest)
0050 
0051 #include "fileopstest.moc"