Skip to content

Commit

Permalink
Vfs: Hydrating a virtual is SYNC not NEW #7101
Browse files Browse the repository at this point in the history
Previously it'd be NEW(ItemTypeFile), but now it has changed to be
SYNC(ItemTypeVirtualFileDownload) which allows better classification.
  • Loading branch information
ckamm committed Mar 26, 2019
1 parent f026d10 commit e7cab7b
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 12 deletions.
4 changes: 2 additions & 2 deletions src/gui/folder.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -416,9 +416,9 @@ void Folder::createGuiLog(const QString &filename, LogStatus status, int count,
break;
case LogStatusNew:
if (count > 1) {
text = tr("%1 and %n other file(s) are new.", "", count - 1).arg(file);
text = tr("%1 and %n other file(s) have been added.", "", count - 1).arg(file);
} else {
text = tr("%1 is new.", "%1 names a file.").arg(file);
text = tr("%1 has been added.", "%1 names a file.").arg(file);
}
break;
case LogStatusUpdated:
Expand Down
4 changes: 2 additions & 2 deletions src/libsync/discovery.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -333,7 +333,7 @@ void ProcessDirectoryJob::processFile(PathTuple path,
|| localEntry.type == ItemTypeVirtualFileDownload)
&& (localEntry.isValid() || _queryLocal == ParentNotChanged)) {
item->_direction = SyncFileItem::Down;
item->_instruction = CSYNC_INSTRUCTION_NEW;
item->_instruction = CSYNC_INSTRUCTION_SYNC;
item->_type = ItemTypeVirtualFileDownload;
}

Expand Down Expand Up @@ -382,7 +382,7 @@ void ProcessDirectoryJob::processFileAnalyzeRemoteInfo(
// The above check for the localEntry existing is important. Otherwise it breaks
// the case where a file is moved and simultaneously tagged for download in the db.
item->_direction = SyncFileItem::Down;
item->_instruction = CSYNC_INSTRUCTION_NEW;
item->_instruction = CSYNC_INSTRUCTION_SYNC;
item->_type = ItemTypeVirtualFileDownload;
} else if (dbEntry._etag != serverEntry.etag) {
item->_direction = SyncFileItem::Down;
Expand Down
3 changes: 0 additions & 3 deletions src/libsync/propagatedownload.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1028,9 +1028,6 @@ void PropagateDownloadFile::downloadFinished()
propagator()->_journal->setConflictRecord(_conflictRecord);

if (_item->_type == ItemTypeVirtualFileDownload) {
// A downloaded virtual file becomes normal
_item->_type = ItemTypeFile;

// If the virtual file used to have a different name and db
// entry, wipe both now.
auto vfs = propagator()->syncOptions()._vfs;
Expand Down
13 changes: 8 additions & 5 deletions test/testsyncvirtualfiles.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -356,9 +356,11 @@ private slots:
fakeFolder.localModifier().insert("A/a6");
fakeFolder.localModifier().remove("A/a6.owncloud");
QVERIFY(fakeFolder.syncOnce());
QVERIFY(itemInstruction(completeSpy, "A/a1", CSYNC_INSTRUCTION_NEW));
QVERIFY(itemInstruction(completeSpy, "A/a1", CSYNC_INSTRUCTION_SYNC));
QCOMPARE(findItem(completeSpy, "A/a1")->_type, ItemTypeVirtualFileDownload);
QVERIFY(itemInstruction(completeSpy, "A/a1.owncloud", CSYNC_INSTRUCTION_NONE));
QVERIFY(itemInstruction(completeSpy, "A/a2", CSYNC_INSTRUCTION_NEW));
QVERIFY(itemInstruction(completeSpy, "A/a2", CSYNC_INSTRUCTION_SYNC));
QCOMPARE(findItem(completeSpy, "A/a2")->_type, ItemTypeVirtualFileDownload);
QVERIFY(itemInstruction(completeSpy, "A/a2.owncloud", CSYNC_INSTRUCTION_NONE));
QVERIFY(itemInstruction(completeSpy, "A/a3.owncloud", CSYNC_INSTRUCTION_REMOVE));
QVERIFY(itemInstruction(completeSpy, "A/a4m", CSYNC_INSTRUCTION_NEW));
Expand Down Expand Up @@ -405,7 +407,7 @@ private slots:
triggerDownload(fakeFolder, "A/a1");
fakeFolder.serverErrorPaths().append("A/a1", 500);
QVERIFY(!fakeFolder.syncOnce());
QVERIFY(itemInstruction(completeSpy, "A/a1", CSYNC_INSTRUCTION_NEW));
QVERIFY(itemInstruction(completeSpy, "A/a1", CSYNC_INSTRUCTION_SYNC));
QVERIFY(itemInstruction(completeSpy, "A/a1.owncloud", CSYNC_INSTRUCTION_NONE));
QVERIFY(fakeFolder.currentLocalState().find("A/a1.owncloud"));
QVERIFY(!fakeFolder.currentLocalState().find("A/a1"));
Expand All @@ -415,7 +417,7 @@ private slots:

fakeFolder.serverErrorPaths().clear();
QVERIFY(fakeFolder.syncOnce());
QVERIFY(itemInstruction(completeSpy, "A/a1", CSYNC_INSTRUCTION_NEW));
QVERIFY(itemInstruction(completeSpy, "A/a1", CSYNC_INSTRUCTION_SYNC));
QVERIFY(itemInstruction(completeSpy, "A/a1.owncloud", CSYNC_INSTRUCTION_NONE));
QCOMPARE(fakeFolder.currentLocalState(), fakeFolder.currentRemoteState());
QCOMPARE(dbRecord(fakeFolder, "A/a1")._type, ItemTypeFile);
Expand Down Expand Up @@ -622,7 +624,8 @@ private slots:
QVERIFY(itemInstruction(completeSpy, "renamed2.owncloud", CSYNC_INSTRUCTION_RENAME));
QVERIFY(dbRecord(fakeFolder, "renamed2.owncloud")._type == ItemTypeVirtualFile);

QVERIFY(itemInstruction(completeSpy, "file3", CSYNC_INSTRUCTION_NEW));
QVERIFY(itemInstruction(completeSpy, "file3", CSYNC_INSTRUCTION_SYNC));
QVERIFY(dbRecord(fakeFolder, "file3")._type == ItemTypeFile);
cleanup();

// Test rename while adding/removing vfs suffix
Expand Down

0 comments on commit e7cab7b

Please sign in to comment.