Ver código fonte

Restore concat test for lazy eval

Oren Novotny 9 anos atrás
pai
commit
e4e38c6957
1 arquivos alterados com 9 adições e 3 exclusões
  1. 9 3
      Ix.NET/Source/Tests/AsyncTests.Multiple.cs

+ 9 - 3
Ix.NET/Source/Tests/AsyncTests.Multiple.cs

@@ -104,9 +104,15 @@ namespace Tests
         [Fact]
         public void Concat6()
         {
-            // Note: Concat does an eager traverse of the enumerables to build up
-            // its sequences. If the outer enumerable throws it'll trhow here.
-            AssertThrows<Exception>(() => AsyncEnumerable.Concat(ConcatXss()), ex_ => ex_.Message == "Bang!");
+            var res = AsyncEnumerable.Concat(ConcatXss());
+
+            var e = res.GetEnumerator();
+            HasNext(e, 1);
+            HasNext(e, 2);
+            HasNext(e, 3);
+            HasNext(e, 4);
+            HasNext(e, 5);
+            AssertThrows<Exception>(() => e.MoveNext().Wait(WaitTimeoutMs), ex_ => ((AggregateException)ex_).Flatten().InnerExceptions.Single().Message == "Bang!");
         }
 
         static IEnumerable<IAsyncEnumerable<int>> ConcatXss()