hgraves
(hgraves)
1
at a glance, extremely unintuitive
protocol EKEventProtocol {
init(eventStore: EKEventStore)
}
extension EKEvent: EKEventProtocol {
override open var hasAttendees: Bool {
return false
}
}
class FakeEKEvent: EKEvent {
override open var hasAttendees: Bool {
return true
}
}
public class EventTests: XCTestCase {
func test_FakeEKEvent() {
var fakey: FakeEKEvent = FakeEKEvent(eventStore: .init())
fakey.title = "robots forever based freestyle"
XCTAssertTrue(fakey.title == "robots forever based freestyle", "title mismatch")
XCTAssertTrue(fakey.hasAttendees, "doesnt have attendee")
var faker: EKEvent = EKEvent(eventStore: .init())
faker.title = "love ya dru based freestyle"
XCTAssertTrue(faker.title == "love ya dru based freestyle", "title mismatch")
XCTAssertFalse(faker.hasAttendees, "has attendee")
}
}
hgraves
(hgraves)
2
It says it's open I must be missing something though. Anyone have any ideas for this one? I guess I can hit the initializer either way though haha :)
Anyone know if there are more fun ones like this?