Skip to content

Commit

Permalink
Merge pull request #54 from mapbox/1ec5-test-v4-53
Browse files Browse the repository at this point in the history
Add API v4 tests
  • Loading branch information
1ec5 committed Jun 6, 2016
2 parents 39f9e82 + c4efeda commit 34ce5dc
Show file tree
Hide file tree
Showing 7 changed files with 164 additions and 26 deletions.
90 changes: 66 additions & 24 deletions MapboxDirections.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -21,18 +21,18 @@
DA1A10CA1D00F969009F82FA /* MBRouteOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA2E03EA1CB0E13D00D1269A /* MBRouteOptions.swift */; };
DA1A10CB1D00F969009F82FA /* MBRouteStep.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA2E03E81CB0E0B000D1269A /* MBRouteStep.swift */; };
DA1A10CC1D00F969009F82FA /* MBWaypoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAC05F151CFBFAC400FA0071 /* MBWaypoint.swift */; };
DA1A10CD1D00F972009F82FA /* DrivingV5Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6C9DAB1CAEC72800094FBC /* DrivingV5Tests.swift */; };
DA1A10CD1D00F972009F82FA /* V5Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6C9DAB1CAEC72800094FBC /* V5Tests.swift */; };
DA1A10CE1D00F972009F82FA /* Fixture.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6C9DB11CAECA0E00094FBC /* Fixture.swift */; };
DA1A10CF1D00F975009F82FA /* driving_dc_polyline.json in Resources */ = {isa = PBXBuildFile; fileRef = DAC05F1B1CFC1E5300FA0071 /* driving_dc_polyline.json */; };
DA1A10CF1D00F975009F82FA /* v5_driving_dc_polyline.json in Resources */ = {isa = PBXBuildFile; fileRef = DAC05F1B1CFC1E5300FA0071 /* v5_driving_dc_polyline.json */; };
DA1A10EC1D010247009F82FA /* MapboxDirections.h in Headers */ = {isa = PBXBuildFile; fileRef = DA6C9D8A1CAE442B00094FBC /* MapboxDirections.h */; settings = {ATTRIBUTES = (Public, ); }; };
DA1A10ED1D010247009F82FA /* MBDirections.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD6254731AE70CB700017857 /* MBDirections.swift */; };
DA1A10EE1D010247009F82FA /* MBRoute.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAC05F171CFC075300FA0071 /* MBRoute.swift */; };
DA1A10EF1D010247009F82FA /* MBRouteLeg.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAC05F191CFC077C00FA0071 /* MBRouteLeg.swift */; };
DA1A10F01D010247009F82FA /* MBRouteOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA2E03EA1CB0E13D00D1269A /* MBRouteOptions.swift */; };
DA1A10F11D010247009F82FA /* MBRouteStep.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA2E03E81CB0E0B000D1269A /* MBRouteStep.swift */; };
DA1A10F21D010247009F82FA /* MBWaypoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAC05F151CFBFAC400FA0071 /* MBWaypoint.swift */; };
DA1A10F31D010251009F82FA /* driving_dc_polyline.json in Resources */ = {isa = PBXBuildFile; fileRef = DAC05F1B1CFC1E5300FA0071 /* driving_dc_polyline.json */; };
DA1A10F41D010251009F82FA /* DrivingV5Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6C9DAB1CAEC72800094FBC /* DrivingV5Tests.swift */; };
DA1A10F31D010251009F82FA /* v5_driving_dc_polyline.json in Resources */ = {isa = PBXBuildFile; fileRef = DAC05F1B1CFC1E5300FA0071 /* v5_driving_dc_polyline.json */; };
DA1A10F41D010251009F82FA /* V5Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6C9DAB1CAEC72800094FBC /* V5Tests.swift */; };
DA1A10F51D010251009F82FA /* Fixture.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6C9DB11CAECA0E00094FBC /* Fixture.swift */; };
DA1A11031D0103A3009F82FA /* MapboxDirections.h in Headers */ = {isa = PBXBuildFile; fileRef = DA6C9D8A1CAE442B00094FBC /* MapboxDirections.h */; settings = {ATTRIBUTES = (Public, ); }; };
DA1A11041D0103A3009F82FA /* MBDirections.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD6254731AE70CB700017857 /* MBDirections.swift */; };
Expand All @@ -50,15 +50,24 @@
DA2E03EB1CB0E13D00D1269A /* MBRouteOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA2E03EA1CB0E13D00D1269A /* MBRouteOptions.swift */; };
DA6C9D8B1CAE442B00094FBC /* MapboxDirections.h in Headers */ = {isa = PBXBuildFile; fileRef = DA6C9D8A1CAE442B00094FBC /* MapboxDirections.h */; settings = {ATTRIBUTES = (Public, ); }; };
DA6C9DA61CAE462800094FBC /* MBDirections.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD6254731AE70CB700017857 /* MBDirections.swift */; };
DA6C9DAC1CAEC72800094FBC /* DrivingV5Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6C9DAB1CAEC72800094FBC /* DrivingV5Tests.swift */; };
DA6C9DAC1CAEC72800094FBC /* V5Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6C9DAB1CAEC72800094FBC /* V5Tests.swift */; };
DA6C9DB21CAECA0E00094FBC /* Fixture.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA6C9DB11CAECA0E00094FBC /* Fixture.swift */; };
DA737EE41D05F91E005BDA16 /* driving_dc_geojson.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EE31D05F91E005BDA16 /* driving_dc_geojson.json */; };
DA737EE51D05F91E005BDA16 /* driving_dc_geojson.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EE31D05F91E005BDA16 /* driving_dc_geojson.json */; };
DA737EE61D05F91E005BDA16 /* driving_dc_geojson.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EE31D05F91E005BDA16 /* driving_dc_geojson.json */; };
DA737EE41D05F91E005BDA16 /* v5_driving_dc_geojson.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EE31D05F91E005BDA16 /* v5_driving_dc_geojson.json */; };
DA737EE51D05F91E005BDA16 /* v5_driving_dc_geojson.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EE31D05F91E005BDA16 /* v5_driving_dc_geojson.json */; };
DA737EE61D05F91E005BDA16 /* v5_driving_dc_geojson.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EE31D05F91E005BDA16 /* v5_driving_dc_geojson.json */; };
DA737EE81D0611CB005BDA16 /* V4Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA737EE71D0611CB005BDA16 /* V4Tests.swift */; };
DA737EE91D0611CB005BDA16 /* V4Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA737EE71D0611CB005BDA16 /* V4Tests.swift */; };
DA737EEA1D0611CB005BDA16 /* V4Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA737EE71D0611CB005BDA16 /* V4Tests.swift */; };
DA737EEE1D06175B005BDA16 /* v4_driving_dc_geojson.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EED1D06175B005BDA16 /* v4_driving_dc_geojson.json */; };
DA737EEF1D06175B005BDA16 /* v4_driving_dc_geojson.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EED1D06175B005BDA16 /* v4_driving_dc_geojson.json */; };
DA737EF01D06175B005BDA16 /* v4_driving_dc_geojson.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EED1D06175B005BDA16 /* v4_driving_dc_geojson.json */; };
DA737EF21D061AA2005BDA16 /* v4_driving_dc_polyline.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EF11D061AA2005BDA16 /* v4_driving_dc_polyline.json */; };
DA737EF31D061AA2005BDA16 /* v4_driving_dc_polyline.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EF11D061AA2005BDA16 /* v4_driving_dc_polyline.json */; };
DA737EF41D061AA2005BDA16 /* v4_driving_dc_polyline.json in Resources */ = {isa = PBXBuildFile; fileRef = DA737EF11D061AA2005BDA16 /* v4_driving_dc_polyline.json */; };
DAC05F161CFBFAC400FA0071 /* MBWaypoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAC05F151CFBFAC400FA0071 /* MBWaypoint.swift */; };
DAC05F181CFC075300FA0071 /* MBRoute.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAC05F171CFC075300FA0071 /* MBRoute.swift */; };
DAC05F1A1CFC077C00FA0071 /* MBRouteLeg.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAC05F191CFC077C00FA0071 /* MBRouteLeg.swift */; };
DAC05F1C1CFC1E5300FA0071 /* driving_dc_polyline.json in Resources */ = {isa = PBXBuildFile; fileRef = DAC05F1B1CFC1E5300FA0071 /* driving_dc_polyline.json */; };
DAC05F1C1CFC1E5300FA0071 /* v5_driving_dc_polyline.json in Resources */ = {isa = PBXBuildFile; fileRef = DAC05F1B1CFC1E5300FA0071 /* v5_driving_dc_polyline.json */; };
DD6254541AE70C1700017857 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD6254531AE70C1700017857 /* AppDelegate.swift */; };
DD6254561AE70C1700017857 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = DD6254551AE70C1700017857 /* ViewController.swift */; };
FB737DB2C6D8CC82A6FAA82C /* Pods_MapboxDirectionsTVTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EBA232D519F6F671B2EDFCAF /* Pods_MapboxDirectionsTVTests.framework */; };
Expand Down Expand Up @@ -142,13 +151,16 @@
DA6C9D8C1CAE442B00094FBC /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
DA6C9D911CAE442B00094FBC /* MapboxDirectionsTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MapboxDirectionsTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
DA6C9D9A1CAE442B00094FBC /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
DA6C9DAB1CAEC72800094FBC /* DrivingV5Tests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DrivingV5Tests.swift; sourceTree = "<group>"; };
DA6C9DAB1CAEC72800094FBC /* V5Tests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = V5Tests.swift; sourceTree = "<group>"; };
DA6C9DB11CAECA0E00094FBC /* Fixture.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Fixture.swift; sourceTree = "<group>"; };
DA737EE31D05F91E005BDA16 /* driving_dc_geojson.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = driving_dc_geojson.json; sourceTree = "<group>"; };
DA737EE31D05F91E005BDA16 /* v5_driving_dc_geojson.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = v5_driving_dc_geojson.json; sourceTree = "<group>"; };
DA737EE71D0611CB005BDA16 /* V4Tests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = V4Tests.swift; sourceTree = "<group>"; };
DA737EED1D06175B005BDA16 /* v4_driving_dc_geojson.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = v4_driving_dc_geojson.json; sourceTree = "<group>"; };
DA737EF11D061AA2005BDA16 /* v4_driving_dc_polyline.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = v4_driving_dc_polyline.json; sourceTree = "<group>"; };
DAC05F151CFBFAC400FA0071 /* MBWaypoint.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MBWaypoint.swift; sourceTree = "<group>"; };
DAC05F171CFC075300FA0071 /* MBRoute.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MBRoute.swift; sourceTree = "<group>"; };
DAC05F191CFC077C00FA0071 /* MBRouteLeg.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MBRouteLeg.swift; sourceTree = "<group>"; };
DAC05F1B1CFC1E5300FA0071 /* driving_dc_polyline.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = driving_dc_polyline.json; sourceTree = "<group>"; };
DAC05F1B1CFC1E5300FA0071 /* v5_driving_dc_polyline.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = v5_driving_dc_polyline.json; sourceTree = "<group>"; };
DD62544E1AE70C1700017857 /* Directions (Swift).app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Directions (Swift).app"; sourceTree = BUILT_PRODUCTS_DIR; };
DD6254521AE70C1700017857 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
DD6254531AE70C1700017857 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
Expand Down Expand Up @@ -298,7 +310,8 @@
isa = PBXGroup;
children = (
DA1A110A1D01045E009F82FA /* DirectionsTests.swift */,
DA6C9DAB1CAEC72800094FBC /* DrivingV5Tests.swift */,
DA737EE71D0611CB005BDA16 /* V4Tests.swift */,
DA6C9DAB1CAEC72800094FBC /* V5Tests.swift */,
DA6C9DB11CAECA0E00094FBC /* Fixture.swift */,
DA6C9D9A1CAE442B00094FBC /* Info.plist */,
DA6C9DAD1CAEC93800094FBC /* Fixtures */,
Expand All @@ -309,12 +322,32 @@
DA6C9DAD1CAEC93800094FBC /* Fixtures */ = {
isa = PBXGroup;
children = (
DAC05F1B1CFC1E5300FA0071 /* driving_dc_polyline.json */,
DA737EE31D05F91E005BDA16 /* driving_dc_geojson.json */,
DA737EEC1D061514005BDA16 /* V4 */,
DA737EEB1D0614FA005BDA16 /* V5 */,
);
path = Fixtures;
sourceTree = "<group>";
};
DA737EEB1D0614FA005BDA16 /* V5 */ = {
isa = PBXGroup;
children = (
DA737EE31D05F91E005BDA16 /* v5_driving_dc_geojson.json */,
DAC05F1B1CFC1E5300FA0071 /* v5_driving_dc_polyline.json */,
);
name = V5;
path = v5;
sourceTree = "<group>";
};
DA737EEC1D061514005BDA16 /* V4 */ = {
isa = PBXGroup;
children = (
DA737EED1D06175B005BDA16 /* v4_driving_dc_geojson.json */,
DA737EF11D061AA2005BDA16 /* v4_driving_dc_polyline.json */,
);
name = V4;
path = v4;
sourceTree = "<group>";
};
DD6254451AE70C1700017857 = {
isa = PBXGroup;
children = (
Expand Down Expand Up @@ -636,8 +669,10 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
DA737EE51D05F91E005BDA16 /* driving_dc_geojson.json in Resources */,
DA1A10CF1D00F975009F82FA /* driving_dc_polyline.json in Resources */,
DA737EF31D061AA2005BDA16 /* v4_driving_dc_polyline.json in Resources */,
DA737EE51D05F91E005BDA16 /* v5_driving_dc_geojson.json in Resources */,
DA1A10CF1D00F975009F82FA /* v5_driving_dc_polyline.json in Resources */,
DA737EEF1D06175B005BDA16 /* v4_driving_dc_geojson.json in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand All @@ -652,8 +687,10 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
DA737EE61D05F91E005BDA16 /* driving_dc_geojson.json in Resources */,
DA1A10F31D010251009F82FA /* driving_dc_polyline.json in Resources */,
DA737EF41D061AA2005BDA16 /* v4_driving_dc_polyline.json in Resources */,
DA737EE61D05F91E005BDA16 /* v5_driving_dc_geojson.json in Resources */,
DA1A10F31D010251009F82FA /* v5_driving_dc_polyline.json in Resources */,
DA737EF01D06175B005BDA16 /* v4_driving_dc_geojson.json in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand All @@ -675,8 +712,10 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
DA737EE41D05F91E005BDA16 /* driving_dc_geojson.json in Resources */,
DAC05F1C1CFC1E5300FA0071 /* driving_dc_polyline.json in Resources */,
DA737EF21D061AA2005BDA16 /* v4_driving_dc_polyline.json in Resources */,
DA737EE41D05F91E005BDA16 /* v5_driving_dc_geojson.json in Resources */,
DAC05F1C1CFC1E5300FA0071 /* v5_driving_dc_polyline.json in Resources */,
DA737EEE1D06175B005BDA16 /* v4_driving_dc_geojson.json in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
Expand Down Expand Up @@ -1010,7 +1049,8 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
DA1A10CD1D00F972009F82FA /* DrivingV5Tests.swift in Sources */,
DA1A10CD1D00F972009F82FA /* V5Tests.swift in Sources */,
DA737EE91D0611CB005BDA16 /* V4Tests.swift in Sources */,
DA1A10CE1D00F972009F82FA /* Fixture.swift in Sources */,
DA1A110C1D01045E009F82FA /* DirectionsTests.swift in Sources */,
);
Expand All @@ -1033,7 +1073,8 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
DA1A10F41D010251009F82FA /* DrivingV5Tests.swift in Sources */,
DA1A10F41D010251009F82FA /* V5Tests.swift in Sources */,
DA737EEA1D0611CB005BDA16 /* V4Tests.swift in Sources */,
DA1A10F51D010251009F82FA /* Fixture.swift in Sources */,
DA1A110D1D01045E009F82FA /* DirectionsTests.swift in Sources */,
);
Expand Down Expand Up @@ -1069,7 +1110,8 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
DA6C9DAC1CAEC72800094FBC /* DrivingV5Tests.swift in Sources */,
DA6C9DAC1CAEC72800094FBC /* V5Tests.swift in Sources */,
DA737EE81D0611CB005BDA16 /* V4Tests.swift in Sources */,
DA6C9DB21CAECA0E00094FBC /* Fixture.swift in Sources */,
DA1A110B1D01045E009F82FA /* DirectionsTests.swift in Sources */,
);
Expand Down

