Skip to content

Commit bbbdf47

Browse files
authored
Merge pull request #60881 from nextcloud/jtr/test-fix-cache-ordering-assumption
test(cache): avoid ordering assumptions in testExtended
2 parents a8428f8 + c7fabc4 commit bbbdf47

1 file changed

Lines changed: 22 additions & 16 deletions

File tree

tests/lib/Files/Cache/CacheTest.php

Lines changed: 22 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -799,26 +799,31 @@ public function testExtended(): void {
799799
$entries = $this->cache->getFolderContents('');
800800
$this->assertCount(4, $entries);
801801

802-
$this->assertEquals('foo1', $entries[0]->getName());
803-
$this->assertEquals('foo2', $entries[1]->getName());
804-
$this->assertEquals('foo3', $entries[2]->getName());
805-
$this->assertEquals('foo4', $entries[3]->getName());
802+
$entriesByName = [];
803+
foreach ($entries as $entry) {
804+
$entriesByName[$entry->getName()] = $entry;
805+
}
806806

807-
$this->assertEquals(20, $entries[0]->getCreationTime());
808-
$this->assertEquals(0, $entries[0]->getUploadTime());
809-
$this->assertEquals(null, $entries[0]->getMetadataEtag());
807+
$this->assertArrayHasKey('foo1', $entriesByName);
808+
$this->assertArrayHasKey('foo2', $entriesByName);
809+
$this->assertArrayHasKey('foo3', $entriesByName);
810+
$this->assertArrayHasKey('foo4', $entriesByName);
811+
812+
$this->assertEquals(20, $entriesByName['foo1']->getCreationTime());
813+
$this->assertEquals(0, $entriesByName['foo1']->getUploadTime());
814+
$this->assertEquals(null, $entriesByName['foo1']->getMetadataEtag());
810815

811-
$this->assertEquals(0, $entries[1]->getCreationTime());
812-
$this->assertEquals(30, $entries[1]->getUploadTime());
813-
$this->assertEquals(null, $entries[1]->getMetadataEtag());
816+
$this->assertEquals(0, $entriesByName['foo2']->getCreationTime());
817+
$this->assertEquals(30, $entriesByName['foo2']->getUploadTime());
818+
$this->assertEquals(null, $entriesByName['foo2']->getMetadataEtag());
814819

815-
$this->assertEquals(0, $entries[2]->getCreationTime());
816-
$this->assertEquals(0, $entries[2]->getUploadTime());
817-
$this->assertEquals('foo', $entries[2]->getMetadataEtag());
820+
$this->assertEquals(0, $entriesByName['foo3']->getCreationTime());
821+
$this->assertEquals(0, $entriesByName['foo3']->getUploadTime());
822+
$this->assertEquals('foo', $entriesByName['foo3']->getMetadataEtag());
818823

819-
$this->assertEquals(0, $entries[3]->getCreationTime());
820-
$this->assertEquals(0, $entries[3]->getUploadTime());
821-
$this->assertEquals(null, $entries[3]->getMetadataEtag());
824+
$this->assertEquals(0, $entriesByName['foo4']->getCreationTime());
825+
$this->assertEquals(0, $entriesByName['foo4']->getUploadTime());
826+
$this->assertEquals(null, $entriesByName['foo4']->getMetadataEtag());
822827

823828
$this->cache->update($id1, ['upload_time' => 25]);
824829

@@ -834,6 +839,7 @@ public function testExtended(): void {
834839
$entries = $this->cache->getFolderContents('sub');
835840
$this->assertCount(1, $entries);
836841

842+
$this->assertEquals('foo1', $entries[0]->getName());
837843
$this->assertEquals(20, $entries[0]->getCreationTime());
838844
$this->assertEquals(25, $entries[0]->getUploadTime());
839845
$this->assertEquals(null, $entries[0]->getMetadataEtag());

0 commit comments

Comments
 (0)