Skip to content

Commit a0fb39e

Browse files
committed
Test: Introduce file-based recurrence test cases with an example test.
1 parent d5ad3a5 commit a0fb39e

File tree

4 files changed

+14
-1
lines changed

4 files changed

+14
-1
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
# Monday to Friday
2+
RRULE:FREQ=WEEKLY;BYDAY=MO,TH;COUNT=3
3+
DTSTART:20241024
4+
INSTANCES:20241024,20241028,20241031

Ical.Net.Tests/Ical.Net.Tests.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
<ProjectReference Include="..\Ical.Net\Ical.Net.csproj" />
1818
</ItemGroup>
1919
<ItemGroup>
20-
<EmbeddedResource Include="Calendars\**\*.ics" />
20+
<EmbeddedResource Include="Calendars\**\*" />
2121
</ItemGroup>
2222
<ItemGroup>
2323
<EmbeddedResource Include="contrib\libical\icalrecur_test.out" />

Ical.Net.Tests/IcsFiles.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -159,6 +159,8 @@ internal static string ReadStream(string manifestResource)
159159
internal static string YearlyCountByYearDay1 => ReadStream("Ical.Net.Tests.Calendars.Recurrence.YearlyCountByYearDay1.ics");
160160
internal static string YearlyInterval1 => ReadStream("Ical.Net.Tests.Calendars.Recurrence.YearlyInterval1.ics");
161161

162+
internal static string RecurrrenceTestCases => ReadStream("Ical.Net.Tests.Calendars.Recurrence.RecurrenceTestCases.txt");
163+
162164
internal static string LibicalIcalrecurTest => ReadStream("Ical.Net.Tests.contrib.libical.icalrecur_test.out");
163165

164166
}

Ical.Net.Tests/RecurrenceTests.cs

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3758,6 +3758,13 @@ private static IEnumerable<RecurrenceTestCase> TestLibicalTestCasesSource
37583758
public void TestLibicalTestCases(RecurrenceTestCase testCase)
37593759
=> ExecuteRecurrenceTestCase(testCase);
37603760

3761+
private static IEnumerable<RecurrenceTestCase> TestFileBasedRecurrenceTestCaseSource
3762+
=> ParseTestCaseFile(IcsFiles.RecurrrenceTestCases);
3763+
3764+
[TestCaseSource(nameof(TestFileBasedRecurrenceTestCaseSource))]
3765+
public void TestFileBasedRecurrenceTestCase(RecurrenceTestCase testCase)
3766+
=> ExecuteRecurrenceTestCase(testCase);
3767+
37613768
public void ExecuteRecurrenceTestCase(RecurrenceTestCase testCase)
37623769
{
37633770
Calendar cal = new Calendar();

0 commit comments

Comments
 (0)