async def test_merge_or_upload_documents(self, api_key, endpoint, index_name, **kwargs): client = SearchClient(endpoint, index_name, AzureKeyCredential(api_key)) batch_client = SearchIndexDocumentBatchingClient( endpoint, index_name, AzureKeyCredential(api_key)) batch_client._batch_size = 2 async with batch_client: await batch_client.add_merge_or_upload_actions([{ "hotelId": "1000", "rating": 1 }, { "hotelId": "4", "rating": 2 }]) # There can be some lag before a document is searchable if self.is_live: time.sleep(TIME_TO_SLEEP) async with client: assert await client.get_document_count() == 11 result = await client.get_document(key="1000") assert result["rating"] == 1 result = await client.get_document(key="4") assert result["rating"] == 2
async def test_upload_documents_existing(self, api_key, endpoint, index_name, **kwargs): client = SearchClient(endpoint, index_name, AzureKeyCredential(api_key)) batch_client = SearchIndexDocumentBatchingClient( endpoint, index_name, AzureKeyCredential(api_key)) batch_client._batch_size = 2 DOCUMENTS = [ { "hotelId": "1000", "rating": 5, "rooms": [], "hotelName": "Azure Inn" }, { "hotelId": "3", "rating": 4, "rooms": [], "hotelName": "Redmond Hotel" }, ] async with batch_client: await batch_client.add_upload_actions(DOCUMENTS) # There can be some lag before a document is searchable if self.is_live: time.sleep(TIME_TO_SLEEP) async with client: assert await client.get_document_count() == 11
async def test_delete_documents_missing(self, api_key, endpoint, index_name, **kwargs): client = SearchClient(endpoint, index_name, AzureKeyCredential(api_key)) batch_client = SearchIndexDocumentBatchingClient( endpoint, index_name, AzureKeyCredential(api_key)) batch_client._batch_size = 2 async with batch_client: await batch_client.add_delete_actions([{ "hotelId": "1000" }, { "hotelId": "4" }]) # There can be some lag before a document is searchable if self.is_live: time.sleep(TIME_TO_SLEEP) async with client: assert await client.get_document_count() == 9 with pytest.raises(HttpResponseError): await client.get_document(key="1000") with pytest.raises(HttpResponseError): await client.get_document(key="4")