@Test
public final void testFrontVehicleOnLane() {

    RoadSegment.resetNextId();
    Vehicle.resetNextId();
    final double roadLength = 1000.0;
    final int laneCount = 1;
    final RoadSegment roadSegment = new RoadSegment(roadLength, laneCount);
    Vehicle vehicle = roadSegment.frontVehicleOnLane(Lanes.LANE1);
    assertEquals(null, vehicle);
    final Vehicle v0 = newVehicle(900.0, 0.0, Lanes.LANE1);
    roadSegment.addVehicle(v0);
    vehicle = roadSegment.frontVehicleOnLane(Lanes.LANE1);
    assertEquals(v0.getId(), vehicle.getId());
    final Vehicle v1 = newVehicle(800.0, 0.0, Lanes.LANE1);
    roadSegment.addVehicle(v1);
    vehicle = roadSegment.frontVehicleOnLane(Lanes.LANE1);
    assertEquals(v0.getId(), vehicle.getId());
}