diff --git a/sdk/search/azure-search-documents/azure/search/documents/_service/_indexes_client.py b/sdk/search/azure-search-documents/azure/search/documents/_service/_indexes_client.py index b410e57b5c8a..35af04afb31c 100644 --- a/sdk/search/azure-search-documents/azure/search/documents/_service/_indexes_client.py +++ b/sdk/search/azure-search-documents/azure/search/documents/_service/_indexes_client.py @@ -13,6 +13,7 @@ ResourceModifiedError, ResourceNotModifiedError, ) +from azure.core.paging import ItemPaged from ._generated import SearchServiceClient as _SearchServiceClient from ._generated.models import AccessCondition @@ -68,8 +69,8 @@ def close(self): return self._client.close() @distributed_trace - def get_indexes(self, **kwargs): - # type: (**Any) -> List[Index] + def list_indexes(self, **kwargs): + # type: (**Any) -> ItemPaged[Index] """List the indexes in an Azure Search service. :return: List of indexes @@ -78,9 +79,14 @@ def get_indexes(self, **kwargs): """ kwargs["headers"] = self._merge_client_headers(kwargs.get("headers")) - result = self._client.indexes.list(**kwargs) - indexes = [listize_flags_for_index(x) for x in result.indexes] - return indexes + + def get_next(_token): + return self._client.indexes.list(**kwargs) + + def extract_data(response): + return None, [listize_flags_for_index(x) for x in response.indexes] + + return ItemPaged(get_next=get_next, extract_data=extract_data) @distributed_trace def get_index(self, index_name, **kwargs): diff --git a/sdk/search/azure-search-documents/azure/search/documents/_service/aio/_indexes_client.py b/sdk/search/azure-search-documents/azure/search/documents/_service/aio/_indexes_client.py index a795254166be..072809eac216 100644 --- a/sdk/search/azure-search-documents/azure/search/documents/_service/aio/_indexes_client.py +++ b/sdk/search/azure-search-documents/azure/search/documents/_service/aio/_indexes_client.py @@ -13,6 +13,8 @@ ResourceModifiedError, ResourceNotModifiedError, ) +from azure.core.async_paging import AsyncItemPaged + from .._generated.aio import SearchServiceClient as _SearchServiceClient from .._generated.models import AccessCondition from .._utils import ( @@ -67,8 +69,8 @@ async def close(self): return await self._client.close() @distributed_trace_async - async def get_indexes(self, **kwargs): - # type: (**Any) -> List[Index] + async def list_indexes(self, **kwargs): + # type: (**Any) -> AsyncItemPaged[Index] """List the indexes in an Azure Search service. :return: List of indexes @@ -77,9 +79,14 @@ async def get_indexes(self, **kwargs): """ kwargs["headers"] = self._merge_client_headers(kwargs.get("headers")) - result = await self._client.indexes.list(**kwargs) - indexes = [listize_flags_for_index(x) for x in result.indexes] - return indexes + + async def get_next(_token): + return await self._client.indexes.list(**kwargs) + + async def extract_data(response): + return None, [listize_flags_for_index(x) for x in response.indexes] + + return AsyncItemPaged(get_next=get_next, extract_data=extract_data) @distributed_trace_async async def get_index(self, index_name, **kwargs): diff --git a/sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_get_indexes.yaml b/sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_list_indexes.yaml similarity index 94% rename from sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_get_indexes.yaml rename to sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_list_indexes.yaml index 59882c88aabd..63005c66aa8d 100644 --- a/sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_get_indexes.yaml +++ b/sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_list_indexes.yaml @@ -7,28 +7,28 @@ interactions: User-Agent: - azsdk-python-search-documents/1.0.0b3 Python/3.7.3 (Darwin-19.3.0-x86_64-i386-64bit) api-key: - - A91A928F6A2FA00CA24FBF09F8E0F248 + - A9CBF5767E80C2B514C0B33B2517CE06 method: GET - uri: https://search537b1079.search.windows.net/indexes?api-version=2019-05-06-Preview + uri: https://search651710f5.search.windows.net/indexes?api-version=2019-05-06-Preview response: body: - string: '{"@odata.context":"https://search537b1079.search.windows.net/$metadata#indexes","value":[{"@odata.etag":"\"0x8D7E6371F70709D\"","name":"drgqefsg","defaultScoringProfile":null,"fields":[{"name":"hotelId","type":"Edm.String","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":true,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"hotelName","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"description","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"en.lucene","synonymMaps":[]},{"name":"descriptionFr","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"fr.lucene","synonymMaps":[]},{"name":"category","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"tags","type":"Collection(Edm.String)","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"parkingIncluded","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"smokingAllowed","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"lastRenovationDate","type":"Edm.DateTimeOffset","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"rating","type":"Edm.Int32","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"location","type":"Edm.GeographyPoint","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"address","type":"Edm.ComplexType","fields":[{"name":"streetAddress","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"city","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"stateProvince","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"country","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"postalCode","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]}]},{"name":"rooms","type":"Collection(Edm.ComplexType)","fields":[{"name":"description","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"en.lucene","synonymMaps":[]},{"name":"descriptionFr","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"fr.lucene","synonymMaps":[]},{"name":"type","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"baseRate","type":"Edm.Double","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"bedOptions","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"sleepsCount","type":"Edm.Int32","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"smokingAllowed","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"tags","type":"Collection(Edm.String)","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]}]}],"scoringProfiles":[{"name":"nearest","functionAggregation":"sum","text":null,"functions":[{"fieldName":"location","interpolation":"linear","type":"distance","boost":2.0,"freshness":null,"magnitude":null,"distance":{"referencePointParameter":"myloc","boostingDistance":100.0},"tag":null}]}],"corsOptions":null,"suggesters":[{"name":"sg","searchMode":"analyzingInfixMatching","sourceFields":["description","hotelName"]}],"analyzers":[],"tokenizers":[],"tokenFilters":[],"charFilters":[],"encryptionKey":null,"similarity":null}]}' + string: '{"@odata.context":"https://search651710f5.search.windows.net/$metadata#indexes","value":[{"@odata.etag":"\"0x8D7EC653D0B32E3\"","name":"drgqefsg","defaultScoringProfile":null,"fields":[{"name":"hotelId","type":"Edm.String","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":true,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"hotelName","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"description","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"en.lucene","synonymMaps":[]},{"name":"descriptionFr","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"fr.lucene","synonymMaps":[]},{"name":"category","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"tags","type":"Collection(Edm.String)","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"parkingIncluded","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"smokingAllowed","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"lastRenovationDate","type":"Edm.DateTimeOffset","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"rating","type":"Edm.Int32","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"location","type":"Edm.GeographyPoint","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"address","type":"Edm.ComplexType","fields":[{"name":"streetAddress","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"city","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"stateProvince","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"country","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"postalCode","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]}]},{"name":"rooms","type":"Collection(Edm.ComplexType)","fields":[{"name":"description","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"en.lucene","synonymMaps":[]},{"name":"descriptionFr","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"fr.lucene","synonymMaps":[]},{"name":"type","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"baseRate","type":"Edm.Double","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"bedOptions","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"sleepsCount","type":"Edm.Int32","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"smokingAllowed","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"tags","type":"Collection(Edm.String)","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]}]}],"scoringProfiles":[{"name":"nearest","functionAggregation":"sum","text":null,"functions":[{"fieldName":"location","interpolation":"linear","type":"distance","boost":2.0,"freshness":null,"magnitude":null,"distance":{"referencePointParameter":"myloc","boostingDistance":100.0},"tag":null}]}],"corsOptions":null,"suggesters":[{"name":"sg","searchMode":"analyzingInfixMatching","sourceFields":["description","hotelName"]}],"analyzers":[],"tokenizers":[],"tokenFilters":[],"charFilters":[],"encryptionKey":null,"similarity":null}]}' headers: cache-control: no-cache content-encoding: gzip content-length: '1115' content-type: application/json; odata.metadata=minimal - date: Tue, 21 Apr 2020 21:01:15 GMT - elapsed-time: '67' + date: Wed, 29 Apr 2020 17:46:29 GMT + elapsed-time: '107' expires: '-1' odata-version: '4.0' pragma: no-cache preference-applied: odata.include-annotations="*" - request-id: 3c7c6ba8-8413-11ea-8200-8c8590507855 + request-id: 5b1e6226-8a41-11ea-8887-8c8590507855 strict-transport-security: max-age=15724800; includeSubDomains vary: Accept-Encoding status: code: 200 message: OK - url: https://search537b1079.search.windows.net/indexes?api-version=2019-05-06-Preview + url: https://search651710f5.search.windows.net/indexes?api-version=2019-05-06-Preview version: 1 diff --git a/sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_get_indexes_empty.yaml b/sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_list_indexes_empty.yaml similarity index 67% rename from sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_get_indexes_empty.yaml rename to sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_list_indexes_empty.yaml index 698a81d30842..03753efaeb1f 100644 --- a/sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_get_indexes_empty.yaml +++ b/sdk/search/azure-search-documents/tests/async_tests/recordings/test_service_live_async.test_list_indexes_empty.yaml @@ -7,28 +7,28 @@ interactions: User-Agent: - azsdk-python-search-documents/1.0.0b3 Python/3.7.3 (Darwin-19.3.0-x86_64-i386-64bit) api-key: - - 8EF48D0D22E6D1402067CD5723AF595D + - F316DA23BDD39E0E455EAA819B171956 method: GET - uri: https://searchbee91307.search.windows.net/indexes?api-version=2019-05-06-Preview + uri: https://searchd36d1383.search.windows.net/indexes?api-version=2019-05-06-Preview response: body: - string: '{"@odata.context":"https://searchbee91307.search.windows.net/$metadata#indexes","value":[]}' + string: '{"@odata.context":"https://searchd36d1383.search.windows.net/$metadata#indexes","value":[]}' headers: cache-control: no-cache content-encoding: gzip - content-length: '199' + content-length: '200' content-type: application/json; odata.metadata=minimal - date: Tue, 21 Apr 2020 21:01:23 GMT - elapsed-time: '33' + date: Wed, 29 Apr 2020 17:46:36 GMT + elapsed-time: '41' expires: '-1' odata-version: '4.0' pragma: no-cache preference-applied: odata.include-annotations="*" - request-id: 411a8118-8413-11ea-8200-8c8590507855 + request-id: 5f7b383a-8a41-11ea-8887-8c8590507855 strict-transport-security: max-age=15724800; includeSubDomains vary: Accept-Encoding status: code: 200 message: OK - url: https://searchbee91307.search.windows.net/indexes?api-version=2019-05-06-Preview + url: https://searchd36d1383.search.windows.net/indexes?api-version=2019-05-06-Preview version: 1 diff --git a/sdk/search/azure-search-documents/tests/async_tests/test_service_live_async.py b/sdk/search/azure-search-documents/tests/async_tests/test_service_live_async.py index 3a16619b6fa9..f3bca40032a2 100644 --- a/sdk/search/azure-search-documents/tests/async_tests/test_service_live_async.py +++ b/sdk/search/azure-search-documents/tests/async_tests/test_service_live_async.py @@ -68,18 +68,24 @@ class SearchIndexesClientTest(AzureMgmtTestCase): @ResourceGroupPreparer(random_name_enabled=True) @SearchServicePreparer() - async def test_get_indexes_empty(self, api_key, endpoint, **kwargs): + async def test_list_indexes_empty(self, api_key, endpoint, **kwargs): client = SearchServiceClient(endpoint, AzureKeyCredential(api_key)).get_indexes_client() - result = await client.get_indexes() - assert len(result) == 0 + result = await client.list_indexes() + + with pytest.raises(StopAsyncIteration): + await result.__anext__() @ResourceGroupPreparer(random_name_enabled=True) @SearchServicePreparer(schema=SCHEMA, index_batch=BATCH) - async def test_get_indexes(self, api_key, endpoint, index_name, **kwargs): + async def test_list_indexes(self, api_key, endpoint, index_name, **kwargs): client = SearchServiceClient(endpoint, AzureKeyCredential(api_key)).get_indexes_client() - result = await client.get_indexes() - assert len(result) == 1 - assert result[0].name == index_name + result = await client.list_indexes() + + first = await result.__anext__() + assert first.name == index_name + + with pytest.raises(StopAsyncIteration): + await result.__anext__() @ResourceGroupPreparer(random_name_enabled=True) @SearchServicePreparer(schema=SCHEMA, index_batch=BATCH) @@ -103,8 +109,9 @@ async def test_delete_indexes(self, api_key, endpoint, index_name, **kwargs): import time if self.is_live: time.sleep(TIME_TO_SLEEP) - result = await client.get_indexes() - assert len(result) == 0 + result = await client.list_indexes() + with pytest.raises(StopAsyncIteration): + await result.__anext__() @ResourceGroupPreparer(random_name_enabled=True) @SearchServicePreparer(schema=SCHEMA, index_batch=BATCH) diff --git a/sdk/search/azure-search-documents/tests/recordings/test_service_live.test_get_indexes.yaml b/sdk/search/azure-search-documents/tests/recordings/test_service_live.test_get_indexes.yaml deleted file mode 100644 index 1af053a2b35e..000000000000 --- a/sdk/search/azure-search-documents/tests/recordings/test_service_live.test_get_indexes.yaml +++ /dev/null @@ -1,48 +0,0 @@ -interactions: -- request: - body: null - headers: - Accept: - - application/json;odata.metadata=minimal - Accept-Encoding: - - gzip, deflate - Connection: - - keep-alive - User-Agent: - - azsdk-python-search-documents/1.0.0b3 Python/3.7.3 (Darwin-19.3.0-x86_64-i386-64bit) - api-key: - - 60EC5C7635A4C22E1FB63E1654F5F9E6 - method: GET - uri: https://searchf5ca0dfc.search.windows.net/indexes?api-version=2019-05-06-Preview - response: - body: - string: '{"@odata.context":"https://searchf5ca0dfc.search.windows.net/$metadata#indexes","value":[{"@odata.etag":"\"0x8D7E637140B0913\"","name":"drgqefsg","defaultScoringProfile":null,"fields":[{"name":"hotelId","type":"Edm.String","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":true,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"hotelName","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"description","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"en.lucene","synonymMaps":[]},{"name":"descriptionFr","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"fr.lucene","synonymMaps":[]},{"name":"category","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"tags","type":"Collection(Edm.String)","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"parkingIncluded","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"smokingAllowed","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"lastRenovationDate","type":"Edm.DateTimeOffset","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"rating","type":"Edm.Int32","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"location","type":"Edm.GeographyPoint","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"address","type":"Edm.ComplexType","fields":[{"name":"streetAddress","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"city","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"stateProvince","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"country","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"postalCode","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]}]},{"name":"rooms","type":"Collection(Edm.ComplexType)","fields":[{"name":"description","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"en.lucene","synonymMaps":[]},{"name":"descriptionFr","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"fr.lucene","synonymMaps":[]},{"name":"type","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"baseRate","type":"Edm.Double","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"bedOptions","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"sleepsCount","type":"Edm.Int32","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"smokingAllowed","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"tags","type":"Collection(Edm.String)","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]}]}],"scoringProfiles":[{"name":"nearest","functionAggregation":"sum","text":null,"functions":[{"fieldName":"location","interpolation":"linear","type":"distance","boost":2.0,"freshness":null,"magnitude":null,"distance":{"referencePointParameter":"myloc","boostingDistance":100.0},"tag":null}]}],"corsOptions":null,"suggesters":[{"name":"sg","searchMode":"analyzingInfixMatching","sourceFields":["description","hotelName"]}],"analyzers":[],"tokenizers":[],"tokenFilters":[],"charFilters":[],"encryptionKey":null,"similarity":null}]}' - headers: - cache-control: - - no-cache - content-length: - - '6160' - content-type: - - application/json; odata.metadata=minimal - date: - - Tue, 21 Apr 2020 21:00:56 GMT - elapsed-time: - - '60' - expires: - - '-1' - odata-version: - - '4.0' - pragma: - - no-cache - preference-applied: - - odata.include-annotations="*" - request-id: - - 310a3476-8413-11ea-8200-8c8590507855 - strict-transport-security: - - max-age=15724800; includeSubDomains - vary: - - Accept-Encoding - status: - code: 200 - message: OK -version: 1 diff --git a/sdk/search/azure-search-documents/tests/recordings/test_service_live.test_list_indexes.yaml b/sdk/search/azure-search-documents/tests/recordings/test_service_live.test_list_indexes.yaml new file mode 100644 index 000000000000..ea2465753140 --- /dev/null +++ b/sdk/search/azure-search-documents/tests/recordings/test_service_live.test_list_indexes.yaml @@ -0,0 +1,48 @@ +interactions: +- request: + body: null + headers: + Accept: + - application/json;odata.metadata=minimal + Accept-Encoding: + - gzip, deflate + Connection: + - keep-alive + User-Agent: + - azsdk-python-search-documents/1.0.0b3 Python/3.7.3 (Darwin-19.3.0-x86_64-i386-64bit) + api-key: + - DA92E250896A263B639827B49DA1F5DF + method: GET + uri: https://search4f80e78.search.windows.net/indexes?api-version=2019-05-06-Preview + response: + body: + string: '{"@odata.context":"https://search4f80e78.search.windows.net/$metadata#indexes","value":[{"@odata.etag":"\"0x8D7EC650485773F\"","name":"drgqefsg","defaultScoringProfile":null,"fields":[{"name":"hotelId","type":"Edm.String","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":true,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"hotelName","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"description","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"en.lucene","synonymMaps":[]},{"name":"descriptionFr","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"fr.lucene","synonymMaps":[]},{"name":"category","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"tags","type":"Collection(Edm.String)","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"parkingIncluded","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"smokingAllowed","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"lastRenovationDate","type":"Edm.DateTimeOffset","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"rating","type":"Edm.Int32","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"location","type":"Edm.GeographyPoint","searchable":false,"filterable":true,"retrievable":true,"sortable":true,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"address","type":"Edm.ComplexType","fields":[{"name":"streetAddress","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"city","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"stateProvince","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"country","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"postalCode","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":true,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]}]},{"name":"rooms","type":"Collection(Edm.ComplexType)","fields":[{"name":"description","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"en.lucene","synonymMaps":[]},{"name":"descriptionFr","type":"Edm.String","searchable":true,"filterable":false,"retrievable":true,"sortable":false,"facetable":false,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":"fr.lucene","synonymMaps":[]},{"name":"type","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"baseRate","type":"Edm.Double","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"bedOptions","type":"Edm.String","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"sleepsCount","type":"Edm.Int32","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"smokingAllowed","type":"Edm.Boolean","searchable":false,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]},{"name":"tags","type":"Collection(Edm.String)","searchable":true,"filterable":true,"retrievable":true,"sortable":false,"facetable":true,"key":false,"indexAnalyzer":null,"searchAnalyzer":null,"analyzer":null,"synonymMaps":[]}]}],"scoringProfiles":[{"name":"nearest","functionAggregation":"sum","text":null,"functions":[{"fieldName":"location","interpolation":"linear","type":"distance","boost":2.0,"freshness":null,"magnitude":null,"distance":{"referencePointParameter":"myloc","boostingDistance":100.0},"tag":null}]}],"corsOptions":null,"suggesters":[{"name":"sg","searchMode":"analyzingInfixMatching","sourceFields":["description","hotelName"]}],"analyzers":[],"tokenizers":[],"tokenFilters":[],"charFilters":[],"encryptionKey":null,"similarity":null}]}' + headers: + cache-control: + - no-cache + content-length: + - '6159' + content-type: + - application/json; odata.metadata=minimal + date: + - Wed, 29 Apr 2020 17:44:55 GMT + elapsed-time: + - '1187' + expires: + - '-1' + odata-version: + - '4.0' + pragma: + - no-cache + preference-applied: + - odata.include-annotations="*" + request-id: + - 228c2cf4-8a41-11ea-8547-8c8590507855 + strict-transport-security: + - max-age=15724800; includeSubDomains + vary: + - Accept-Encoding + status: + code: 200 + message: OK +version: 1 diff --git a/sdk/search/azure-search-documents/tests/recordings/test_service_live.test_get_indexes_empty.yaml b/sdk/search/azure-search-documents/tests/recordings/test_service_live.test_list_indexes_empty.yaml similarity index 78% rename from sdk/search/azure-search-documents/tests/recordings/test_service_live.test_get_indexes_empty.yaml rename to sdk/search/azure-search-documents/tests/recordings/test_service_live.test_list_indexes_empty.yaml index 846838e695bd..3e6be2b6ca40 100644 --- a/sdk/search/azure-search-documents/tests/recordings/test_service_live.test_get_indexes_empty.yaml +++ b/sdk/search/azure-search-documents/tests/recordings/test_service_live.test_list_indexes_empty.yaml @@ -11,12 +11,12 @@ interactions: User-Agent: - azsdk-python-search-documents/1.0.0b3 Python/3.7.3 (Darwin-19.3.0-x86_64-i386-64bit) api-key: - - AEC2AE27CD62E5B29C1DBC9E3F05E4DE + - 5D71A4AC510EB388533DCC85D1D1D37D method: GET - uri: https://search5259108a.search.windows.net/indexes?api-version=2019-05-06-Preview + uri: https://search64601106.search.windows.net/indexes?api-version=2019-05-06-Preview response: body: - string: '{"@odata.context":"https://search5259108a.search.windows.net/$metadata#indexes","value":[]}' + string: '{"@odata.context":"https://search64601106.search.windows.net/$metadata#indexes","value":[]}' headers: cache-control: - no-cache @@ -25,9 +25,9 @@ interactions: content-type: - application/json; odata.metadata=minimal date: - - Tue, 21 Apr 2020 21:01:03 GMT + - Wed, 29 Apr 2020 17:45:05 GMT elapsed-time: - - '53' + - '46' expires: - '-1' odata-version: @@ -37,7 +37,7 @@ interactions: preference-applied: - odata.include-annotations="*" request-id: - - 35276268-8413-11ea-8200-8c8590507855 + - 2954c348-8a41-11ea-8547-8c8590507855 strict-transport-security: - max-age=15724800; includeSubDomains vary: diff --git a/sdk/search/azure-search-documents/tests/test_service_live.py b/sdk/search/azure-search-documents/tests/test_service_live.py index 76dd84f6de97..037d8483b0fa 100644 --- a/sdk/search/azure-search-documents/tests/test_service_live.py +++ b/sdk/search/azure-search-documents/tests/test_service_live.py @@ -52,18 +52,23 @@ class SearchIndexesClientTest(AzureMgmtTestCase): @ResourceGroupPreparer(random_name_enabled=True) @SearchServicePreparer() - def test_get_indexes_empty(self, api_key, endpoint, **kwargs): + def test_list_indexes_empty(self, api_key, endpoint, **kwargs): client = SearchServiceClient(endpoint, AzureKeyCredential(api_key)).get_indexes_client() - result = client.get_indexes() - assert len(result) == 0 + result = client.list_indexes() + with pytest.raises(StopIteration): + next(result) @ResourceGroupPreparer(random_name_enabled=True) @SearchServicePreparer(schema=SCHEMA, index_batch=BATCH) - def test_get_indexes(self, api_key, endpoint, index_name, **kwargs): + def test_list_indexes(self, api_key, endpoint, index_name, **kwargs): client = SearchServiceClient(endpoint, AzureKeyCredential(api_key)).get_indexes_client() - result = client.get_indexes() - assert len(result) == 1 - assert result[0].name == index_name + result = client.list_indexes() + + first = next(result) + assert first.name == index_name + + with pytest.raises(StopIteration): + next(result) @ResourceGroupPreparer(random_name_enabled=True) @SearchServicePreparer(schema=SCHEMA, index_batch=BATCH) @@ -87,8 +92,9 @@ def test_delete_indexes(self, api_key, endpoint, index_name, **kwargs): import time if self.is_live: time.sleep(TIME_TO_SLEEP) - result = client.get_indexes() - assert len(result) == 0 + result = client.list_indexes() + with pytest.raises(StopIteration): + next(result) @ResourceGroupPreparer(random_name_enabled=True) @SearchServicePreparer(schema=SCHEMA, index_batch=BATCH)