func testTaskForCompletionOfAllTasksCancelled()

in OSSSwiftDemo/OSSSwiftDemoTests/OSSTaskTests.swift [433:459]


    func testTaskForCompletionOfAllTasksCancelled() {
        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
                if index == 10 {
                    return OSSTask<AnyObject>.cancelled()
                }
                return index
            })
            tasks.append(task)
        }
        
        OSSTask<AnyObject>.init(forCompletionOfAllTasks: tasks).continue({ (t) -> Any? in
            XCTAssertNil(t.error)
            XCTAssertTrue(t.isCancelled)
            
            for index in 0...19 {
                if index == 10 {
                    XCTAssertNotNil(tasks[index].isCancelled);
                } else {
                    XCTAssertEqual(index, (tasks[index].result as! Int))
                }
            }
            
            return nil
        }).waitUntilFinished()
    }