diff --git a/src/main/java/com/google/maps/model/Vehicle.java b/src/main/java/com/google/maps/model/Vehicle.java index 2b193e812..419d218da 100644 --- a/src/main/java/com/google/maps/model/Vehicle.java +++ b/src/main/java/com/google/maps/model/Vehicle.java @@ -39,4 +39,9 @@ public class Vehicle { * {@code icon} contains the URL for an icon associated with this vehicle type. */ public String icon; + + /** + * {@code local_icon} contains the URL for an icon based on the local transport signage. + */ + public String local_icon; } \ No newline at end of file diff --git a/src/test/java/com/google/maps/DirectionsApiTest.java b/src/test/java/com/google/maps/DirectionsApiTest.java index f27facbe3..53dd306a6 100644 --- a/src/test/java/com/google/maps/DirectionsApiTest.java +++ b/src/test/java/com/google/maps/DirectionsApiTest.java @@ -394,4 +394,29 @@ public void testGeocodedWaypoints() throws Exception { } + /** + * Test {@code local_icon} for Directions in Paris. + */ + @Test + public void testLocalIconInParis() throws Exception { + DirectionsResult result = DirectionsApi.newRequest(context) + .origin("paris metro bibliotheque francois mitterrand") + .destination("paris%20metro%20pyramides") + .mode(TravelMode.TRANSIT) + .await(); + assertNotNull(result); + assertNotNull(result.routes); + assertNotNull(result.routes[0]); + assertNotNull(result.routes[0].legs); + assertNotNull(result.routes[0].legs[0]); + assertNotNull(result.routes[0].legs[0].steps); + assertNotNull(result.routes[0].legs[0].steps[0]); + assertNotNull(result.routes[0].legs[0].steps[0].transitDetails); + assertNotNull(result.routes[0].legs[0].steps[0].transitDetails.line); + assertNotNull(result.routes[0].legs[0].steps[0].transitDetails.line.vehicle); + assertNotNull(result.routes[0].legs[0].steps[0].transitDetails.line.vehicle.local_icon); + assertEquals("//maps.gstatic.com/mapfiles/transit/iw2/6/fr-paris-metro.png", + result.routes[0].legs[0].steps[0].transitDetails.line.vehicle.local_icon); + } + }