Skip to content

Commit bb258cc

Browse files
committed
Work in progress: Fixed some compiler errors.
Signed-off-by: Iva Horn <iva.horn@nextcloud.com>
1 parent 65b1798 commit bb258cc

1 file changed

Lines changed: 33 additions & 8 deletions

File tree

Tests/NextcloudFileProviderKitTests/ChunkedArrayTests.swift

Lines changed: 33 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -54,27 +54,52 @@ final class ChunkedArrayTests: NextcloudFileProviderKitTestCase {
5454
// MARK: - concurrentChunkedForEach(into:operation:)
5555

5656
func testConcurrentChunkedForEach() async {
57+
actor ResultsCollector {
58+
var results = [Int]()
59+
60+
func append(_ value: Int) {
61+
results.append(value)
62+
}
63+
64+
func getResults() -> [Int] {
65+
return results
66+
}
67+
}
68+
5769
let array = [1, 2, 3, 4]
58-
var results = [Int]()
59-
let resultsQueue =
60-
DispatchQueue(label: "com.claucambra.NextcloudFileProviderKitTests.resultsQueue")
70+
let collector = ResultsCollector()
6171

6272
await array.concurrentChunkedForEach(into: 2) { element in
6373
try? await Task.sleep(nanoseconds: 100_000_000) // Simulate work (100ms)
64-
resultsQueue.sync { results.append(element * 2) }
74+
await collector.append(element * 2)
6575
}
66-
let sortedResults = results.sorted()
76+
let sortedResults = await collector.getResults().sorted()
6777
let expectedResults = [2, 4, 6, 8]
6878
XCTAssertEqual(sortedResults, expectedResults)
6979
}
7080

7181
func testConcurrentChunkedForEachEmptyArray() async {
82+
actor ResultsCollector {
83+
var results = [Int]()
84+
85+
func append(_ value: Int) {
86+
results.append(value)
87+
}
88+
89+
func isEmpty() -> Bool {
90+
return results.isEmpty
91+
}
92+
}
93+
7294
let emptyArray: [Int] = []
73-
var results = [Int]()
95+
let collector = ResultsCollector()
96+
7497
await emptyArray.concurrentChunkedForEach(into: 2) { element in
75-
results.append(element)
98+
await collector.append(element)
7699
}
77-
XCTAssertTrue(results.isEmpty)
100+
101+
let isEmpty = await collector.isEmpty()
102+
XCTAssertTrue(isEmpty)
78103
}
79104

80105
// MARK: - concurrentChunkedCompactMap(into:transform:)

0 commit comments

Comments
 (0)