public void Execute(object parameter)
 {
     if (CanExecute(parameter))
     {
         _problemViewModel.DeleteSelectedForce();
     }
 }
        public void DeleteSelectedForce_SelectedForce_ExpectSelectedForceIsNull()
        {
            //Arrange
            var problemViewModel = new ProblemViewModel();

            problemViewModel.AddNode();

            //Act
            problemViewModel.DeleteSelectedForce();

            //Assert
            Assert.That(problemViewModel.SelectedForce, Is.Null);
        }
        public void DeleteSelectedForce_NullSelectedForce_ExpectNothingHappened()
        {
            //Arrange
            var problemViewModel = new ProblemViewModel();
            var nodeViewModel    = problemViewModel.AddNode();
            var forceViewModel   = problemViewModel.AddForce(nodeViewModel);

            problemViewModel.SelectedForce = null;

            //Act
            //Assert
            Assert.DoesNotThrow(() => problemViewModel.DeleteSelectedForce());
        }
        public void DeleteSelectedForce_SelectedForce_ExpectForceRemovedFromCollection()
        {
            //Arrange
            var problemViewModel = new ProblemViewModel();
            var nodeViewModel    = problemViewModel.AddNode();
            var forceViewModel   = problemViewModel.AddForce(nodeViewModel);

            //Act
            problemViewModel.DeleteSelectedForce();

            //Assert
            var containsForce = problemViewModel.Forces.Contains(forceViewModel);

            Assert.That(containsForce, Is.False);
        }