detect capabilities for lock/unlock of files

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
This commit is contained in:
Matthieu Gallien 2022-04-07 10:44:54 +02:00 committed by Matthieu Gallien
parent b64c077469
commit 860d7dd9de
3 changed files with 20 additions and 0 deletions

View File

@ -221,6 +221,11 @@ bool Capabilities::bulkUpload() const
return _capabilities["dav"].toMap()["bulkupload"].toByteArray() >= "1.0";
}
bool Capabilities::filesLockAvailable() const
{
return _capabilities["files"].toMap()["locking"].toByteArray() >= "1.0";
}
bool Capabilities::userStatus() const
{
if (!_capabilities.contains("user_status")) {

View File

@ -65,6 +65,7 @@ public:
int shareDefaultPermissions() const;
bool chunkingNg() const;
bool bulkUpload() const;
bool filesLockAvailable() const;
bool userStatus() const;
bool userStatusSupportsEmoji() const;
QColor serverColor() const;

View File

@ -257,6 +257,20 @@ private slots:
QCOMPARE(bulkuploadAvailable, true);
}
void testFilesLockAvailable_filesLockAvailable_returnTrue()
{
QVariantMap filesMap;
filesMap["locking"] = "1.0";
QVariantMap capabilitiesMap;
capabilitiesMap["files"] = filesMap;
const auto &capabilities = OCC::Capabilities(capabilitiesMap);
const auto filesLockAvailable = capabilities.filesLockAvailable();
QCOMPARE(filesLockAvailable, true);
}
};
QTEST_GUILESS_MAIN(TestCapabilities)