Skip to content

Commit 4b62860

Browse files
camilasanmgallien
authored andcommitted
test(integration): check for empty file id.
The issue was only on macOS file provider. Signed-off-by: Camila Ayres <hello@camilasan.com>
1 parent fcf89fa commit 4b62860

1 file changed

Lines changed: 40 additions & 0 deletions

File tree

test/testfileactionsmodel.cpp

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -308,6 +308,46 @@ private slots:
308308
}
309309
}
310310
}
311+
312+
#ifdef BUILD_FILE_PROVIDER_MODULE
313+
void testEmptyFileId()
314+
{
315+
_model.setAccountState(&_fakeFolder->accountState());
316+
const auto unsyncedFile = QStringLiteral("unsynced.odt");
317+
_model.setLocalPath(_fakeFolder->localPath() + unsyncedFile);
318+
QVERIFY(_model.fileId().isEmpty());
319+
QCOMPARE(_model.rowCount(), 0);
320+
_model.parseEndpoints();
321+
QVERIFY(_model.responseLabel().contains(QStringLiteral("The file ID is empty")));
322+
323+
_fakeFolder->localModifier().insert(_fakeFolder->localPath() + unsyncedFile);
324+
QVERIFY(_fakeFolder->syncOnce());
325+
const auto fileInfo = _fakeFolder->remoteModifier().find(unsyncedFile);
326+
QVERIFY(fileInfo);
327+
QVERIFY(!fileInfo->fileId.isEmpty());
328+
_model.setFileId(fileInfo->fileId);
329+
QCOMPARE(_model.fileId(), fileInfo->fileId);
330+
_model.parseEndpoints();
331+
QVERIFY(_model.responseLabel().isEmpty());
332+
QCOMPARE(_model.rowCount(), 6);
333+
334+
FileActionsModel fileProviderModel;
335+
QSignalSpy fileActionModelChangedSpy(&fileProviderModel, &FileActionsModel::fileActionModelChanged);
336+
fileProviderModel.setAccountState(&_fakeFolder->accountState());
337+
fileProviderModel.setLocalPath(QDir::tempPath() + QStringLiteral("/fileprovider.odt"));
338+
QVERIFY(fileProviderModel.fileId().isEmpty());
339+
QCOMPARE(fileProviderModel.rowCount(), 0);
340+
341+
fileProviderModel.parseEndpoints();
342+
QVERIFY(fileProviderModel.responseLabel().contains(QStringLiteral("The file ID is empty")));
343+
344+
fileProviderModel.setFileId("test-file-provider-id");
345+
QCOMPARE(fileProviderModel.fileId(), QByteArray("test-file-provider-id"));
346+
QVERIFY(fileActionModelChangedSpy.count() > 0);
347+
QVERIFY(fileProviderModel.rowCount() > 0);
348+
QVERIFY(fileProviderModel.responseLabel().isEmpty());
349+
}
350+
#endif
311351
};
312352

313353
QTEST_MAIN(TestFileActionsModel)

0 commit comments

Comments
 (0)