in source/UberRidesTests/ObjectMappingTests.swift [733:766]
func testGetRideReceipt() {
let bundle = Bundle(for: ObjectMappingTests.self)
if let path = bundle.path(forResource: "rideReceipt", ofType: "json") {
if let jsonData = try? Data(contentsOf: URL(fileURLWithPath: path)) {
guard let receipt = try? JSONDecoder.uberDecoder.decode(RideReceipt.self, from: jsonData) else {
XCTAssert(false)
return
}
XCTAssertEqual(receipt.requestID, "f590713c-fe6b-438b-9da1-8aeeea430657")
let chargeAdjustments = receipt.chargeAdjustments
XCTAssertEqual(chargeAdjustments?.count, 1)
XCTAssertEqual(chargeAdjustments?.first?.name, "Booking Fee")
XCTAssertEqual(chargeAdjustments?.first?.type, "booking_fee")
XCTAssertEqual(receipt.subtotal, "$12.78")
XCTAssertEqual(receipt.totalCharged, "$5.92")
XCTAssertEqual(receipt.totalFare, "$12.79")
XCTAssertEqual(receipt.totalOwed, 0.0)
XCTAssertEqual(receipt.currencyCode, "USD")
XCTAssertEqual(receipt.duration?.hour, 0)
XCTAssertEqual(receipt.duration?.minute, 11)
XCTAssertEqual(receipt.duration?.second, 32)
XCTAssertEqual(receipt.distance, "1.87")
XCTAssertEqual(receipt.distanceLabel, "miles")
return
}
}
XCTAssert(false)
}