Exemplo n.º 1
0
        public void Navigate_WhenCalledOnSameNode_DoesNotRaiseEvent()
        {
            bool eventRaised = false;
            NodeChangedEventHandler handler = (sender, node) => eventRaised = true;

            try
            {
                var mockedFactory     = new Mock <INodeFactory>();
                var mockedNodeContext = new Mock <INodeContext>();
                var mockedNode        = new Mock <INode>();
                mockedFactory.Setup(nodeFactory => nodeFactory.CreateNode(It.IsAny <INodeContext>())).Returns(
                    mockedNode.Object);
                UIFramework.Instance.Navigate(mockedFactory.Object, mockedNodeContext.Object);
                UIFramework.Instance.NodeChangedEvent += handler;
                UIFramework.Instance.Navigate(mockedFactory.Object, mockedNodeContext.Object);
                Assert.IsFalse(eventRaised);
            }
            finally
            {
                UIFramework.Instance.NodeChangedEvent -= handler;
            }
        }
Exemplo n.º 2
0
        public void Navigate_GivenNodeWhenCalled_RaisesNodeChangedEventAfterNodeChanging()
        {
            bool eventRaised = false;
            NodeChangingEventHandler handler             = (sender, node) => eventRaised = true;
            NodeChangedEventHandler  changedEventHandler = (sender, node) => Assert.IsTrue(eventRaised);

            UIFramework.Instance.NodeChangingEvent += handler;
            UIFramework.Instance.NodeChangedEvent  += changedEventHandler;
            try
            {
                var mockedNodeFactory = new Mock <INodeFactory>();
                var mockedNodeContext = new Mock <INodeContext>();
                var mockedNode        = new Mock <INode>();
                mockedNodeFactory.Setup(nodeFactory => nodeFactory.CreateNode(It.IsAny <INodeContext>())).Returns(
                    mockedNode.Object);
                UIFramework.Instance.Navigate(mockedNodeFactory.Object, mockedNodeContext.Object);
                UIFramework.Instance.Navigate(mockedNodeFactory.Object, mockedNodeContext.Object);
            }
            finally
            {
                UIFramework.Instance.NodeChangingEvent -= handler;
                UIFramework.Instance.NodeChangedEvent  -= changedEventHandler;
            }
        }