コード例 #1
0
        public void TestRemoveChild()
        {
            //arrange
            var child = new Mock <IExplorerItemViewModel>();

            child.SetupGet(it => it.AllowResourceCheck).Returns(true);
            child.SetupGet(it => it.IsVisible).Returns(true);
            _target.Children = new ObservableCollection <IExplorerItemViewModel>()
            {
                child.Object
            };
            var isChildrenChanged = false;

            _target.PropertyChanged += (s, e) =>
            {
                isChildrenChanged = isChildrenChanged || e.PropertyName == "Children";
            };

            //act
            _target.RemoveChild(child.Object);

            //assert
            Assert.IsFalse(_target.Children.Any());
            Assert.IsTrue(isChildrenChanged);
        }