public async Task CanRunWithKey() { var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <CommandWithKeyAsyncHandler>(); var tasqR = new TasqR(handlerResolver); var cmd = new CommandWithKeyAsync(); int initialCount = cmd.Keys.Count; bool allAreTrue = true; int callCount = 0; var result = await tasqR.RunAsync(cmd); foreach (var item in result) { callCount++; if (!item) { allAreTrue = false; } } Assert.AreEqual(initialCount, callCount); Assert.IsTrue(allAreTrue); }
public async Task CanRunWithReturn() { var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <TestCmdWithReturnForAsyncHandler>(); var tasqR = new TasqR(handlerResolver); var cmd = new TestCmdWithReturnForAsync(2); var result = await tasqR.RunAsync(cmd); Assert.AreEqual(3, result); }
public void CanRunWithKeyBaseType() { var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <CommandWithKeyHandler>(); var tasqR = new TasqR(handlerResolver); var instance = Activator.CreateInstance(typeof(CommandWithKey)); tasqR.Run((ITasq <int, bool>)instance); Assert.IsTrue(((CommandWithKey)instance).AllAreCorrect); }
public void CanRunWithKey() { var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <CommandWithKeyHandler>(); var tasqR = new TasqR(handlerResolver); var cmd = new CommandWithKey(); tasqR.Run(cmd); Assert.IsTrue(cmd.AllAreCorrect); }
public void CanRunWithReturnForAsyncHandler() { int startNumber = 8; var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <TestCmdWithReturnForAsyncHandler>(); var tasqR = new TasqR(handlerResolver); var cmd = new TestCmdWithReturnForAsync(startNumber); int finalNumber = tasqR.Run(cmd); Assert.AreEqual(9, finalNumber); }
public void CanRunWithReturn() { int startNumber = 8; var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <SampleCommandWithReturnHandler>(); var tasqR = new TasqR(handlerResolver); var cmd = new SampleCommandWithReturn(startNumber); int finalNumber = tasqR.Run(cmd); Assert.AreEqual(9, finalNumber); }
public void CanRunWithKeyForAsyncHandlerBaseType() { var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <CommandWithKeyAsyncHandler>(); var tasqR = new TasqR(handlerResolver); var instance = (ITasq)Activator.CreateInstance(typeof(CommandWithKeyAsync)); tasqR.Run(instance); Assert.IsTrue(true); }
public async Task CanRunWithoutReturn() { var testModel = new Test3Model { StartNumber = 10 }; var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <CommandWithAsyncWithoutReturnHandler>(); var tasqR = new TasqR(handlerResolver); var cmd = new CommandWithAsyncWithoutReturn(testModel); await tasqR.RunAsync(cmd); Assert.AreEqual(11, testModel.StartNumber); }
public void CanRunWithoutReturn() { var testModel = new TestModel { SampleNumber = 10 }; var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <SampleCommandWithoutReturnHandler>(); var tasqR = new TasqR(handlerResolver); var cmd = new SampleCommandWithoutReturn(testModel); tasqR.Run(cmd); Assert.AreEqual(11, testModel.SampleNumber); }
public async Task WillThrowExceptionFromAsyncHandler() { try { var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <TestWithErrorCmdHandler>(); var tasqR = new TasqR(handlerResolver); var cmd = new TestWithErrorCmd(); await tasqR.RunAsync(cmd); } catch (AggregateException ex) { throw ex.GetBaseException(); } }
public void CannotRunDefaultCmdWithHandlerWithNoParamlessConstructor() { try { var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <CmdHandlerWithNoParamlessCtorHandler>(); var tasqR = new TasqR(handlerResolver); var cmd = new CmdHandlerWithNoParamlessCtor(); tasqR.Run(cmd); } catch (Exception ex) { Assert.IsTrue(ex.Message.StartsWith("No parameterless constructor defined for type")); throw; } }
public async Task CanRunWithKeyBaseType() { var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <CommandWithKeyAsyncHandler>(); var tasqR = new TasqR(handlerResolver); var instance = (ITasq <int, bool>)Activator.CreateInstance(typeof(CommandWithKeyAsync)); bool allAreTrue = true; foreach (var item in await tasqR.RunAsync(instance)) { if (!item) { allAreTrue = false; } } Assert.IsTrue(allAreTrue); }
public void CanRunWithKeyForAsyncHandler() { var handlerResolver = new TasqHandlerResolver(); handlerResolver.Register <CommandWithKeyAsyncHandler>(); var tasqR = new TasqR(handlerResolver); var cmd = new CommandWithKeyAsync(); bool allAreTrue = true; foreach (var item in tasqR.Run(cmd)) { if (!item) { allAreTrue = false; } } Assert.IsTrue(allAreTrue); }