protected void Initialize(int[] array)
        {
            this.array = array;
            memory     = array.AsMemory();

            enumerableReference      = enumerableValue = Wrap.AsEnumerable(array);
            collectionReference      = collectionValue = Wrap.AsCollection(array);
            listReference            = listValue = Wrap.AsList(array);
            asyncEnumerableReference = asyncEnumerableValue = Wrap.AsAsyncEnumerable(array);
        }
示例#2
0
        public void AsAsyncValueEnumerable_With_ValidData_Must_Succeed(int[] source)
        {
            // Arrange
            var wrapped = Wrap
                          .AsAsyncEnumerable(source);

            // Act
            var result = AsyncEnumerable
                         .AsAsyncValueEnumerable(wrapped);

            // Assert
            _ = result.Must()
                .BeAsyncEnumerableOf <int>()
                .BeEqualTo(source);
        }
        public void AsAsyncValueEnumerable_GetEnumerator_With_ValidData_Must_Succeed(int[] source)
        {
            // Arrange
            var wrapped = Wrap
                          .AsAsyncEnumerable(source);

            // Act
            var result = AsyncEnumerableExtensions
                         .AsAsyncValueEnumerable <Wrap.AsyncEnumerableWrapper <int>, Wrap.AsyncEnumerator <int>, int>(wrapped, (enumerable, _) => enumerable.GetAsyncEnumerator());

            // Assert
            _ = result.Must()
                .BeAsyncEnumerableOf <int>()
                .BeEqualTo(source);
        }
示例#4
0
        public void AsAsyncValueEnumerable1_With_ValidData_Must_Succeed(int[] source)
        {
            // Arrange
            var wrapped = Wrap
                          .AsAsyncEnumerable(source);

            // Act
            var result = wrapped
                         .AsAsyncValueEnumerable();

            // Assert
            _ = result.Must()
                .BeOfType <AsyncEnumerableExtensions.AsyncValueEnumerable <Wrap.AsyncEnumerableWrapper <int>, Wrap.AsyncEnumerator <int>, Wrap.AsyncEnumerator <int>, int, Wrap.AsyncEnumerableWrapper <int> .GetAsyncEnumeratorFunction, Wrap.AsyncEnumerableWrapper <int> .GetAsyncEnumeratorFunction> >()
                .BeAsyncEnumerableOf <int>()
                .BeEqualTo(source);
        }
示例#5
0
        public async ValueTask AsAsyncValueEnumerable_With_ToArrayAsync_Must_Succeed(int[] source)
        {
            // Arrange
            var wrapped = Wrap
                          .AsAsyncEnumerable(source);
            var expected =
                System.Linq.Enumerable.ToArray(source);

            // Act
            var result = await AsyncEnumerable
                         .AsAsyncValueEnumerable <int>(wrapped)
                         .ToArrayAsync();

            // Assert
            _ = result.Must()
                .BeArrayOf <int>()
                .BeEqualTo(expected);
        }
示例#6
0
        public async ValueTask AsAsyncValueEnumerable1_Sum_With_ValidData_Must_Succeed(int[] source)
        {
            // Arrange
            var wrapped = Wrap
                          .AsAsyncEnumerable(source);
            var expected = source
                           .Sum();

            // Act
            var result = await wrapped
                         .AsAsyncValueEnumerable()
                         .SumAsync()
                         .ConfigureAwait(false);

            // Assert
            _ = result.Must()
                .BeEqualTo(expected);
        }
        public async ValueTask AsAsyncValueEnumerable_With_ToListAsync_Must_Succeed(int[] source)
        {
            // Arrange
            var wrapped = Wrap
                          .AsAsyncEnumerable(source);
            var expected = Enumerable
                           .ToList(source);

            // Act
            var result = await AsyncEnumerableExtensions
                         .AsAsyncValueEnumerable <int>(wrapped)
                         .ToListAsync();

            // Assert
            _ = result.Must()
                .BeOfType <List <int> >()
                .BeEnumerableOf <int>()
                .BeEqualTo(expected);
        }
示例#8
0
        public async ValueTask ToListAsync_With_ValidData_Must_Succeed(int[] source)
        {
            // Arrange
            var wrapped = Wrap
                          .AsAsyncEnumerable(source);
            var expected =
                System.Linq.Enumerable.ToList(source);

            // Act
            var result = await AsyncEnumerable
                         .AsAsyncValueEnumerable <int>(wrapped)
                         .ToListAsync();

            // Assert
            _ = result.Must()
                .BeOfType <List <int> >()
                .BeEnumerableOf <int>()
                .BeEqualTo(expected);
        }
        public async ValueTask AsAsyncValueEnumerable6_Sum_With_ValidData_Must_Succeed(int[] source)
        {
            // Arrange
            var wrapped = Wrap
                          .AsAsyncEnumerable(source);
            var expected = source
                           .Sum();

            // Act
            var result = await wrapped
                         .AsAsyncValueEnumerable <Wrap.AsyncEnumerableWrapper <int>, Wrap.AsyncEnumerator <int>, AsyncValueEnumerator <int>, int>(
                (enumerable, _) => enumerable.GetAsyncEnumerator(),
                (enumerable, cancellationToken) => new AsyncValueEnumerator <int>(((IAsyncEnumerable <int>)enumerable).GetAsyncEnumerator(cancellationToken)))
                         .SumAsync()
                         .ConfigureAwait(false);

            // Assert
            _ = result.Must()
                .BeEqualTo(expected);
        }
        public void AsAsyncValueEnumerable6_Enumerator2_With_ValidData_Must_Succeed(int[] source)
        {
            // Arrange
            var wrapped = Wrap
                          .AsAsyncEnumerable(source);

            // Act
            var result = wrapped
                         .AsAsyncValueEnumerable <Wrap.AsyncEnumerableWrapper <int>, Wrap.AsyncEnumerator <int>,
                                                  AsyncValueEnumerator <int>, int>(
                (enumerable, _) => enumerable.GetAsyncEnumerator(),
                (enumerable, cancellationToken) =>
                new AsyncValueEnumerator <int>(
                    ((IAsyncEnumerable <int>)enumerable).GetAsyncEnumerator(cancellationToken)));

            // Assert
            _ = result.Must()
                .BeAsyncEnumerableOf <int>()
                .BeEqualTo(source);
        }