in source/UberRidesTests/APIManagerTests.swift [355:385]
func testPutPlace() {
let testAddress = "testAddress"
let placeID = Place.home
let request = buildRequestForEndpoint(Places.putPlace(placeID: placeID, address: testAddress))
XCTAssertEqual(request.httpMethod, UberHTTPMethod.put.rawValue)
if let url = request.url {
XCTAssertEqual(url.absoluteString, ExpectedEndpoint.PutPlace)
} else {
XCTAssert(false)
}
if let headers = request.allHTTPHeaderFields {
XCTAssertEqual(headers["Content-Type"], "application/json")
} else {
XCTAssert(false)
}
XCTAssertNotNil(request.httpBody)
var dictionary: NSDictionary?
do {
dictionary = try JSONSerialization.jsonObject(with: request.httpBody!, options: .mutableContainers) as? NSDictionary
} catch {
XCTAssert(false)
}
guard let body = dictionary else {
XCTAssert(false)
return
}
XCTAssertEqual(body["address"] as? String, testAddress)
}