aboutsummaryrefslogtreecommitdiffstats
path: root/tests/lib/Files/Cache/ScannerTest.php
diff options
context:
space:
mode:
Diffstat (limited to 'tests/lib/Files/Cache/ScannerTest.php')
-rw-r--r--tests/lib/Files/Cache/ScannerTest.php19
1 files changed, 19 insertions, 0 deletions
diff --git a/tests/lib/Files/Cache/ScannerTest.php b/tests/lib/Files/Cache/ScannerTest.php
index e4c052f6025..52587aeabc7 100644
--- a/tests/lib/Files/Cache/ScannerTest.php
+++ b/tests/lib/Files/Cache/ScannerTest.php
@@ -404,4 +404,23 @@ class ScannerTest extends TestCase {
['/sub/folder/foo.txt', false],
];
}
+
+ public function testNoETagUnscannedFolder() {
+ $this->fillTestFolders();
+
+ $this->scanner->scan('');
+
+ $oldFolderEntry = $this->cache->get('folder');
+ // create a new file in a folder by keeping the mtime unchanged, but mark the folder as unscanned
+ $this->storage->file_put_contents('folder/new.txt', 'foo');
+ $this->storage->touch('folder', $oldFolderEntry->getMTime());
+ $this->cache->update($oldFolderEntry->getId(), ['size' => -1]);
+
+ $this->scanner->scan('');
+
+ $this->cache->inCache('folder/new.txt');
+
+ $newFolderEntry = $this->cache->get('folder');
+ $this->assertNotEquals($newFolderEntry->getEtag(), $oldFolderEntry->getEtag());
+ }
}