             
             XCTFail("Should never reach here because of Task.all failure.")
             
-        }.catch { (error: NSError?, isCancelled: Bool) -> Void in
-            
-            XCTAssertTrue(error != nil, "Task.all non-cancelled error returns 1st-errored object (spec).")
+        }.catch { (error: ErrorString?, isCancelled: Bool) -> Void in
+            
+            XCTAssertEqual(error!, "ERROR", "Task.all non-cancelled error returns 1st-errored object (spec).")
             expect.fulfill()
             
         }

    
    // 1. 3 progresses at t=20ms
    // 2. checks cancel & pause, add 2 progresses at t=100ms
    typealias _InterruptableTask = Task<Float, String, String>
    func _interruptableTask() -> _InterruptableTask
    {
        return Task<Float, String, String> { (progress, fulfill, reject, configure) in
            
            // NOTE: not a good flag, watch out for race condition!
            var isCancelled = false

            
            XCTFail("Should never reach here.")
            
        }.catch { (error: ErrorString?, isCancelled: Bool) -> Void in
            
            XCTAssertEqual(error!, "ERROR")
            XCTAssertFalse(isCancelled)
            
            expect.fulfill()
