Beispiel #1
0
        public void CanExecuteReturnsTrueWithoutCanExecuteDelegate()
        {
            var handlers = new DelegateHandlers();
            var command  = new RelayCommand(handlers.Execute);

            var condition = command.CanExecute();

            Assert.True(condition);
        }
Beispiel #2
0
        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);
        }
Beispiel #3
0
        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);
        }
Beispiel #4
0
        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);
        }