package org.croudtrip; import org.croudtrip.api.TripsResource; import org.croudtrip.api.account.UserDescription; import org.croudtrip.api.account.Vehicle; import org.croudtrip.api.account.VehicleDescription; import org.croudtrip.api.directions.RouteLocation; import org.croudtrip.api.trips.TripOfferDescription; import org.croudtrip.api.trips.TripQueryDescription; import org.croudtrip.api.trips.TripQueryResult; import org.junit.Assert; import org.junit.Test; import java.util.UUID; public class SuperTripsTest { private ApiFactory apiFactory = new ApiFactory(); @Test public void testAddUser() { // register user UserDescription user = new UserDescription(UUID.randomUUID().toString() + "@foobar.de", "foo", "bar", "foobar"); apiFactory.getUsersResource().registerUserSynchronously(user); apiFactory.setUser(user); // add vehicle Vehicle vehicle = apiFactory.getVehicleResource().addVehicleSynchronously(new VehicleDescription("foo", "bar", "foobar", 4)); // add offers TripsResource tripsResource = apiFactory.getTripsResource(); // Nuernberg -> Leipzig tripsResource.addOfferSynchronously(new TripOfferDescription( new RouteLocation(49.4360936, 11.1011232), new RouteLocation(51.3417825 ,12.3936349), 25000, 42, vehicle.getId())); // Hannover -> Dresden tripsResource.addOfferSynchronously(new TripOfferDescription( new RouteLocation(52.3796664, 9.7614715), new RouteLocation(51.0768337, 13.7725857), 25000, 42, vehicle.getId())); // Berlin -> Prag tripsResource.addOfferSynchronously(new TripOfferDescription( new RouteLocation(52.5075419, 13.4251364), new RouteLocation(50.0596696, 14.4656239), 25000, 42, vehicle.getId())); // query offers TripQueryResult queryResult = tripsResource.queryOffersSynchronously(new TripQueryDescription( new RouteLocation(49.4360936, 11.1011232), new RouteLocation(50.0596696, 14.4656239), 60 * 60)); Assert.assertNotNull(queryResult.getReservations()); Assert.assertFalse(queryResult.getReservations().isEmpty()); Assert.assertEquals(3, queryResult.getReservations().get(0).getReservations().size()); } }