public void Raise_OwnEvent_HandledBySecond_NoFurtherCallbackExecuted() { string lastHandler = string.Empty; int numberOfHandlersExecuted = 0; _chained += (handler, e) => { numberOfHandlersExecuted++; lastHandler = "one"; }; _chained += (handler, e) => { numberOfHandlersExecuted++; lastHandler = "two"; e.Handled = true; }; _chained += (handler, e) => { numberOfHandlersExecuted++; lastHandler = "three"; }; var args = new ChainedEventArgs(); bool result = _chained.Raise(this, args); Assert.That(result, Is.True); Assert.That(args.Handled, Is.True); Assert.That(numberOfHandlersExecuted, Is.EqualTo(2)); Assert.That(lastHandler, Is.EqualTo("two")); }
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 Explore() { IValueEventArgs <int> value = new ValueEventArgs <int>(1); value = Args.Value(1); var multi = new MultiEventArgs <int, string>(1, "1"); multi = Args.Value(1, "1"); IMutableValueEventArgs <decimal> mutable = new MutableValueEventArgs <decimal> { Value = 1m }; mutable = Args.Mutable(1m); var changed = new PropertyValueChangedEventArgs <int>("prop", 2, 3); changed = Args.Changed("prop", 2, 3); var indexed = new ValueIndexChangedEventArgs <string>(2, "old", "new"); indexed = Args.Changed(2, "old", "new"); var changing = new PropertyValueChangingEventArgs <int>("prop", 2, 3); changing = Args.Changing("prop", 2, 3); var indexing = new ValueIndexChangingEventArgs <string>(2, "old", "new"); indexing = Args.Changing(2, "old", "new"); ICancelEventArgs cancel = new ValueIndexCancelEventArgs <string>(2, "value"); cancel = Args.Cancel(2, "value"); IIndexEventArgs index = new ValueIndexEventArgs <string>(2, "value"); index = Args.Index(2, "value"); IChainedEventArgs chained = new ChainedEventArgs(); chained = Args.Chained(); }
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)); }
internal bool OnChainedEvent(ChainedEventArgs args) { return(Event.Raise(this, args)); }