示例#1
0
 public void A_Sum_must_work_when_using_Source_RunSum()
 {
     this.AssertAllStagesStopped(() =>
     {
         var t = InputSource.RunSum((i, i1) => i + i1, Materializer);
         t.Wait(TimeSpan.FromSeconds(3)).Should().BeTrue();
         t.Result.Should().Be(Expected);
     }, Materializer);
 }
示例#2
0
        public void A_Sum_must_complete_task_with_failure_when_reduce_function_throws_and_the_supervisor_strategy_decides_to_stop()
        {
            this.AssertAllStagesStopped(() =>
            {
                var error = new TestException("test");
                var task  = InputSource.RunSum((x, y) =>
                {
                    if (x > 50)
                    {
                        throw error;
                    }
                    return(x + y);
                }, Materializer);

                task.Invoking(t => t.Wait(TimeSpan.FromSeconds(3))).ShouldThrow <TestException>().WithMessage("test");
            }, Materializer);
        }