public void CreateListenerTest() { const string eventName = "event Name"; bool succeeded = false; var listener = new CherryEventListener( eventName, ea => succeeded = true); listener.Handle(null); Assert.AreEqual(eventName, listener.ListenTo); listener.Handle(null); Assert.IsTrue(succeeded); }
public void EventsCollectionSimpleTest() { bool firstFired = false; bool secondFired = false; var eventsProvider = new TestEventsProvider(); CherryEventsCollection eventsCollection = new CherryEventsCollection(); eventsCollection.AddProvider(eventsProvider); bool subscribeResult; var listener1 = new CherryEventListener( eventName1, ea => firstFired = true); subscribeResult = eventsCollection.Subscribe(listener1); Assert.IsTrue(subscribeResult); var listener2 = new CherryEventListener( eventName2, ea => secondFired = true); subscribeResult = eventsCollection.Subscribe(listener2); Assert.IsTrue(subscribeResult); subscribeResult = eventsCollection.Subscribe(listener2); Assert.IsFalse(subscribeResult); Assert.IsFalse(firstFired); Assert.IsFalse(secondFired); eventsProvider.FireSecond(); Assert.IsFalse(firstFired); Assert.IsTrue(secondFired); eventsProvider.FireFirst(); Assert.IsTrue(firstFired); Assert.IsTrue(secondFired); }
public bool RemoveListener(CherryEventListener listener) { return(this.listeners.Remove(listener)); }
private void SubscribePomodoroEvents() { if (!this.EventsSubscribed) { this.EventsSubscribed = true; this.startedListener = new CherryEventListener( "Pomodoro Started", pea => { if (this.Started) { this.ScheduleSingleNotification(this.Now); } }); this.plugins.CherryEvents.Subscribe(this.startedListener); this.stoppedListener = new CherryEventListener( "Pomodoro Finished", pea => { if (this.Rung) { this.ScheduleSingleNotification(this.Now); } }); this.plugins.CherryEvents.Subscribe(this.stoppedListener); } }
public bool RemoveListener(CherryEventListener listener) { return this.listeners.Remove(listener); }