| createStepsFromDecisions(List, List, List, List, String, String, boolean) |   | 68% |   | 57% | 4 | 8 | 9 | 25 | 0 | 1 |
| resolvePoint(String, String) |   | 78% |   | 66% | 4 | 7 | 1 | 10 | 0 | 1 |
| calculateCrossFloorRoute(String, String, String, String, String, AccessibilityRoutingStrategy) |   | 95% |   | 66% | 6 | 10 | 0 | 26 | 0 | 1 |
| buildRoute(String, FloorPlanData.Point, FloorPlanData.Point, String, String, AccessibilityRoutingStrategy) |   | 91% |   | 62% | 3 | 5 | 0 | 14 | 0 | 1 |
| createTransitionStep(String, String, String) |   | 93% |   | 87% | 2 | 9 | 1 | 17 | 0 | 1 |
| filterPois(List, AccessibilityRoutingStrategy) |   | 92% |   | 75% | 4 | 9 | 0 | 9 | 0 | 1 |
| detectTransitionType(List) |   | 91% |   | 80% | 2 | 6 | 0 | 8 | 0 | 1 |
| parseFloorNumber(String) |   | 66% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| findTransitionIndex(List) |   | 93% |   | 75% | 2 | 5 | 0 | 6 | 0 | 1 |
| detectStairMessageFromRoute(List) |   | 92% |   | 75% | 2 | 5 | 0 | 6 | 0 | 1 |
| addMovementSteps(List, List, String, String, boolean) |  | 97% |   | 50% | 2 | 3 | 0 | 8 | 0 | 1 |
| buildMovementInstruction(IndoorManeuverType, String, boolean, boolean) |  | 95% |   | 87% | 1 | 6 | 1 | 9 | 0 | 1 |
| getIndoorDirections(String, String, String, String, String, boolean) |  | 100% |  | 100% | 0 | 7 | 0 | 22 | 0 | 1 |
| getClosestConnectorPair(PathfindingService.Waypoint, PathfindingService.Waypoint, List, List, String) |  | 100% |   | 83% | 3 | 10 | 0 | 16 | 0 | 1 |
| classifyTurnAtPoint(IndoorDirectionResponse.RoutePoint, IndoorDirectionResponse.RoutePoint, IndoorDirectionResponse.RoutePoint) |  | 100% |   | 90% | 1 | 6 | 0 | 15 | 0 | 1 |
| generateRealSteps(String, String, List, String, String, String) |  | 100% |   | 83% | 1 | 4 | 0 | 14 | 0 | 1 |
| convertBuildingIdForPathfinding(String, String) |  | 100% |   | 93% | 2 | 16 | 0 | 16 | 0 | 1 |
| findDecisionPoints(List, List, List) |  | 100% |   | 91% | 1 | 7 | 0 | 16 | 0 | 1 |
| calculatePreciseDistance(List) |  | 100% |   | 83% | 1 | 4 | 0 | 7 | 0 | 1 |
| getBuildingName(String) |  | 100% |   | 78% | 6 | 15 | 0 | 8 | 0 | 1 |
| getRoomPoints(String, String) |  | 100% |   | 75% | 1 | 3 | 0 | 9 | 0 | 1 |
| detectHallSecondFloorStairs(String, String, String, String) |  | 100% |   | 87% | 3 | 13 | 0 | 6 | 0 | 1 |
| sumSegmentDistance(List, int, int) |  | 100% |  | 100% | 0 | 2 | 0 | 8 | 0 | 1 |
| calculateRoute(String, String, String, String, AccessibilityRoutingStrategy) |  | 100% |   | 75% | 1 | 3 | 0 | 5 | 0 | 1 |
| detectGenericStairs(String, String) |  | 100% |   | 83% | 2 | 7 | 0 | 4 | 0 | 1 |
| formatFinalDuration(double) |  | 100% |  | 100% | 0 | 3 | 0 | 5 | 0 | 1 |
| findBestTransitionConnectors(PathfindingService.Waypoint, PathfindingService.Waypoint, List, List, boolean) |  | 100% |  | 100% | 0 | 3 | 0 | 6 | 0 | 1 |
| detectStairMessage(String, String, String, String) |  | 100% |  | 100% | 0 | 2 | 0 | 5 | 0 | 1 |
| isHallEntrance(String) |  | 100% |   | 87% | 1 | 5 | 0 | 1 | 0 | 1 |
| getWaypoints(String, String) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| getPointsOfInterest(String, String) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| getAvailableRooms(String, String) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| formatFinalDistance(double) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| lambda$getWaypoints$1(PathfindingService.Waypoint) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| IndoorDirectionService(PathfindingService) |  | 100% | | n/a | 0 | 1 | 0 | 3 | 0 | 1 |
| lambda$getAvailableRooms$0(IndoorDirectionsController.RoomPointResponse) |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |