From 8b482b80f1c53f55dc6d9c42515cf7113d0da797 Mon Sep 17 00:00:00 2001 From: "andreas.schildbach" Date: Mon, 6 Sep 2010 10:22:56 +0000 Subject: [PATCH] parse weird message git-svn-id: https://public-transport-enabler.googlecode.com/svn/trunk@143 0924bc21-9374-b0fa-ee44-9ff1593b38f0 --- src/de/schildbach/pte/BahnProvider.java | 3 ++- test/de/schildbach/pte/BahnProviderTest.java | 13 +++++++++++++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/de/schildbach/pte/BahnProvider.java b/src/de/schildbach/pte/BahnProvider.java index 1e74ba22..165c09ec 100644 --- a/src/de/schildbach/pte/BahnProvider.java +++ b/src/de/schildbach/pte/BahnProvider.java @@ -450,7 +450,8 @@ public final class BahnProvider implements NetworkProvider + ">>\n\\s*(.+?)\\s*\n
\n" // destination + "(\\d{1,2}:\\d{2})" // time + "(?: (?:(pünktl\\.)|ca. \\+(\\d+)))?" // ontime, delay - + "(?:, ([^<]*))?" // (message) + + "(?: k\\.A\\.)?" // + + "(?:, ([^<]*))?" // message + "(?:(?:, )?(Gl\\. " + ParserUtils.P_PLATFORM + "))?" // position , Pattern.DOTALL); private static final Pattern P_DEPARTURES_URI_STATION_ID = Pattern.compile("input=(\\d+)"); diff --git a/test/de/schildbach/pte/BahnProviderTest.java b/test/de/schildbach/pte/BahnProviderTest.java index 21018db1..c515728e 100644 --- a/test/de/schildbach/pte/BahnProviderTest.java +++ b/test/de/schildbach/pte/BahnProviderTest.java @@ -78,6 +78,19 @@ public class BahnProviderTest + "07:02 ca. +5, Fährt heute nur bis Düsseldorf Hbf, Gl. 10"); } + @Test + public void departureWithWeirdMessage() + { + assertFineDepartures("" // + + "\n" // + + "ICE 609\n" // + + "\n" // + + ">>\n" // + + "Basel SBB\n" // + + "
\n" // + + "04:52 k.A., Gl. 3"); + } + private void assertFineConnectionDetails(String s) { Matcher m = BahnProvider.P_CONNECTION_DETAILS_FINE.matcher(s);