in OSSSwiftDemo/OSSSwiftDemoTests/OSSTaskTests.swift [343:361]
func testTaskForCompletionOfAllTasksSuccess() {
var tasks: [OSSTask<AnyObject>] = [] as! [OSSTask<AnyObject>]
for index in 0...19 {
let task = OSSTask<AnyObject>.init(delay: Int32(arc4random() % 100)).continue({ (t) -> Any? in
return index
})
tasks.append(task)
}
OSSTask<AnyObject>.init(forCompletionOfAllTasks: tasks).continue({ (t) -> Any? in
XCTAssertNil(t.error)
XCTAssertFalse(t.isCancelled)
for index in 0...19 {
XCTAssertEqual(index, (tasks[index].result as! Int))
}
return nil
}).waitUntilFinished()
}