Beispiel #1
0
 def test_delete_datasource(self, api_key, endpoint, index_name, **kwargs):
     client = SearchIndexerClient(endpoint, AzureKeyCredential(api_key))
     data_source = self._create_datasource()
     result = client.create_datasource(data_source)
     assert len(client.get_datasources()) == 1
     client.delete_datasource("sample-datasource")
     assert len(client.get_datasources()) == 0
Beispiel #2
0
 def test_create_or_update_datasource(self, api_key, endpoint, index_name,
                                      **kwargs):
     client = SearchIndexerClient(endpoint, AzureKeyCredential(api_key))
     data_source = self._create_datasource()
     created = client.create_datasource(data_source)
     assert len(client.get_datasources()) == 1
     data_source.description = "updated"
     client.create_or_update_datasource(data_source)
     assert len(client.get_datasources()) == 1
     result = client.get_datasource("sample-datasource")
     assert result.name == "sample-datasource"
     assert result.description == "updated"
Beispiel #3
0
 def test_list_datasource(self, api_key, endpoint, index_name, **kwargs):
     client = SearchIndexerClient(endpoint, AzureKeyCredential(api_key))
     data_source1 = self._create_datasource()
     data_source2 = self._create_datasource(name="another-sample")
     created1 = client.create_datasource(data_source1)
     created2 = client.create_datasource(data_source2)
     result = client.get_datasources()
     assert isinstance(result, list)
     assert set(x.name
                for x in result) == {"sample-datasource", "another-sample"}
Beispiel #4
0
    def test_delete_datasource_if_unchanged(self, api_key, endpoint,
                                            index_name, **kwargs):
        client = SearchIndexerClient(endpoint, AzureKeyCredential(api_key))
        data_source = self._create_datasource()
        created = client.create_datasource(data_source)
        etag = created.e_tag

        # Now update the data source
        data_source.description = "updated"
        client.create_or_update_datasource(data_source)

        # prepare data source
        data_source.e_tag = etag  # reset to the original datasource
        with pytest.raises(HttpResponseError):
            client.delete_datasource(
                data_source, match_condition=MatchConditions.IfNotModified)
            assert len(client.get_datasources()) == 1