public void Execute(object parameter)
 {
     if (CanExecute(parameter))
     {
         _problemViewModel.DeleteSelectedMaterial();
     }
 }
        public void DeleteSelectedMaterial_NullSelectedMaterial_ExpectNothingHappened()
        {
            //Arrange
            var problemViewModel  = new ProblemViewModel();
            var materialViewModel = problemViewModel.AddMaterial();

            problemViewModel.SelectedMaterial = null;

            //Act
            //Assert
            Assert.DoesNotThrow(() => problemViewModel.DeleteSelectedMaterial());
        }
        public void DeleteSelectedMaterial_SelectedMaterial_ExpectSelectedMaterialIsNull()
        {
            //Arrange
            var problemViewModel = new ProblemViewModel();

            problemViewModel.AddMaterial();

            //Act
            problemViewModel.DeleteSelectedMaterial();

            //Assert
            Assert.That(problemViewModel.SelectedMaterial, Is.Null);
        }
        public void DeleteSelectedMaterial_SelectedMaterial_ExpectMaterialRemovedFromCollection()
        {
            //Arrange
            var problemViewModel  = new ProblemViewModel();
            var materialViewModel = problemViewModel.AddMaterial();

            //Act
            problemViewModel.DeleteSelectedMaterial();

            //Assert
            var containsMaterial = problemViewModel.Materials.Contains(materialViewModel);

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