public async ValueTask ForEachAsync_ActionAt_With_ValidData_Must_Succeed(int[] source)
        {
            // Arrange
            var wrapped  = Wrap.AsAsyncValueEnumerable(source);
            var result   = new List <(int, int)>();
            var expected = new List <(int, int)>();

            System.Linq.EnumerableEx.ForEach(source, (item, index) => expected.Add((item, index)));

            // Act
            await AsyncValueEnumerable
            .ForEachAsync <Wrap.AsyncValueEnumerable <int>, Wrap.AsyncEnumerator <int>, int>(wrapped, (item, index, cancellationToken) => { result.Add((item, index)); return(new ValueTask()); });

            // Assert
            _ = result.Must()
                .BeEnumerableOf <(int, int)>()
                .BeEqualTo(expected);
        }