public static Point<AriaCsvHit> parsePointFromAriaCsv(String rawCsvText) {

        AriaCsvHit ariaHit = AriaCsvHit.from(rawCsvText);

        Position pos = new Position(ariaHit.time(), ariaHit.latLong(), ariaHit.altitude());

        return new Point<>(pos, null, ariaHit.linkId(), ariaHit);
    }
@Test
    public void exampleParsing_failCorrectlyWhenOutOfBounds() {

        String rawCsv = ",,2018-03-24T14:41:09.371Z,vehicleIdNumber,42.9525,-83.7056,2700";

        Point<AriaCsvHit> pt = AriaCsvHits.parsePointFromAriaCsv(rawCsv);

        assertThat("The entire rawCsv text is accessible from the parsed point", pt.rawData().rawCsvText(), is(rawCsv));

        assertThrows(ArrayIndexOutOfBoundsException.class, () -> pt.rawData().token(7));
    }