public void AddProcessCommand_WhenCalled_CallsShowNew()
        {
            //Arrange
            var vm = new ProcessBuilderSysMenuExtensionViewModel();
            var processEditVMMock = Mock.Create<IProcessEditViewModel>();
            vm.ProcessEditVM = new Lazy<IProcessEditViewModel>(() => processEditVMMock);
            Mock.Arrange(()=>processEditVMMock.ShowNew(true)).MustBeCalled();
            
            //Act
            vm.AddProcessCommand.Execute(null);

            //Assert
            processEditVMMock.AssertAll();
        }        [TestMethod]
        public void OpenProcessCommand_WhenCalled_CallsShowSelected()
        {
            //Arrange
            var vm = new ProcessBuilderSysMenuExtensionViewModel();
            var processEditVMMock = Mock.Create<IProcessEditViewModel>();
            Mock.Arrange(() => processEditVMMock.ShowSelected(Arg.AnyInt, Arg.AnyBool, Arg.AnyBool, null)).MustBeCalled();
            vm.ProcessEditVM = new Lazy<IProcessEditViewModel>(() => processEditVMMock);
            
            //Act
            vm.OpenProcessCommand.Execute(new RecentEntry(2, "Entry", null));

            //Assert
            processEditVMMock.AssertAll();
        }
 public void PropertiesTest()
 {
     var vm = new ProcessBuilderSysMenuExtensionViewModel();
     TestsHelper.TestPublicDeclaredPropertiesGetSet(vm);
 }
        public void PushPinCommand_WhenCalledUnPinned_UnPinsEntry()
        {
            //Arrange
            var vm = new ProcessBuilderSysMenuExtensionViewModel();
            var recentEntryListMock  = Mock.Create<IRecentEntryList>();
            Mock.Arrange(() => recentEntryListMock.PushPin(Arg.IsAny<IRecentEntry>())).MustBeCalled();
            vm.ProcessBuilderRecentEntries = recentEntryListMock;
            
            //Act
            var entryMock = Mock.Create<IRecentEntry>();
            Mock.Arrange(() => entryMock.IsPinned).Returns(false);
            vm.PushPinCommand.Execute(entryMock);

            //Assert
            recentEntryListMock.AssertAll();
        }