Skip to content

Commit 2bd288c

Browse files
committed
Add method to test retrieval of all materialised files from database
Signed-off-by: Claudio Cambra <developer@claudiocambra.com>
1 parent 49338cd commit 2bd288c

1 file changed

Lines changed: 60 additions & 0 deletions

File tree

Tests/NextcloudFileProviderKitTests/FilesDatabaseManagerTests.swift

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1089,4 +1089,64 @@ final class FilesDatabaseManagerTests: XCTestCase {
10891089
XCTAssertNotNil(retrievedParentIdentifier)
10901090
XCTAssertEqual(retrievedParentIdentifier?.rawValue, remoteFolder.identifier)
10911091
}
1092+
1093+
func testMaterialisedFiles() async throws {
1094+
let itemA = RealmItemMetadata()
1095+
let itemB = RealmItemMetadata()
1096+
let itemC = RealmItemMetadata()
1097+
let folderA = RealmItemMetadata()
1098+
let folderB = RealmItemMetadata()
1099+
let folderC = RealmItemMetadata()
1100+
let notFolderA = RealmItemMetadata()
1101+
let notFolderB = RealmItemMetadata()
1102+
1103+
folderA.directory = true
1104+
folderB.directory = true
1105+
folderC.directory = true
1106+
1107+
itemA.ocId = "itemA"
1108+
itemB.ocId = "itemB"
1109+
itemC.ocId = "itemC"
1110+
folderA.ocId = "folderA"
1111+
folderB.ocId = "folderB"
1112+
folderC.ocId = "folderC"
1113+
notFolderA.ocId = "notFolderA"
1114+
notFolderB.ocId = "notFolderB"
1115+
1116+
itemA.account = Self.account.ncKitAccount
1117+
itemB.account = Self.account.ncKitAccount
1118+
itemC.account = "another account"
1119+
folderA.account = Self.account.ncKitAccount
1120+
folderB.account = Self.account.ncKitAccount
1121+
folderC.account = "another account"
1122+
notFolderA.account = Self.account.ncKitAccount
1123+
notFolderB.account = "another account"
1124+
1125+
itemA.downloaded = true
1126+
itemB.downloaded = false
1127+
itemC.downloaded = true
1128+
folderA.visitedDirectory = true
1129+
folderB.visitedDirectory = false
1130+
folderC.visitedDirectory = true
1131+
notFolderA.visitedDirectory = true
1132+
notFolderB.visitedDirectory = true
1133+
1134+
let realm = Self.dbManager.ncDatabase()
1135+
try realm.write {
1136+
realm.add(itemA)
1137+
realm.add(itemB)
1138+
realm.add(itemC)
1139+
realm.add(folderA)
1140+
realm.add(folderB)
1141+
realm.add(folderC)
1142+
}
1143+
1144+
let materialised =
1145+
Self.dbManager.materialisedItemMetadatas(account: Self.account.ncKitAccount)
1146+
XCTAssertEqual(materialised.count, 2)
1147+
1148+
let materialisedOcIds = materialised.map(\.ocId)
1149+
XCTAssertTrue(materialisedOcIds.contains(itemA.ocId))
1150+
XCTAssertTrue(materialisedOcIds.contains(folderA.ocId))
1151+
}
10921152
}

0 commit comments

Comments
 (0)