### Question:
StepMilestone extends Milestone { @Override public boolean isOccurring(RouteProgress previousRouteProgress, RouteProgress routeProgress) { if (previousRouteProgress.currentLegProgress().stepIndex() != routeProgress.currentLegProgress().stepIndex()) { called = false; } if (called) { return false; } if (builder.getTrigger().isOccurring( TriggerProperty.getSparseArray(previousRouteProgress, routeProgress))) { called = true; return true; } return false; } private  StepMilestone(Builder builder); @Override boolean isOccurring(RouteProgress previousRouteProgress, RouteProgress routeProgress);  }### Answer:
@Test public void sanity() throws Exception { RouteProgress routeProgress = buildStepMilestoneRouteProgress(); Milestone milestone = new StepMilestone.Builder() .setTrigger( Trigger.gt(TriggerProperty.STEP_DISTANCE_TOTAL_METERS, 100d) ) .setIdentifier(101) .build(); assertNotNull(milestone); assertTrue(milestone.isOccurring(routeProgress, routeProgress)); }