public void ExecuteCallsPassedInExecuteDelegate() { var handlers = new AsyncDelegateObjectHandlers(); using var waitHandle = new EventWaitHandle(false, EventResetMode.AutoReset); var command = new global::Anori.WinUI.Commands.AsyncRelayCommand <object>(async o => { await handlers.Execute(o); waitHandle.Set(); }) as ICommand; var parameter = new object(); command.Execute(parameter); waitHandle.WaitOne(); Assert.AreSame(parameter, handlers.ExecuteParameter); }
public void WhenConstructedWithGenericTypeIsNonNullableValueType_Throws() { ICommand command = new global::Anori.WinUI.Commands.AsyncRelayCommand <int>(async o => await Task.Yield(), exception => { }); Assert.Throws <InvalidCastException>(() => { command.Execute(new object()); }); }