105 lines
4.6 KiB
Python
105 lines
4.6 KiB
Python
# Copyright 2015 Amazon.com, Inc. or its affiliates. All Rights Reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"). You
|
|
# may not use this file except in compliance with the License. A copy of
|
|
# the License is located at
|
|
#
|
|
# https://aws.amazon.com/apache2.0/
|
|
#
|
|
# or in the "license" file accompanying this file. This file is
|
|
# distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF
|
|
# ANY KIND, either express or implied. See the License for the specific
|
|
# language governing permissions and limitations under the License.
|
|
from tests.unit.docs import BaseDocsTest
|
|
|
|
from boto3.docs.collection import CollectionDocumenter
|
|
|
|
|
|
class TestCollectionDocumenter(BaseDocsTest):
|
|
def test_document_collections(self):
|
|
collection_documenter = CollectionDocumenter(self.resource)
|
|
collection_documenter.document_collections(self.doc_structure)
|
|
self.assert_contains_lines_in_order([
|
|
'.. py:attribute:: samples',
|
|
' A collection of Sample resources.'
|
|
'A Sample Collection will include all resources by default, '
|
|
'and extreme caution should be taken when performing actions '
|
|
'on all resources.',
|
|
' .. py:method:: all()',
|
|
(' Creates an iterable of all Sample resources in the '
|
|
'collection.'),
|
|
' **Request Syntax** ',
|
|
' ::',
|
|
' sample_iterator = myservice.samples.all()',
|
|
' :rtype: list(:py:class:`myservice.Sample`)',
|
|
' :returns: A list of Sample resources',
|
|
' .. py:method:: filter(**kwargs)',
|
|
(' Creates an iterable of all Sample resources in '
|
|
'the collection filtered by kwargs passed to method.'
|
|
'A Sample collection will include all resources by default '
|
|
'if no filters are provided, and extreme caution should be '
|
|
'taken when performing actions on all resources'),
|
|
' **Request Syntax** ',
|
|
' ::',
|
|
' sample_iterator = myservice.samples.filter(',
|
|
" Foo='string',",
|
|
" Bar='string'",
|
|
' )',
|
|
' :type Foo: string',
|
|
' :param Foo: Documents Foo',
|
|
' :type Bar: string',
|
|
' :param Bar: Documents Bar',
|
|
' :rtype: list(:py:class:`myservice.Sample`)',
|
|
' :returns: A list of Sample resources',
|
|
' .. py:method:: limit(**kwargs)',
|
|
(' Creates an iterable up to a specified amount of '
|
|
'Sample resources in the collection.'),
|
|
' **Request Syntax** ',
|
|
' ::',
|
|
' sample_iterator = myservice.samples.limit(',
|
|
' count=123',
|
|
' )',
|
|
' :type count: integer',
|
|
(' :param count: The limit to the number of resources '
|
|
'in the iterable.'),
|
|
' :rtype: list(:py:class:`myservice.Sample`)',
|
|
' :returns: A list of Sample resources',
|
|
' .. py:method:: operate(**kwargs)',
|
|
' **Request Syntax** ',
|
|
' response = myservice.samples.operate(',
|
|
" Foo='string',",
|
|
" Bar='string'",
|
|
' )',
|
|
' :type Foo: string',
|
|
' :param Foo: Documents Foo',
|
|
' :type Bar: string',
|
|
' :param Bar: Documents Bar',
|
|
' :rtype: dict',
|
|
' :returns: ',
|
|
' **Response Syntax** ',
|
|
' ::',
|
|
' {',
|
|
" 'Foo': 'string',",
|
|
" 'Bar': 'string'",
|
|
' }',
|
|
' **Response Structure** ',
|
|
' - *(dict) --* ',
|
|
' - **Foo** *(string) --* Documents Foo',
|
|
' - **Bar** *(string) --* Documents Bar',
|
|
' .. py:method:: page_size(**kwargs)',
|
|
(' Creates an iterable of all Sample resources in the '
|
|
'collection, but limits the number of items returned by '
|
|
'each service call by the specified amount.'),
|
|
' **Request Syntax** ',
|
|
' ::',
|
|
'',
|
|
' sample_iterator = myservice.samples.page_size(',
|
|
' count=123',
|
|
' )',
|
|
' :type count: integer',
|
|
(' :param count: The number of items returned by '
|
|
'each service call'),
|
|
' :rtype: list(:py:class:`myservice.Sample`)',
|
|
' :returns: A list of Sample resources',
|
|
' '
|
|
]) |