|
|
@@ -620,14 +620,16 @@ private slots:
|
|
|
const QString barFileAaaSubFolder("aaa/subfolder/bar");
|
|
|
|
|
|
fakeFolder.remoteModifier().insert(fooFileRootFolder);
|
|
|
-
|
|
|
fakeFolder.remoteModifier().insert(barFileRootFolder);
|
|
|
- fakeFolder.remoteModifier().find("bar")->extraDavProperties = "<nc:lock>1</nc:lock>"
|
|
|
- "<nc:lock-owner-type>0</nc:lock-owner-type>"
|
|
|
- "<nc:lock-owner>user1</nc:lock-owner>"
|
|
|
- "<nc:lock-owner-displayname>user1</nc:lock-owner-displayname>"
|
|
|
- "<nc:lock-owner-editor>user1</nc:lock-owner-editor>"
|
|
|
- "<nc:lock-time>1648046707</nc:lock-time>";
|
|
|
+
|
|
|
+ const auto lockedFileDavProps = QByteArray("<nc:lock>1</nc:lock>"
|
|
|
+ "<nc:lock-owner-type>0</nc:lock-owner-type>"
|
|
|
+ "<nc:lock-owner>user1</nc:lock-owner>"
|
|
|
+ "<nc:lock-owner-displayname>user1</nc:lock-owner-displayname>"
|
|
|
+ "<nc:lock-owner-editor>user1</nc:lock-owner-editor>"
|
|
|
+ "<nc:lock-time>1648046707</nc:lock-time>");
|
|
|
+
|
|
|
+ fakeFolder.remoteModifier().find("bar")->extraDavProperties = lockedFileDavProps;
|
|
|
|
|
|
fakeFolder.remoteModifier().mkdir(QStringLiteral("subfolder"));
|
|
|
fakeFolder.remoteModifier().insert(fooFileSubFolder);
|
|
|
@@ -637,12 +639,26 @@ private slots:
|
|
|
fakeFolder.remoteModifier().insert(fooFileAaaSubFolder);
|
|
|
fakeFolder.remoteModifier().insert(barFileAaaSubFolder);
|
|
|
|
|
|
+ ItemCompletedSpy completeSpy(fakeFolder);
|
|
|
+
|
|
|
+ completeSpy.clear();
|
|
|
QVERIFY(fakeFolder.syncOnce());
|
|
|
+ QCOMPARE(completeSpy.findItem("bar")->_locked, OCC::SyncFileItem::LockStatus::LockedItem);
|
|
|
+ SyncJournalFileRecord fileRecordBefore;
|
|
|
+ QVERIFY(fakeFolder.syncJournal().getFileRecord(QStringLiteral("bar"), &fileRecordBefore));
|
|
|
+ QVERIFY(fileRecordBefore._lockstate._locked);
|
|
|
|
|
|
- fakeFolder.remoteModifier().find("bar")->extraDavProperties = "<nc:lock>0</nc:lock>";
|
|
|
+ const auto unlockedFileDavProps = QByteArray("<nc:lock>0</nc:lock>");
|
|
|
+ fakeFolder.remoteModifier().find("bar")->extraDavProperties = unlockedFileDavProps;
|
|
|
|
|
|
fakeFolder.syncEngine().setLocalDiscoveryOptions(LocalDiscoveryStyle::DatabaseAndFilesystem);
|
|
|
+
|
|
|
+ completeSpy.clear();
|
|
|
QVERIFY(fakeFolder.syncOnce());
|
|
|
+ QCOMPARE(completeSpy.findItem("bar")->_locked, OCC::SyncFileItem::LockStatus::UnlockedItem);
|
|
|
+ SyncJournalFileRecord fileRecordAfter;
|
|
|
+ QVERIFY(fakeFolder.syncJournal().getFileRecord(QStringLiteral("bar"), &fileRecordAfter));
|
|
|
+ QVERIFY(!fileRecordAfter._lockstate._locked);
|
|
|
}
|
|
|
};
|
|
|
|