From a7115ad39c2999dc1f27e1b2e1253278787c4f30 Mon Sep 17 00:00:00 2001 From: R Hirner Date: Tue, 6 Jan 2015 18:42:15 +0100 Subject: [PATCH] Loosen some restrictions * re-enable relaxed iCal unfolding and parsing + test * switch to BrowserCompatHostnameVerifier again to allow IP addresses in certificate CN --- .../assets/two-line-description-without-crlf.ics | 14 ++++++++++++++ .../at/bitfire/davdroid/resource/EventTest.java | 12 ++++++++---- app/src/main/AndroidManifest.xml | 2 +- .../main/java/at/bitfire/davdroid/Constants.java | 2 +- .../java/at/bitfire/davdroid/resource/Event.java | 10 ++++++++++ .../davdroid/webdav/TlsSniSocketFactory.java | 7 +++++-- app/src/main/java/ical4j.properties | 6 ------ 7 files changed, 39 insertions(+), 14 deletions(-) create mode 100644 app/src/androidTest/assets/two-line-description-without-crlf.ics delete mode 100644 app/src/main/java/ical4j.properties diff --git a/app/src/androidTest/assets/two-line-description-without-crlf.ics b/app/src/androidTest/assets/two-line-description-without-crlf.ics new file mode 100644 index 00000000..03c8b62e --- /dev/null +++ b/app/src/androidTest/assets/two-line-description-without-crlf.ics @@ -0,0 +1,14 @@ +BEGIN:VCALENDAR +VERSION:2.0 +PRODID:Blabla +BEGIN:VEVENT +CLASS:PUBLIC +CREATED;VALUE=DATE-TIME:20131008T205713 +LAST-MODIFIED;VALUE=DATE-TIME:20131008T205740 +SUMMARY:online Anmeldung +DESCRIPTION:http://www.tgbornheim.de/index.php?sessionid=&page=&id=&sportce + ntergroup=&day=6 +UID:b99c41704b +DTSTART;VALUE=DATE-TIME;TZID=Europe/Berlin:20131019T060000 +END:VEVENT +END:VCALENDAR diff --git a/app/src/androidTest/java/at/bitfire/davdroid/resource/EventTest.java b/app/src/androidTest/java/at/bitfire/davdroid/resource/EventTest.java index 61cad7fd..96da4c34 100644 --- a/app/src/androidTest/java/at/bitfire/davdroid/resource/EventTest.java +++ b/app/src/androidTest/java/at/bitfire/davdroid/resource/EventTest.java @@ -21,13 +21,11 @@ import at.bitfire.davdroid.resource.InvalidResourceException; public class EventTest extends InstrumentationTestCase { AssetManager assetMgr; - Event eViennaEvolution, - eOnThatDay, eAllDay1Day, eAllDay10Days, eAllDay0Sec; + Event eOnThatDay, eAllDay1Day, eAllDay10Days, eAllDay0Sec; public void setUp() throws IOException, InvalidResourceException { assetMgr = getInstrumentation().getContext().getResources().getAssets(); - eViennaEvolution = parseCalendar("vienna-evolution.ics"); eOnThatDay = parseCalendar("event-on-that-day.ics"); eAllDay1Day = parseCalendar("all-day-1day.ics"); eAllDay10Days = parseCalendar("all-day-10days.ics"); @@ -37,8 +35,9 @@ public class EventTest extends InstrumentationTestCase { } - public void testStartEndTimes() throws IOException, ParserException { + public void testStartEndTimes() throws IOException, ParserException, InvalidResourceException { // event with start+end date-time + Event eViennaEvolution = parseCalendar("vienna-evolution.ics"); assertEquals(1381330800000L, eViennaEvolution.getDtStartInMillis()); assertEquals("Europe/Vienna", eViennaEvolution.getDtStartTzID()); assertEquals(1381334400000L, eViennaEvolution.getDtEndInMillis()); @@ -116,6 +115,11 @@ public class EventTest extends InstrumentationTestCase { assert(true); } } + + public void testUnfolding() throws IOException, InvalidResourceException { + Event e = parseCalendar("two-line-description-without-crlf.ics"); + assertEquals("http://www.tgbornheim.de/index.php?sessionid=&page=&id=&sportcentergroup=&day=6", e.getDescription()); + } protected Event parseCalendar(String fname) throws IOException, InvalidResourceException { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index d34e161a..7bf96e5b 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,7 +1,7 @@