public void TestInvokeWithValueParameter() { var rectangle = new Rectangle(); var trigger = new EventToCommand(); ((IAttachedObject)trigger).Attach(rectangle); const string ParameterSent = "Hello world"; var vm = new TestViewModel(); var binding = new Binding { Source = vm.ParameterCommand }; #if SILVERLIGHT trigger.Command = binding; #else BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); #endif trigger.CommandParameterValue = ParameterSent; trigger.Invoke(); Assert.IsTrue(vm.CommandExecuted); Assert.AreEqual(ParameterSent, vm.ParameterReceived); }
public void TestInvokeWithEventArgsAndNoParameter() { var trigger = new EventToCommandStub(); var rectangle = new Rectangle(); ((IAttachedObject)trigger).Attach(rectangle); trigger.PassEventArgsToCommand = true; var vm = new TestViewModel(); var binding = new Binding { Source = vm.CommandWithEventArgs }; #if SL3 trigger.Command = binding; #else BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); #endif var args = new StringEventArgs("StringEventArgs"); trigger.InvokeWithEventArgs(args); Assert.IsTrue(vm.CommandExecuted); Assert.AreEqual(args.Parameter, vm.ParameterReceived); }
public void TestInvokeWithoutParameter() { var trigger = new EventToCommand(); var rectangle = new Rectangle(); ((IAttachedObject)trigger).Attach(rectangle); var vm = new TestViewModel(); var binding = new Binding { Source = vm.SimpleCommand }; BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); trigger.Invoke(); Assert.IsTrue(vm.CommandExecuted); }
public void TestInvokeWithValueParameterNull() { var rectangle = new Rectangle(); var trigger = new EventToCommandStub(); ((IAttachedObject)trigger).Attach(rectangle); var vm = new TestViewModel(); var binding = new Binding { Source = vm.ParameterCommand }; BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); trigger.CommandParameterValue = null; trigger.InvokeWithEventArgs(new StringEventArgs("Test")); Assert.IsTrue(vm.CommandExecuted); Assert.AreEqual(null, vm.ParameterReceived); }
public void TestInvokeWithEventArgsAndBoundParameterAndConverterAndConverterParameter() { var trigger = new EventToCommandStub(); var rectangle = new Rectangle(); ((IAttachedObject)trigger).Attach(rectangle); const string prefix = "Test"; trigger.PassEventArgsToCommand = true; trigger.EventArgsConverter = new TestEventArgsConverter { TestPrefix = prefix }; trigger.EventArgsConverterParameter = "Suffix"; var vm = new TestViewModel(); var binding = new Binding { Source = vm.ParameterCommand }; var textBox = new TextBox { Text = "BoundParameter" }; var bindingParameter = new Binding { Source = textBox, Path = new PropertyPath("Text") }; BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); BindingOperations.SetBinding(trigger, EventToCommand.CommandParameterProperty, bindingParameter); var args = new StringEventArgs("StringEventArgs"); trigger.InvokeWithEventArgs(args); Assert.IsTrue(vm.CommandExecuted); Assert.AreEqual(textBox.Text, vm.ParameterReceived); }
public void TestInvokeWithEventArgsAndParameterValueAndConverter() { var trigger = new EventToCommandStub(); var rectangle = new Rectangle(); ((IAttachedObject)trigger).Attach(rectangle); const string prefix = "Test"; trigger.PassEventArgsToCommand = true; trigger.EventArgsConverter = new TestEventArgsConverter { TestPrefix = prefix }; var vm = new TestViewModel(); var binding = new Binding { Source = vm.ParameterCommand }; BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); const string commandParameter = "CommandParameter"; trigger.CommandParameterValue = commandParameter; var args = new StringEventArgs("StringEventArgs"); trigger.InvokeWithEventArgs(args); Assert.IsTrue(vm.CommandExecuted); Assert.AreEqual(commandParameter, vm.ParameterReceived); }
public void TestInvokeSimpleCommandWithEventArgsAndConverterAndConverterParameter() { var trigger = new EventToCommandStub(); var rectangle = new Rectangle(); ((IAttachedObject)trigger).Attach(rectangle); const string prefix = "Test"; trigger.PassEventArgsToCommand = true; trigger.EventArgsConverter = new TestEventArgsConverter { TestPrefix = prefix }; trigger.EventArgsConverterParameter = "Suffix"; var vm = new TestViewModel(); var binding = new Binding { Source = vm.SimpleCommand }; #if SL3 trigger.Command = binding; #else BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); #endif var args = new StringEventArgs("StringEventArgs"); trigger.InvokeWithEventArgs(args); Assert.IsTrue(vm.CommandExecuted); Assert.AreEqual(null, vm.ParameterReceived); }
public void TestInvokeWithBoundParameter() { var rectangle = new Rectangle(); var trigger = new EventToCommand(); ((IAttachedObject)trigger).Attach(rectangle); const string ParameterSent = "Hello world"; var vm = new TestViewModel(); var bindingCommand = new Binding { Source = vm.ParameterCommand }; var textBox = new TextBox { Text = ParameterSent }; var bindingParameter = new Binding { Source = textBox, Path = new PropertyPath("Text") }; #if SILVERLIGHT trigger.Command = bindingCommand; trigger.CommandParameter = bindingParameter; #else BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, bindingCommand); BindingOperations.SetBinding(trigger, EventToCommand.CommandParameterProperty, bindingParameter); #endif trigger.Invoke(); Assert.IsTrue(vm.CommandExecuted); Assert.AreEqual(ParameterSent, vm.ParameterReceived); }
public void TestInvokeWithEventArgsAndBoundParameter() { var trigger = new EventToCommandStub(); var rectangle = new Rectangle(); ((IAttachedObject)trigger).Attach(rectangle); trigger.PassEventArgsToCommand = true; var vm = new TestViewModel(); var binding = new Binding { Source = vm.ParameterCommand }; var textBox = new TextBox { Text = "BoundParameter" }; var bindingParameter = new Binding { Source = textBox, Path = new PropertyPath("Text") }; #if SILVERLIGHT trigger.Command = binding; trigger.CommandParameter = bindingParameter; #else BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); BindingOperations.SetBinding(trigger, EventToCommand.CommandParameterProperty, bindingParameter); #endif var args = new StringEventArgs("StringEventArgs"); trigger.InvokeWithEventArgs(args); Assert.IsTrue(vm.CommandExecuted); Assert.AreEqual(textBox.Text, vm.ParameterReceived); }
public void TestEnableAndDisableControlWithBoundParameter() { var trigger = new EventToCommand { MustToggleIsEnabledValue = true }; var button = new Button(); ((IAttachedObject)trigger).Attach(button); var vm = new TestViewModel(); var binding = new Binding { Source = vm.ToggledCommandWithParameter }; var textBox = new TextBox { Text = "Hel" }; var bindingParameter = new Binding { Source = textBox, Path = new PropertyPath("Text") }; #if SILVERLIGHT trigger.Command = binding; trigger.CommandParameter = bindingParameter; #else BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); BindingOperations.SetBinding(trigger, EventToCommand.CommandParameterProperty, bindingParameter); #endif Assert.IsFalse(button.IsEnabled); trigger.Invoke(); Assert.IsFalse(vm.CommandExecuted); textBox.Text = "Hello world"; #if SILVERLIGHT // Invoking CommandManager from unit tests fails in WPF Assert.IsTrue(button.IsEnabled); trigger.Invoke(); Assert.IsTrue(vm.CommandExecuted); #endif }
public void TestEnableAndDisableControlWithValueParameter() { var trigger = new EventToCommand { MustToggleIsEnabledValue = true }; var button = new Button(); ((IAttachedObject)trigger).Attach(button); var vm = new TestViewModel(); var binding = new Binding { Source = vm.ToggledCommandWithParameter }; trigger.CommandParameterValue = "Hel"; #if SILVERLIGHT trigger.Command = binding; #else BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); #endif Assert.IsFalse(button.IsEnabled); trigger.Invoke(); Assert.IsFalse(vm.CommandExecuted); trigger.CommandParameterValue = "Hello world"; Assert.IsTrue(button.IsEnabled); trigger.Invoke(); Assert.IsTrue(vm.CommandExecuted); }
public void TestDisableCommandAndRectangle() { var trigger = new EventToCommand { MustToggleIsEnabledValue = true }; var rectangle = new Rectangle(); ((IAttachedObject)trigger).Attach(rectangle); var vm = new TestViewModel(); var binding = new Binding { Source = vm.ToggledCommand }; vm.EnableToggledCommand = false; #if SILVERLIGHT trigger.Command = binding; #else BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); #endif #if !SILVERLIGHT Assert.IsFalse(rectangle.IsEnabled); #endif trigger.Invoke(); Assert.IsFalse(vm.CommandExecuted); }
public void TestEnableCommandAndControl() { var trigger = new EventToCommand { MustToggleIsEnabledValue = true }; var button = new Button { IsEnabled = false }; ((IAttachedObject)trigger).Attach(button); var vm = new TestViewModel(); var binding = new Binding { Source = vm.ToggledCommand }; vm.EnableToggledCommand = true; #if SILVERLIGHT trigger.Command = binding; #else BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); #endif Assert.IsTrue(button.IsEnabled); trigger.Invoke(); Assert.IsTrue(vm.CommandExecuted); }
public void TestEnableCommandAndRectangle() { var trigger = new EventToCommand { MustToggleIsEnabledValue = true }; #if DOTNET var rectangle = new Rectangle { IsEnabled = false }; #else var rectangle = new Rectangle(); #endif ((IAttachedObject)trigger).Attach(rectangle); var vm = new TestViewModel(); var binding = new Binding { Source = vm.ToggledCommand }; vm.EnableToggledCommand = true; BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); #if DOTNET Assert.IsTrue(rectangle.IsEnabled); #endif trigger.Invoke(); Assert.IsTrue(vm.CommandExecuted); }
public void TestDisableCommandOnly() { var trigger = new EventToCommand(); var rectangle = new Rectangle(); ((IAttachedObject)trigger).Attach(rectangle); var vm = new TestViewModel(); var binding = new Binding { Source = vm.ToggledCommand }; vm.EnableToggledCommand = true; BindingOperations.SetBinding(trigger, EventToCommand.CommandProperty, binding); trigger.Invoke(); Assert.IsTrue(vm.CommandExecuted); vm.CommandExecuted = false; vm.EnableToggledCommand = false; trigger.Invoke(); Assert.IsFalse(vm.CommandExecuted); }