From afe77e32f2baf6d7565d85d9a49c57686c6290c5 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Fri, 22 Aug 2025 19:11:37 +0200 Subject: [PATCH] test: test moving cache items from cache jail with sharding Signed-off-by: Robin Appelman --- tests/lib/Files/Cache/CacheTest.php | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/tests/lib/Files/Cache/CacheTest.php b/tests/lib/Files/Cache/CacheTest.php index 383962b7224..0ce5a5ac2b3 100644 --- a/tests/lib/Files/Cache/CacheTest.php +++ b/tests/lib/Files/Cache/CacheTest.php @@ -10,6 +10,7 @@ namespace Test\Files\Cache; use OC\Files\Cache\Cache; use OC\Files\Cache\CacheEntry; +use OC\Files\Cache\Wrapper\CacheJail; use OC\Files\Search\SearchComparison; use OC\Files\Search\SearchQuery; use OC\Files\Storage\Temporary; @@ -521,6 +522,24 @@ class CacheTest extends \Test\TestCase { $this->assertTrue($this->cache->inCache('targetfolder/sub')); } + public function testMoveFromCacheJail(): void { + $data = ['size' => 100, 'mtime' => 50, 'mimetype' => 'foo/bar']; + $folderData = ['size' => 100, 'mtime' => 50, 'mimetype' => ICacheEntry::DIRECTORY_MIMETYPE]; + + $this->cache2->put('folder', $folderData); + $this->cache2->put('folder/sub', $data); + + $jail = new CacheJail($this->cache2, 'folder'); + + $this->cache->moveFromCache($jail, 'sub', 'targetsub'); + + $this->assertTrue($this->cache2->inCache('folder')); + $this->assertFalse($this->cache2->inCache('folder/sub')); + + $this->assertTrue($this->cache->inCache('targetsub')); + $this->assertEquals($this->cache->getId(''), $this->cache->get('targetsub')->getParentId()); + } + public function testGetIncomplete(): void { $file1 = 'folder1'; $file2 = 'folder2';