         case .Success(let n):
             XCTAssertEqual(n.value, "Matt Mathias", "`matt` should hold string `Matt Mathias`")
         case .Failure(let error):
-            XCTAssert(false, "There should be no error: \(error)")
+            XCTFail("There should be no error: \(error)")
         }
     }
 

        let data = createData()
        let json = JSON.createJSONFrom(data!)
        let people = splitResult(json["people"].array, Person.createWithJSON)
        XCTAssertTrue(people.successes.count > 0, "There should be people in `successes`.")
        XCTAssertTrue(people.failures.count == 0, "There should be no errors in `failures`.")
    }
    
    func testSplitResultCanGatherErrorsInFailures() {
        let data = createData()
        let json = JSON.createJSONFrom(data!)
        let peopl = splitResult(json["peopl"].array, Person.createWithJSON)
        XCTAssertTrue(peopl.successes.count == 0, "There should be no people in `successes`.")
        XCTAssertTrue(peopl.failures.count > 0, "There should be errors in `failures`.")
    }
    
    func testThatSubscriptingJSONWorksForTopLevelObject() {

        switch peopleArray {
        case .Success(let people):
            let (successes, failures) = partitionResults(people.value.map { Person.createWithJSON($0) })
            XCTAssertNotEqual(successes.count, 0, "There should be successes.")
            XCTAssertEqual(failures.count, 0, "There should be no failures.")
        case .Failure(let error):
            XCTFail("There should be no error.")
        }
    }
    
