ALinq.Tests.AsyncEnumerableGroupByTests.GroupByShouldWork C# (CSharp) Method

GroupByShouldWork() private method

private GroupByShouldWork ( ) : System.Threading.Tasks.Task
return System.Threading.Tasks.Task
        public async Task GroupByShouldWork()
        {
            var random  = new Random();
            var data    = Enumerable.Range(0, 1000).Select(i => random.Next(0, 20)).ToList();
            var groups  = data.GroupBy(i => i);

#pragma warning disable 1998
            var asyncGroups = await data.ToAsync().GroupBy(async i => i).ToList();
#pragma warning restore 1998

            Assert.AreEqual(groups.Count(),asyncGroups.Count());

            for( var i = 0; i < groups.Count(); ++i )
            {
                var group       = groups.ElementAt(i);
                var asyncGroup  = await asyncGroups.First(g => g.Key == group.Key).ToList();

                CollectionAssert.AreEqual((ICollection)group.ToList(),(ICollection)asyncGroup);
            }
        }
    }
AsyncEnumerableGroupByTests