public void ProvideValueExceptions() { var stubServiceProvider = MockServiceProvider.Instance; var bindEvent = new BindEventHandler(); var viewModel = new _TestBindEventHandler(); bindEvent.Source = viewModel; // ReSharper disable AccessToModifiedClosure UnitTestInternal.AssertThrows(typeof(ArgumentException), () => bindEvent.ProvideValue(stubServiceProvider), // ReSharper restore AccessToModifiedClosure "ProvideValueExceptions - expected exception - ArgumentException"); bindEvent.PropertyName = "ButtonClickPropDelegate"; bindEvent.MethodName = "ButtonClick"; // ReSharper disable AccessToModifiedClosure UnitTestInternal.AssertThrows(typeof(ArgumentException), () => bindEvent.ProvideValue(stubServiceProvider), // ReSharper restore AccessToModifiedClosure "ProvideValueExceptions - expected exception - ArgumentException"); bindEvent.PropertyName = null; bindEvent.MethodName = null; stubServiceProvider = MockServiceProvider.Instance; UnitTestInternal.AssertThrows(typeof(ArgumentException), () => bindEvent.ProvideValue(stubServiceProvider), "ProvideValueExceptions - expected exception - ArgumentException"); }
public void BindEventHandlerConstructor() { const string source = "Source"; var bindEvent = new BindEventHandler(source); Assert.Equal(source, bindEvent.Source); }
public void BindEventHandlerByMethodName() { var stubServiceProvider = MockServiceProvider.Instance; var bindEvent = new BindEventHandler(); var viewModel = new _TestBindEventHandler(); bindEvent.Source = viewModel; bindEvent.MethodName = "ButtonClick"; var bindResolve = bindEvent.ProvideValue(stubServiceProvider); FakeTargetHandler += (RoutedEventHandler)bindResolve; FakeTargetHandler(null, null); Assert.Equal(viewModel.Count, int.MaxValue); FakeTargetHandler -= (RoutedEventHandler)bindResolve; }
public void AddEvents() { UIElement dependencyObject = new UIElement(); var bindEvent = new BindEventHandler(); var viewModel = new _TestBindEventHandler(); bindEvent.Source = viewModel; bindEvent.MethodName = "RoutedEventHandler"; bindEvent.TargetEventName = "GotFocus"; // rise event to the property BindXAML.ProcessAddEventItems(dependencyObject, bindEvent); RoutedEventArgs newEventArgs = new RoutedEventArgs(UIElement.GotFocusEvent); dependencyObject.RaiseEvent(newEventArgs); Assert.True(viewModel.EventCalled); }
public void AddPropertyChangeEvents() { ExecuteInStaMode.Invoke(() => { UIElement dependencyObject = new UIElement(); var bindEvent = new BindEventHandler(); var viewModel = new _TestBindEventHandlerChange(); bindEvent.Source = viewModel; bindEvent.MethodName = "EventHandler"; bindEvent.TargetPropertyName = "IsEnabled"; BindXAML.ProcessAddPropertyChangeEventItems(dependencyObject, bindEvent); // change the property dependencyObject.IsEnabled = false; Assert.True(viewModel.EventCalled, "Dependency property change event was not set"); }); }