MobilityData / gtfs-realtime-validator

Java-based tool that validates General Transit Feed Specification (GTFS)-realtime feeds
Other
43 stars 10 forks source link

When two feeds are being monitored, show both in Iteration Details UI #46

Open isabelle-dr opened 2 years ago

isabelle-dr commented 2 years ago

Issue by barbeau Jul 6, 2017 Originally opened as https://github.com/CUTR-at-USF/gtfs-realtime-validator/issues/244


Summary:

We currently have rules "W003 - ID in one feed missing from the other" and "E047 - VehiclePosition and TripUpdate ID pairing mismatch" in CrossFeedDescriptorValidator that compare a TripUpdates feed against a VehiclePositions feed. However, we don't allow the user to see more than one protocol buffer message in the Iteration Details page - this means you can see what the validator logged for the VehiclePositions feed that generated this error, or the TripUpdate that generated this error, but not both.

We should support viewing both the VehiclePositions message and TripUpdate message side-by-side if both types of feed are being monitored.

For example, below is an example of W003 that was logged for the MBTA feeds - it says that:

vehicle_id 10139 is in VehiclePositions but not in TripUpdates feed

I can see the VehiclePositions feed and confirm that vehicle_id 10139 is in the VehiclePositions feed, but I have no way of pulling up the TripUpdates feed to view the message and confirm that it wasn't included.

IMPORTANT - it's possible, and likely, that in the future VehiclePositions and TripUpdates entities may be mixed within the same message - in other words, a "combined feed" at the same URL, instead of a separate URL for TripUpdates and a different URL for VehiclePositions (see #85). Therefore, we should try to implement a solution that works both for feeds with two separated URLs, as well as combined feeds.

27916903-723a7d66-6238-11e7-886a-f7df1f20f47a

Steps to reproduce:

Start the validator Enter both MBTA VehiclePositions and TripUpdates feeds (and GTFS): GTFS - http://www.mbta.com/uploadedfiles/MBTA_GTFS.zip (~13.4MB) TripUpdates - http://developer.mbta.com/lib/GTRTFS/Alerts/TripUpdates.pb (~8.6MB) VehiclePositions - http://developer.mbta.com/lib/GTRTFS/Alerts/VehiclePositions.pb (~44KB) Look for an W003 or E047 error, and try to pull up the details for the TripUpdates and VehiclePositions feeds See #85 for possible combined feeds to test with.

Expected behavior:

If I'm monitoring two feeds (or a combined feed with both TripUpdates and VehiclePostions entities), I should be able to see both messages that were compared for rules like W003 and E047 side-by-side.

Observed behavior:

I can't view both the TripUpdate and VehiclePosition messages.