Skip to content

Commit d62c07a

Browse files
committed
✅ Add selectCalendar test
1 parent a03ef1f commit d62c07a

File tree

2 files changed

+32
-5
lines changed

2 files changed

+32
-5
lines changed

Sources/Refine/FiltersBefore.swift

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,14 +38,17 @@ class FiltersBefore {
3838

3939
static func selectCalendarTypes(types: [EKCalendarType]) -> ((EKEvent) -> Bool) {
4040
{ event in
41+
// if no selection, allow everything
42+
if types.isEmpty {
43+
return true
44+
}
45+
46+
// if event has no valid calendar, don't show
4147
if event.calendar == nil {
4248
return false
4349
}
44-
let id = event.calendar.type
45-
if types.contains(id) {
46-
return true
47-
}
48-
return false
50+
51+
return types.contains(event.calendar.type)
4952
}
5053
}
5154

Tests/FiltersBeforeTest.swift

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,4 +76,28 @@ final class FiltersBeforeTests: XCTestCase {
7676

7777
XCTAssertEqual(actual, expected, "The event was rejected")
7878
}
79+
80+
func testSelectCalendarTypesMatching() {
81+
let event = genEKEvent(calendar: eventStore.defaultCalendarForNewEvents)
82+
let expected = true
83+
let actual = FiltersBefore.selectCalendarTypes(types: [event.calendar.type])(event)
84+
85+
XCTAssertEqual(actual, expected, "The event was rejected")
86+
}
87+
88+
func testSelectCalendarTypesNotMatching() {
89+
let event = genEKEvent(calendar: eventStore.defaultCalendarForNewEvents)
90+
let expected = false
91+
let actual = FiltersBefore.selectCalendarTypes(types: [EKCalendarType.birthday])(event)
92+
93+
XCTAssertEqual(actual, expected, "The event was accepted")
94+
}
95+
96+
func testSelectCalendarTypesEmptyArray() {
97+
let event = genEKEvent(calendar: eventStore.defaultCalendarForNewEvents)
98+
let expected = true
99+
let actual = FiltersBefore.selectCalendarTypes(types: [])(event)
100+
101+
XCTAssertEqual(actual, expected, "The event was rejected")
102+
}
79103
}

0 commit comments

Comments
 (0)