Example #1
0
        public void GivenAddedRoutedCommandHandlerWithCommand_WhenRoutedCommandExecuted_ThenCommandExecuted()
        {
            // Given
            var parameter = new object();

            var mocks   = new MockRepository();
            var command = mocks.StrictMock <ICommand>();

            command.Expect(c => c.CanExecute(parameter)).Return(true);
            command.Expect(c => c.Execute(parameter));
            mocks.ReplayAll();

            var frameworkElement           = new FrameworkElement();
            RoutedCommandHandlers handlers = RoutedCommandHandlers.GetCommands(frameworkElement);

            var routedCommand = new RoutedCommand();
            var handler       = new RoutedCommandHandler
            {
                RoutedCommand = routedCommand,
                Command       = command
            };

            handlers.Add(handler);

            // When
            routedCommand.Execute(parameter, frameworkElement);

            // Then
            mocks.VerifyAll();
        }
Example #2
0
        public void GivenHandlersFromFrameworkElement_WhenRoutedCommandHandlerAdded_ThenPropertiesRegisteredAsCommandBindingToFrameworkElement()
        {
            // Given
            var frameworkElement           = new FrameworkElement();
            RoutedCommandHandlers handlers = RoutedCommandHandlers.GetCommands(frameworkElement);

            // When
            var routedCommand = new RoutedCommand();
            var handler       = new RoutedCommandHandler
            {
                RoutedCommand = routedCommand
            };

            handlers.Add(handler);

            // Then
            Assert.AreEqual(1, handlers.Count);
            Assert.AreSame(routedCommand, handlers.First().RoutedCommand);
        }
Example #3
0
        public void GivenAddedRoutedCommandHandlerWithoutCommand_WhenRoutedCommandExecuted_ThenNoExceptionsAreThrown()
        {
            // Given
            var frameworkElement           = new FrameworkElement();
            RoutedCommandHandlers handlers = RoutedCommandHandlers.GetCommands(frameworkElement);

            var parameter = new object();

            var routedCommand = new RoutedCommand();
            var handler       = new RoutedCommandHandler
            {
                RoutedCommand = routedCommand
            };

            handlers.Add(handler);

            // When
            void Call() => routedCommand.Execute(parameter, frameworkElement);

            // Then
            Assert.DoesNotThrow(Call);
        }