Skip to content

Commit 5c96b8b

Browse files
committed
sort tasks by task number
1 parent 6fdc411 commit 5c96b8b

1 file changed

Lines changed: 15 additions & 1 deletion

File tree

Core/Sources/HostApp/Benchmark/Domain/Manager/BenchmarkManager.swift

Lines changed: 15 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -273,7 +273,21 @@ class RealtimeSuggestionControllerBenchmarkManager: BenchmarkManager {
273273
}
274274
}
275275

276-
return taskFolders.sorted(by: { $0.lastPathComponent < $1.lastPathComponent })
276+
return taskFolders.sorted { lhs, rhs in
277+
let lhsNumber = extractTaskNumber(from: lhs.lastPathComponent) ?? 0
278+
let rhsNumber = extractTaskNumber(from: rhs.lastPathComponent) ?? 0
279+
return lhsNumber < rhsNumber
280+
}
281+
}
282+
283+
private func extractTaskNumber(from name: String) -> Int? {
284+
let regex = try! NSRegularExpression(pattern: #"Task-(\d+)"#)
285+
let range = NSRange(location: 0, length: name.utf16.count)
286+
if let match = regex.firstMatch(in: name, options: [], range: range),
287+
let numberRange = Range(match.range(at: 1), in: name) {
288+
return Int(name[numberRange])
289+
}
290+
return nil
277291
}
278292

279293
func findXcodeWorkspace(in directory: URL) -> URL? {

0 commit comments

Comments
 (0)