public void throws_exception_if_attempt_to_attach_to_non_UIElement() { var trigger = new AttachedEventMessageTrigger { Message = _message, RoutedEvent = FakeElement.RoutedEvent }; _node.Expect(x => x.UIElement).Return(new DependencyObject()).Repeat.Twice(); trigger.Attach(_node); }
public void throws_exception_if_attempt_to_attach_to_non_UIElement() { Assert.Throws <CaliburnException>(() => { var trigger = new AttachedEventMessageTrigger { Message = message, RoutedEvent = FakeElement.RoutedEvent }; node.Expect(x => x.UIElement).Return(new DependencyObject()).Repeat.Twice(); trigger.Attach(node); }); }
public void can_trigger_message_processing() { var trigger = new AttachedEventMessageTrigger { Message = _message, RoutedEvent = FakeElement.RoutedEvent }; var args = new RoutedEventArgs(FakeElement.RoutedEvent, _element); _node.Expect(x => x.UIElement).Return(_element); _node.Expect(x => x.ProcessMessage(Arg<IRoutedMessage>.Is.Equal(_message), Arg<EventArgs>.Is.Equal(args))); trigger.Attach(_node); _element.RaiseEvent(args); }
public void can_attach_itself_to_an_element() { var trigger = new AttachedEventMessageTrigger { Message = _message, RoutedEvent = FakeElement.RoutedEvent }; _node.Expect(x => x.UIElement).Return(_element); trigger.Attach(_node); Assert.That(trigger.Node, Is.EqualTo(_node)); Assert.That(_message.InvalidatedHandler, Is.Not.Null); Assert.That(_message.InitializeCalledWith, Is.EqualTo(_node)); }
public void can_update_availability() { var trigger = new AttachedEventMessageTrigger { Message = message, RoutedEvent = FakeElement.RoutedEvent }; node.Expect(x => x.UIElement).Return(element); node.Expect(x => x.UIElement).Return(element); message.AvailabilityEffect.Expect(x => x.ApplyTo(element, false)); trigger.Attach(node); trigger.UpdateAvailabilty(false); }
public void can_trigger_message_processing() { var trigger = new AttachedEventMessageTrigger { Message = message, RoutedEvent = FakeElement.RoutedEvent }; var args = new RoutedEventArgs(FakeElement.RoutedEvent, element); node.Expect(x => x.UIElement).Return(element); node.Expect(x => x.ProcessMessage(Arg <IRoutedMessage> .Is.Equal(message), Arg <EventArgs> .Is.Equal(args))); trigger.Attach(node); element.RaiseEvent(args); }
public void can_attach_itself_to_an_element() { var trigger = new AttachedEventMessageTrigger { Message = message, RoutedEvent = FakeElement.RoutedEvent }; node.Expect(x => x.UIElement).Return(element); trigger.Attach(node); trigger.Node.ShouldBe(node); message.InvalidatedHandler.ShouldNotBeNull(); message.InitializeCalledWith.ShouldBe(node); }
public void can_update_availability() { var trigger = new AttachedEventMessageTrigger { Message = _message, RoutedEvent = FakeElement.RoutedEvent }; _node.Expect(x => x.UIElement).Return(_element); _node.Expect(x => x.UIElement).Return(_element); _message.AvailabilityEffect.Expect(x => x.ApplyTo(_element, false)); trigger.Attach(_node); trigger.UpdateAvailabilty(false); }