Large diffs are not rendered by default.

Large diffs are not rendered by default.

88 changes: 88 additions & 0 deletions MapboxDirectionsTests/V4Tests.swift
Original file line number Diff line number Diff line change
@@ -0,0 +1,88 @@
import XCTest
import OHHTTPStubs
@testable import MapboxDirections

class V4Tests: XCTestCase {
override func tearDown() {
OHHTTPStubs.removeAllStubs()
super.tearDown()
}

func testWithFormat(shapeFormat: RouteShapeFormat) {
let expectation = expectationWithDescription("calculating directions should return results")

let queryParams: [String: String?] = [
"alternatives": "true",
"instructions": "text",
"geometry": String(shapeFormat),
"steps": "true",
"access_token": BogusToken,
]
stub(isHost("api.mapbox.com")
&& isPath("/v4/directions/mapbox.driving/-122.42,37.78;-77.03,38.91.json")
&& containsQueryParams(queryParams)) { _ in
let path = NSBundle(forClass: self.dynamicType).pathForResource("v4_driving_dc_\(shapeFormat)", ofType: "json")
return OHHTTPStubsResponse(fileAtPath: path!, statusCode: 200, headers: ["Content-Type": "application/json"])
}

let options = RouteOptionsV4(coordinates: [
CLLocationCoordinate2D(latitude: 37.78, longitude: -122.42),
CLLocationCoordinate2D(latitude: 38.91, longitude: -77.03),
])
XCTAssertEqual(options.shapeFormat, RouteShapeFormat.Polyline, "Route shape format should be Polyline by default.")
options.shapeFormat = shapeFormat
options.includesSteps = true
options.includesAlternativeRoutes = true
var route: Route?
let task = Directions(accessToken: BogusToken).calculateDirections(options: options) { (waypoints, routes, error) in
XCTAssertNil(error, "Error: \(error)")

XCTAssertNotNil(routes)
XCTAssertEqual(routes!.count, 2)
route = routes!.first!

expectation.fulfill()
}
XCTAssertNotNil(task)

waitForExpectationsWithTimeout(2) { (error) in
XCTAssertNil(error, "Error: \(error)")
XCTAssertEqual(task.state, NSURLSessionTaskState.Completed)
}

XCTAssertNotNil(route)
XCTAssertNotNil(route!.coordinates)
XCTAssertEqual(route!.coordinates!.count, 28375)

XCTAssertEqual(round(route!.coordinates!.first!.latitude), 38)
XCTAssertEqual(round(route!.coordinates!.first!.longitude), -122)
XCTAssertEqual(route!.legs.count, 1)

let leg = route!.legs.first!
XCTAssertEqual(leg.name, "I 80, I 80;US 30")
XCTAssertEqual(leg.steps.count, 80)

let step = leg.steps[24]
XCTAssertEqual(step.distance, 223582.0)
XCTAssertEqual(step.expectedTravelTime, 7219.0)
XCTAssertEqual(step.instructions, "Go straight onto I 80;US 93 Alternate, I 80;US 93 ALT becomes I 80;US 93 Alternate")
XCTAssertEqual(step.name, "I 80;US 93 Alternate")
XCTAssertEqual(step.maneuverType, ManeuverType.Continue)
XCTAssertNil(step.maneuverDirection)
XCTAssertNil(step.initialHeading)
XCTAssertNil(step.finalHeading)

XCTAssertNil(step.coordinates)
XCTAssertEqual(step.coordinateCount, 0)
}

func testGeoJSON() {
XCTAssertEqual(String(RouteShapeFormat.GeoJSON), "geojson")
testWithFormat(.GeoJSON)
}

func testPolyline() {
XCTAssertEqual(String(RouteShapeFormat.Polyline), "polyline")
testWithFormat(.Polyline)
}
}
Loading

0 comments on commit 34ce5dc

Please sign in to comment.