public void FunctionalCommandReturnsTrueWhenNoCanExecuteDelegateIsSpecified() { var testTarget = new FunctionalCommand(() => { }); var actual = testTarget.CanExecute(null); Assert.AreEqual(true, actual); }
public void FunctionalCommandCallsExecuteDelegateOnExecute() { var numberOfCalls = 0; var testTarget = new FunctionalCommand(() => numberOfCalls++); testTarget.Execute(null); Assert.AreEqual(1, numberOfCalls); }
public void CanExecuteChangedIsRaisedWhenRaisePropertyChangedIsCalled() { var testTarget = new FunctionalCommand(() => { }); var numberOfCalls = 0; testTarget.CanExecuteChanged += (s, e) => numberOfCalls++; testTarget.RaiseCanExecuteChanged(); Assert.AreEqual(1, numberOfCalls); }
public void FunctionalCommandReturnsValueOfCanExecuteDelegateCorrectly() { var returnValue = false; // ReSharper disable once AccessToModifiedClosure // This is actually what I want here var testTarget = new FunctionalCommand(() => { }, () => returnValue); var actual = testTarget.CanExecute(null); Assert.AreEqual(false, actual); returnValue = true; actual = testTarget.CanExecute(null); Assert.AreEqual(true, actual); }