ALinq.Tests.AsyncEnumerableGroupJoinTests.GroupJoinShouldReduceValues C# (CSharp) Method

GroupJoinShouldReduceValues() private method

private GroupJoinShouldReduceValues ( ) : System.Threading.Tasks.Task
return System.Threading.Tasks.Task
        public async Task GroupJoinShouldReduceValues()
        {
#pragma warning disable 1998
            var sequence1 = AsyncEnumerable.Range(0, 10).Select(async i => Tuple.Create(i, i));
#pragma warning restore 1998
#pragma warning disable 1998
            var sequence2 = AsyncEnumerable.Range(0, 10).Select(async i => Tuple.Create(i,AsyncEnumerable.Range(i * 10,10)));
#pragma warning restore 1998

#pragma warning disable 1998
            var results = await sequence1.GroupJoin(sequence2, async i => i.Item1, async i => i.Item1, async (outer, group) =>
#pragma warning restore 1998
            {
#pragma warning disable 1998
                return Tuple.Create(outer.Item1, await group.SelectMany(async i => i.Item2).ToList());
#pragma warning restore 1998
            }).ToList();

            Assert.AreEqual(10,results.Count);

            foreach( var group in results )
            {
                CollectionAssert.AreEqual(Enumerable.Range(group.Item1 * 10,10).ToList(),group.Item2.ToList());
            }
        }
    }
AsyncEnumerableGroupJoinTests