From 11f8d247d1b6c6cf6fd26fbdc07d114a5eab7861 Mon Sep 17 00:00:00 2001 From: Mike Angstadt Date: Thu, 16 Feb 2023 21:12:12 -0500 Subject: [PATCH] Add unit test for Issue 124 https://github.com/mangstadt/biweekly/issues/124 --- src/test/java/biweekly/issues/Issue124.java | 46 +++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 src/test/java/biweekly/issues/Issue124.java diff --git a/src/test/java/biweekly/issues/Issue124.java b/src/test/java/biweekly/issues/Issue124.java new file mode 100644 index 00000000..2817711e --- /dev/null +++ b/src/test/java/biweekly/issues/Issue124.java @@ -0,0 +1,46 @@ +package biweekly.issues; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNull; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import org.junit.Test; + +import biweekly.ICalVersion; +import biweekly.io.ParseContext; +import biweekly.io.scribe.property.RecurrenceRuleScribe; +import biweekly.parameter.ICalParameters; +import biweekly.property.RecurrenceRule; +import biweekly.util.Recurrence; + +/** + * @author Michael Angstadt + * @see "https://github.com/mangstadt/biweekly/issues/124" + */ +public class Issue124 { + @Test + public void test() throws Exception { + String input = "INVALID"; + Recurrence recur = parseRecurrence(input); + + Map> expectedXRules = new HashMap>(); + List values = new ArrayList(); + values.add(""); + expectedXRules.put(input, values); + + assertNull(recur.getFrequency()); + assertEquals(expectedXRules, recur.getXRules()); + } + + private Recurrence parseRecurrence(String input) { + RecurrenceRuleScribe scribe = new RecurrenceRuleScribe(); + ParseContext context = new ParseContext(); + context.setVersion(ICalVersion.V2_0); + RecurrenceRule rrule = scribe.parseText(input, null, new ICalParameters(), context); + return rrule.getValue(); + } +}