From 55169b62dde0afe298407eaa2f6b5c0c322e93be Mon Sep 17 00:00:00 2001 From: Claudio Cambra Date: Fri, 12 Apr 2024 17:20:40 +0800 Subject: [PATCH] Add test for files backend song scan cancelling Signed-off-by: Claudio Cambra --- .../Backend/Files/FilesBackendTests.swift | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/HarmonyKitTests/Backend/Files/FilesBackendTests.swift b/HarmonyKitTests/Backend/Files/FilesBackendTests.swift index 5f21a5f..2ff0dcc 100644 --- a/HarmonyKitTests/Backend/Files/FilesBackendTests.swift +++ b/HarmonyKitTests/Backend/Files/FilesBackendTests.swift @@ -155,4 +155,20 @@ class FilesBackendTests: XCTestCase { semaphore.wait() } } + + func testScanCancel() throws { + try createTemporaryDirectoryStructure() + let backend = FilesBackend(path: temporaryDirectory, backendId: "test-be") + Task { + try await backend.scan( + containerScanApprover: { _,_ in return true }, + songScanApprover: { _,_ in return true }, + finalisedSongHandler: { song in self.songs.append(song) }, + finalisedContainerHandler: { _,_ in } + ) + } + backend.cancelScan() + XCTAssertFalse(backend.presentation.scanning, "Expected scanning to be false") + XCTAssertNotEqual(songs.count, 3, "All songs should not have been scanned") + } }