public <T> Flux<T> readAllItems(
            final PartitionKey partitionKey, final CosmosQueryRequestOptions queryRequestOptions, final Class<T> itemType) {
        CosmosDbUtils.validateIfParameterIsNotEmpty(partitionKey, PARAM_PARTITION_KEY);
        CosmosDbUtils.validateIfParameterIsNotEmpty(itemType, PARAM_ITEM_TYPE);

        // a bug in Azure SDK, see: https://github.com/Azure/azure-sdk-for-java/issues/20743
        final CosmosQueryRequestOptions requestOptions
                = queryRequestOptions == null ? new CosmosQueryRequestOptions() : queryRequestOptions;
        return container
                .flatMapMany(container -> CosmosDbUtils.convertCosmosPagedFluxToFluxResults(
                        container.readAllItems(partitionKey, requestOptions, itemType)));
    }
@Test
    void readAllItems() {
        final CosmosDbContainerOperations operations
                = new CosmosDbContainerOperations(Mono.just(mock(CosmosAsyncContainer.class)));

        CosmosDbTestUtils.assertIllegalArgumentException(() -> operations.readAllItems(null, null, null));
        CosmosDbTestUtils.assertIllegalArgumentException(() -> operations.readAllItems(null, null, Object.class));
    }