Fixed tests for updated ical4j library (enabled compatibility mode for test)
Project: http://git-wip-us.apache.org/repos/asf/marmotta/repo Commit: http://git-wip-us.apache.org/repos/asf/marmotta/commit/bb46814d Tree: http://git-wip-us.apache.org/repos/asf/marmotta/tree/bb46814d Diff: http://git-wip-us.apache.org/repos/asf/marmotta/diff/bb46814d Branch: refs/heads/develop Commit: bb46814d97b3db10bed6c0ca8ce06c4115d6ab98 Parents: f94823e Author: Jakob Frank <[email protected]> Authored: Thu Dec 19 13:55:11 2013 +0100 Committer: Jakob Frank <[email protected]> Committed: Thu Dec 19 14:23:56 2013 +0100 ---------------------------------------------------------------------- .../commons/sesame/rio/ical/ICalFormat.java | 35 ++++++++++++++++++-- .../commons/sesame/rio/ical/ICalParser.java | 4 ++- .../commons/sesame/rio/ical/TestICalParser.java | 18 +++++++--- 3 files changed, 49 insertions(+), 8 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/marmotta/blob/bb46814d/commons/sesame-tools-rio-api/src/main/java/org/apache/marmotta/commons/sesame/rio/ical/ICalFormat.java ---------------------------------------------------------------------- diff --git a/commons/sesame-tools-rio-api/src/main/java/org/apache/marmotta/commons/sesame/rio/ical/ICalFormat.java b/commons/sesame-tools-rio-api/src/main/java/org/apache/marmotta/commons/sesame/rio/ical/ICalFormat.java index 555d648..9f130af 100644 --- a/commons/sesame-tools-rio-api/src/main/java/org/apache/marmotta/commons/sesame/rio/ical/ICalFormat.java +++ b/commons/sesame-tools-rio-api/src/main/java/org/apache/marmotta/commons/sesame/rio/ical/ICalFormat.java @@ -22,12 +22,43 @@ import java.nio.charset.Charset; import java.util.Arrays; /** - * Add file description here! + * ICal Format is using ical4j for parsing. * <p/> - * Author: Sebastian Schaffert + * If you encounter problems parsing iCal files, e.g. a {@link net.fortuna.ical4j.data.ParserException}, + * try enabling the relaxed/compatibility mode: + * <ul> + * <li>use {@link net.fortuna.ical4j.util.CompatibilityHints#setHintEnabled(String, boolean)}, or + * <li>create a file called {@code ical4j.properties} in the root of your classpath, or + * <li>specify a compatibility hint as {@code system property} + * </ul> + * + * @author Sebastian Schaffert + * @see http://wiki.modularity.net.au/ical4j/index.php?title=Compatibility */ public class ICalFormat { + /** + * ICal Format is using ical4j for parsing. + * <p/> + * If you encounter problems parsing iCal files, e.g. a {@link net.fortuna.ical4j.data.ParserException}, + * try enabling the relaxed/compatibility mode: + * <ul> + * <li>use {@link net.fortuna.ical4j.util.CompatibilityHints#setHintEnabled(String, boolean)}, or + * <li>create a file called {@code ical4j.properties} in the root of your classpath, or + * <li>specify a compatibility hint as {@code system property} + * </ul> + * <p/> + * Complete list of <strong>hints</strong> (valid settings: {@code true}/{@code false}): + * <ul> + * <li>{@code ical4j.unfolding.relaxed} + * <li>{@code ical4j.parsing.relaxed} + * <li>{@code ical4j.validation.relaxed} + * <li>{@code ical4j.compatibility.outlook} + * <li>{@code ical4j.compatibility.notes} + * </ul> + * + * @see http://wiki.modularity.net.au/ical4j/index.php?title=Compatibility + */ public static final RDFFormat FORMAT = new RDFFormat( "ICal", Arrays.asList("text/calendar"), http://git-wip-us.apache.org/repos/asf/marmotta/blob/bb46814d/commons/sesame-tools-rio-ical/src/main/java/org/apache/marmotta/commons/sesame/rio/ical/ICalParser.java ---------------------------------------------------------------------- diff --git a/commons/sesame-tools-rio-ical/src/main/java/org/apache/marmotta/commons/sesame/rio/ical/ICalParser.java b/commons/sesame-tools-rio-ical/src/main/java/org/apache/marmotta/commons/sesame/rio/ical/ICalParser.java index 16926cb..167cf35 100644 --- a/commons/sesame-tools-rio-ical/src/main/java/org/apache/marmotta/commons/sesame/rio/ical/ICalParser.java +++ b/commons/sesame-tools-rio-ical/src/main/java/org/apache/marmotta/commons/sesame/rio/ical/ICalParser.java @@ -54,7 +54,9 @@ import java.util.*; * data using the iCal vocabulary (http://www.w3.org/2002/12/cal/icaltzd, * http://www.w3.org/wiki/RdfCalendarDocumentation) * <p/> - * Author: Sebastian Schaffert + * @author Sebastian Schaffert + * @see http://wiki.modularity.net.au/ical4j/index.php + * @see http://wiki.modularity.net.au/ical4j/index.php?title=Compatibility */ public class ICalParser extends RDFParserBase { private static Logger log = LoggerFactory.getLogger(ICalParser.class); http://git-wip-us.apache.org/repos/asf/marmotta/blob/bb46814d/commons/sesame-tools-rio-ical/src/test/java/org/apache/marmotta/commons/sesame/rio/ical/TestICalParser.java ---------------------------------------------------------------------- diff --git a/commons/sesame-tools-rio-ical/src/test/java/org/apache/marmotta/commons/sesame/rio/ical/TestICalParser.java b/commons/sesame-tools-rio-ical/src/test/java/org/apache/marmotta/commons/sesame/rio/ical/TestICalParser.java index 961665f..09a1698 100644 --- a/commons/sesame-tools-rio-ical/src/test/java/org/apache/marmotta/commons/sesame/rio/ical/TestICalParser.java +++ b/commons/sesame-tools-rio-ical/src/test/java/org/apache/marmotta/commons/sesame/rio/ical/TestICalParser.java @@ -20,8 +20,14 @@ import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import static org.junit.Assume.assumeThat; +import java.io.InputStream; +import java.util.ArrayList; +import java.util.Collection; + +import net.fortuna.ical4j.util.CompatibilityHints; + import org.apache.commons.io.IOUtils; -import org.apache.marmotta.commons.sesame.rio.ical.ICalFormat; +import org.junit.BeforeClass; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runners.Parameterized; @@ -34,10 +40,6 @@ import org.openrdf.sail.memory.MemoryStore; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java.io.InputStream; -import java.util.ArrayList; -import java.util.Collection; - /** * Add file description here! * <p/> @@ -61,6 +63,12 @@ public class TestICalParser { list.add(new Object[] { "vacation" }); return list; } + + @BeforeClass + public static void beforeClass() { + // The test files contain old date format: + CompatibilityHints.setHintEnabled(CompatibilityHints.KEY_RELAXED_PARSING, true); + }
