public void Raise_EmptyRegistratinList_NoHandling() { var subject = new EventChainSubject(); var args = new ChainedEventArgs(); bool result = subject.OnChainedEvent(args); Assert.That(result, Is.False); Assert.That(args.Handled, Is.False); }
public void Raise_ExternalClassEvent_HandledBySecond_NoFurtherCallbackExecuted() { int numberOfHandlersExecuted = 0; var subject = new EventChainSubject(); subject.Event += (sender, e) => numberOfHandlersExecuted++; subject.Event += (sender, e) => { numberOfHandlersExecuted++; e.Handled = true; }; subject.Event += (sender, e) => numberOfHandlersExecuted++; var args = new ChainedEventArgs(); bool result = subject.OnChainedEvent(args); Assert.That(result, Is.True); Assert.That(args.Handled, Is.True); Assert.That(numberOfHandlersExecuted, Is.EqualTo(2)); }