public void when_parent_is_deactivated_child_is_activated()
        {
            var parent = new StubISupportActivationState(new Mock<ILog>().Object, new Mock<IDispatcherService>().Object) as ISupportActivationState;
            parent.Activate();
            Assert.That(parent.IsActive, Is.True);

            var child = new StubISupportActivationState(new Mock<ILog>().Object, new Mock<IDispatcherService>().Object) as ISupportActivationState;
            child.Activate();
            Assert.That(child.IsActive, Is.True);

            parent.SyncViewModelActivationStates(child);

            parent.DeActivate();

            Assert.That(parent.IsActive, Is.False);
            Assert.That(child.IsActive, Is.False);
        }
        public void when_parent_is_deactivated_child_is_activated()
        {
            var parent = new StubISupportActivationState(new Mock <ILog>().Object, new Mock <IDispatcherService>().Object) as ISupportActivationState;

            parent.Activate();
            Assert.That(parent.IsActive, Is.True);

            var child = new StubISupportActivationState(new Mock <ILog>().Object, new Mock <IDispatcherService>().Object) as ISupportActivationState;

            child.Activate();
            Assert.That(child.IsActive, Is.True);

            parent.SyncViewModelActivationStates(child);

            parent.DeActivate();

            Assert.That(parent.IsActive, Is.False);
            Assert.That(child.IsActive, Is.False);
        }