示例#1
0
 public void Array_Max_Error()
 {
     SingleSource.Merge(
         SingleSource.Error <int>(new InvalidOperationException()),
         SingleSource.Just(1)
         )
     .Test()
     .AssertFailure(typeof(InvalidOperationException));
 }
示例#2
0
 public void Array_Max_Error_Delayed()
 {
     SingleSource.Merge(true,
                        SingleSource.Just(1),
                        SingleSource.Error <int>(new InvalidOperationException()),
                        SingleSource.Just(2)
                        )
     .Test()
     .AssertFailure(typeof(InvalidOperationException), 1, 2);
 }
示例#3
0
 public void Array_Max_Null_Source()
 {
     SingleSource.Merge(
         SingleSource.Just(1),
         null,
         SingleSource.Just(2)
         )
     .Test()
     .AssertNotCompleted()
     .AssertError(typeof(NullReferenceException));
 }
示例#4
0
 public void Enumerable_Max_Error()
 {
     SingleSource.Merge(
         new List <ISingleSource <int> >()
     {
         SingleSource.Error <int>(new InvalidOperationException()),
         SingleSource.Just(1)
     }
         )
     .Test()
     .AssertFailure(typeof(InvalidOperationException));
 }
示例#5
0
 public void Array_Limited_Error()
 {
     for (int i = 1; i < 10; i++)
     {
         SingleSource.Merge(i,
                            SingleSource.Error <int>(new InvalidOperationException()),
                            SingleSource.Just(1)
                            )
         .Test()
         .AssertFailure(typeof(InvalidOperationException));
     }
 }
示例#6
0
 public void Enumerable_Max_Null_Source()
 {
     SingleSource.Merge(
         new List <ISingleSource <int> >()
     {
         SingleSource.Just(1),
         null,
         SingleSource.Just(2)
     }
         )
     .Test()
     .AssertNotCompleted()
     .AssertError(typeof(NullReferenceException));
 }
示例#7
0
 public void Array_Limited_Null_Source()
 {
     for (int i = 1; i < 10; i++)
     {
         SingleSource.Merge(i,
                            SingleSource.Just(1),
                            null,
                            SingleSource.Just(2)
                            )
         .Test()
         .AssertNotCompleted()
         .AssertError(typeof(NullReferenceException));
     }
 }
示例#8
0
 public void Enumerable_Limited_Error()
 {
     for (int i = 1; i < 10; i++)
     {
         SingleSource.Merge(
             new List <ISingleSource <int> >()
         {
             SingleSource.Error <int>(new InvalidOperationException()),
             SingleSource.Just(1)
         }, maxConcurrency: i
             )
         .Test()
         .AssertFailure(typeof(InvalidOperationException));
     }
 }
示例#9
0
 public void Enumerable_Limited_Error_Delayed()
 {
     for (int i = 1; i < 10; i++)
     {
         SingleSource.Merge(
             new List <ISingleSource <int> >()
         {
             SingleSource.Just(1),
             SingleSource.Error <int>(new InvalidOperationException()),
             SingleSource.Just(2)
         }, true, i
             )
         .Test()
         .AssertFailure(typeof(InvalidOperationException), 1, 2);
     }
 }
示例#10
0
 public void Enumerable_Limited_Null_Source()
 {
     for (int i = 1; i < 10; i++)
     {
         SingleSource.Merge(
             new List <ISingleSource <int> >()
         {
             SingleSource.Just(1),
             null,
             SingleSource.Just(2)
         }, maxConcurrency: i
             )
         .Test()
         .AssertNotCompleted()
         .AssertError(typeof(NullReferenceException));
     }
 }
示例#11
0
 public void Enumerable_Limited_MoveNext_Crash_DelayErrors()
 {
     SingleSource.Merge(new FailingEnumerable <ISingleSource <int> >(false, true, false), true, 1)
     .Test()
     .AssertFailure(typeof(InvalidOperationException));
 }
示例#12
0
 public void Enumerable_Limited_GetEnumerator_Crash()
 {
     SingleSource.Merge(new FailingEnumerable <ISingleSource <int> >(true, false, false), maxConcurrency: 1)
     .Test()
     .AssertFailure(typeof(InvalidOperationException));
 }
示例#13
0
 public void Enumerable_Max_MoveNext_Crash()
 {
     SingleSource.Merge(new FailingEnumerable <ISingleSource <int> >(false, true, false))
     .Test()
     .AssertFailure(typeof(InvalidOperationException));
 }
示例#14
0
 public void Enumerable_Max_GetEnumerator_Crash_DelayErrors()
 {
     SingleSource.Merge(new FailingEnumerable <ISingleSource <int> >(true, false, false), true)
     .Test()
     .AssertFailure(typeof(InvalidOperationException));
 }