def test_autocomplete_bad_argument(self): client = SearchClient("endpoint", "index name", CREDENTIAL) with pytest.raises(TypeError) as e: client.autocomplete("bad_query") assert str( e ) == "Expected a AutocompleteQuery for 'query', but got {}".format( repr("bad_query"))
def test_autocomplete(self, api_key, endpoint, index_name, **kwargs): client = SearchClient( endpoint, index_name, AzureKeyCredential(api_key) ) query = AutocompleteQuery(search_text="mot", suggester_name="sg") results = client.autocomplete(query=query) assert results == [{"text": "motel", "query_plus_text": "motel"}]
class AutoCompleteTest(PerfStressTest): def __init__(self, arguments): super().__init__(arguments) api_key = self.get_from_env("AZURE_SEARCH_API_KEY") service_endpoint = os.getenv("AZURE_SEARCH_SERVICE_ENDPOINT") index_name = os.getenv("AZURE_SEARCH_INDEX_NAME") key = os.getenv("AZURE_SEARCH_API_KEY") self.service_client = SyncClient(service_endpoint, index_name, AzureKeyCredential(api_key)) self.async_service_client = AsyncClient(service_endpoint, index_name, AzureKeyCredential(api_key)) async def close(self): await self.async_service_client.close() await super().close() @staticmethod def add_arguments(parser): super(AutoCompleteTest, AutoCompleteTest).add_arguments(parser) parser.add_argument( '--num-documents', nargs='?', type=int, help='The number of results expect to be returned.', default=-1) def run_sync(self): if self.args.num_documents == -1: results = len( self.service_client.autocomplete(search_text="mot", suggester_name="sg")) else: results = len( self.service_client.autocomplete(search_text="mot", suggester_name="sg", top=self.args.num_documents)) async def run_async(self): if self.args.num_documents == -1: results = len(await self.async_service_client.autocomplete( search_text="mot", suggester_name="sg")) else: results = len(await self.async_service_client.autocomplete( search_text="mot", suggester_name="sg", top=self.args.num_documents))
def test_autocomplete_query_argument(self, mock_autocomplete_post): client = SearchClient("endpoint", "index name", CREDENTIAL) result = client.autocomplete(search_text="search text", suggester_name="sg") assert mock_autocomplete_post.called assert mock_autocomplete_post.call_args[0] == () assert mock_autocomplete_post.call_args[1][ "headers"] == client._headers assert (mock_autocomplete_post.call_args[1] ["autocomplete_request"].search_text == "search text")
def autocomplete_query(): # [START autocomplete_query] from azure.core.credentials import AzureKeyCredential from azure.search.documents import SearchClient search_client = SearchClient(service_endpoint, index_name, AzureKeyCredential(key)) results = search_client.autocomplete(search_text="bo", suggester_name="sg") print("Autocomplete suggestions for 'bo'") for result in results: print(" Completion: {}".format(result["text"]))