public void ReceiveEventAfterEventChanged() { var behavior = new BehaviorMock { EventName = "TestEventA" }; var page = new PageMock(); page.Behaviors.Add(behavior); // ChangeEvent behavior.EventName = "TestEventB"; var eventArgs = new EventArgs(); page.RiseTestEventA(this, eventArgs); Assert.Null(behavior.Sender); Assert.Null(behavior.EventArgs); page.RiseTestEventB(this, eventArgs); Assert.NotNull(behavior.Sender); Assert.Equal(this, behavior.Sender); Assert.NotNull(behavior.EventArgs); Assert.Equal(eventArgs, behavior.EventArgs); }
public void ReceiveInteragtionRequest() { var request = new NotificationRequest(); var behavior = new BehaviorMock { NotificationRequest = request }; var page = new PageMock(); page.Behaviors.Add(behavior); request.Raise(); Assert.NotNull(behavior.Sender); Assert.Equal(request, behavior.Sender); Assert.NotNull(behavior.EventArgs); Assert.Equal(EventArgs.Empty, behavior.EventArgs); behavior.Sender = null; behavior.EventArgs = null; page.Behaviors.Clear(); request.Raise(); Assert.Null(behavior.Sender); Assert.Null(behavior.EventArgs); }
public void ReceiveInteragtionRequestAfterInteractionRequestChanged() { var requestA = new NotificationRequest(); var behavior = new BehaviorMock { NotificationRequest = requestA }; var page = new PageMock(); page.Behaviors.Add(behavior); var requestB = new NotificationRequest(); behavior.NotificationRequest = requestB; requestA.Raise(); Assert.Null(behavior.Sender); Assert.Null(behavior.EventArgs); requestB.Raise(); Assert.NotNull(behavior.Sender); Assert.Equal(requestB, behavior.Sender); Assert.NotNull(behavior.EventArgs); Assert.Equal(EventArgs.Empty, behavior.EventArgs); }
public void WhenNothingEventName() { var behavior = new BehaviorMock { EventName = "NothingEvent" }; var page = new PageMock(); var exception = Assert.Throws <NotImplementedException>(() => page.Behaviors.Add(behavior)); Assert.NotNull(exception); }
public void FromAttachToDettach() { var page = new ContentPage(); var contextObject = new object(); page.BindingContext = contextObject; var behavior = new BehaviorMock(); page.Behaviors.Add(behavior); Assert.NotNull(behavior.BindingContext); Assert.Equal(contextObject, behavior.BindingContext); page.Behaviors.Clear(); Assert.Null(behavior.BindingContext); }
public void HasOriginalBindingContedt() { var page = new ContentPage(); var contextObject = new object(); page.BindingContext = contextObject; var behavior = new BehaviorMock { BindingContext = new object() }; page.Behaviors.Add(behavior); Assert.NotNull(behavior.BindingContext); Assert.NotEqual(contextObject, behavior.BindingContext); page.BindingContext = new object(); Assert.NotEqual(page.BindingContext, behavior.BindingContext); page.Behaviors.Clear(); Assert.Null(behavior.BindingContext); }
public void ParentBindingContextChanged() { var page = new ContentPage(); var contextObject = new object(); var behavior = new BehaviorMock(); page.Behaviors.Add(behavior); Assert.Null(behavior.BindingContext); page.BindingContext = contextObject; Assert.NotNull(behavior.BindingContext); Assert.Equal(contextObject, behavior.BindingContext); page.BindingContext = null; Assert.Null(behavior.BindingContext); page.Behaviors.Clear(); // Chech removed event handler page.BindingContext = new object(); Assert.Null(behavior.BindingContext); }