public Task Null_Selector_With_ResultSelector_Throws() { return(Assert.ThrowsAsync <ArgumentNullException>( AssertionUtilities.SelectorName, () => StringTask.FlatMap((Func <string, Task <string> >)null, (s, y) => y) )); }
public Task Void_Task_OverLoad_Null_Selector_Throws() { return(Assert.ThrowsAsync <ArgumentNullException>( AssertionUtilities.SelectorName, () => StringTask.FlatMap((Func <Task <string> >)null) )); }
public Task Void_Task_OverLoad_Null_Selector_Throws_With_ResultSelector() { return(Assert.ThrowsAsync <ArgumentNullException>( AssertionUtilities.SelectorName, () => StringTask.FlatMap(null, () => "") )); }
public Task Void_Task_OverLoad_Null_ResultSelector_Throws_With_Single_ResultSelector() { return(Assert.ThrowsAsync <ArgumentNullException>( AssertionUtilities.ResultSelector, () => StringTask.FlatMap(() => Task.FromResult("foo"), (Func <string>)null) )); }
public async Task String_Task_FlatMap_Void_Task_With_ResultSelector() { var flatMapped = StringTask.FlatMap(s => VoidTask, s => s + 1); Assert.Equal(0, _flatMapCounter); Assert.Equal("Hello1", await flatMapped); Assert.Equal(1, _flatMapCounter); }
public async Task <ActionResult <string> > GetStringValue() { var task = StringTask.GetDtoTaskAsync(); var taskResult = await task; var taskOk = Ok(task); return(Ok(taskResult)); }
public async Task String_Task_FlatMap_String_Task() { var flatMapped = await StringTask.FlatMap(async s => { await Task.Delay(100); return(s + "World"); }); Assert.Equal("HelloWorld", flatMapped); }
public async Task String_Task_FlatMap_Void_Task() { var flatMapped = StringTask.FlatMap(s => VoidTask); Assert.Equal(0, _flatMapCounter); await flatMapped; Assert.Equal(1, _flatMapCounter); }
public async Task String_Task_FlatMap_String_Task_With_ResultSelector() { var flatMapped = await StringTask .FlatMap(async s => { await VoidTask; return(s + "World"); }, (s, s1) => s + s1); Assert.Equal("HelloHelloWorld", flatMapped); }
public async Task String_Task_Assign_Variable_In_Outer_Scope() { var stringLength = 0; var task = StringTask.Do(s => stringLength = s.Length); Assert.Equal(0, stringLength); var str = await task; Assert.Equal(str.Length, stringLength); }
public Task String_Task_Null_Action_Throws() { Action <string> action = null; return(Assert.ThrowsAsync <ArgumentNullException>(() => StringTask.Do(action))); }
public Task Null_Action_Throws() => Assert.ThrowsAsync <ArgumentNullException>(AssertionUtilities.ActionParamName, () => StringTask.Do(null) );