public void CanExecuteReturnsTrueWithoutCanExecuteDelegate() { var handlers = new DelegateHandlers(); var command = new RelayCommand(handlers.Execute); var condition = command.CanExecute(); Assert.True(condition); }
public void RaiseCanExecuteWithExceptionChangedNoRaiseCanExecuteChanged() { var handlers = new DelegateHandlers(); var command = new RelayCommand(handlers.Execute, () => true); var canExecuteChangedRaised = false; command.CanExecuteChanged += delegate { canExecuteChangedRaised = true; }; Assert.False(canExecuteChangedRaised); }
public void CanExecuteCallsPassedInCanExecuteDelegate() { var handlers = new DelegateHandlers(); var command = new RelayCommand(handlers.Execute, handlers.CanExecute); handlers.CanExecuteReturnValue = true; var actual = command.CanExecute(); Assert.AreEqual(handlers.CanExecuteReturnValue, actual); }
public void RaiseCanExecuteChangedRaisesCanExecuteChanged() { var canExecuteChangedRaised = false; var handlers = new DelegateHandlers(); var command = new RelayCommand(handlers.Execute, () => false); command.CanExecuteChanged += delegate { canExecuteChangedRaised = true; }; CommandManager.InvalidateRequerySuggested(); Dispatcher.CurrentDispatcher.Invoke(DispatcherPriority.Background, new Action(() => { })); Assert.True(canExecuteChangedRaised); }