From 0d9cd28ffc91327bcb5e6d25ae487057194b5d37 Mon Sep 17 00:00:00 2001 From: Quentin Pradet Date: Wed, 29 May 2024 15:16:57 +0400 Subject: [PATCH 1/2] Fix mapbox tests Using `elasticsearch_url` does not work in serverless as API key authentication is required. Also, `node_class` parametrization does not make sense, we parametrize at the CI job level. And finally, the sync case was missing a refresh. --- .../test_server/test_mapbox_vector_tile.py | 13 +++++-------- .../test_server/test_mapbox_vector_tile.py | 16 ++++++---------- 2 files changed, 11 insertions(+), 18 deletions(-) diff --git a/test_elasticsearch_serverless/test_async/test_server/test_mapbox_vector_tile.py b/test_elasticsearch_serverless/test_async/test_server/test_mapbox_vector_tile.py index 027cd98..276e368 100644 --- a/test_elasticsearch_serverless/test_async/test_server/test_mapbox_vector_tile.py +++ b/test_elasticsearch_serverless/test_async/test_server/test_mapbox_vector_tile.py @@ -73,9 +73,8 @@ async def mvt_setup(async_client): ) -async def test_mapbox_vector_tile_error(elasticsearch_url, mvt_setup): - client = AsyncElasticsearch(elasticsearch_url) - await client.search_mvt( +async def test_mapbox_vector_tile_error(async_client, mvt_setup): + await async_client.search_mvt( index="museums", zoom=13, x=4207, @@ -84,7 +83,7 @@ async def test_mapbox_vector_tile_error(elasticsearch_url, mvt_setup): ) with pytest.raises(RequestError) as e: - await client.search_mvt( + await async_client.search_mvt( index="museums", zoom=-100, x=4207, @@ -113,15 +112,13 @@ async def test_mapbox_vector_tile_error(elasticsearch_url, mvt_setup): } -async def test_mapbox_vector_tile_response(elasticsearch_url, mvt_setup): +async def test_mapbox_vector_tile_response(async_client, mvt_setup): try: import mapbox_vector_tile except ImportError: return pytest.skip("Requires the 'mapbox-vector-tile' package") - client = AsyncElasticsearch(elasticsearch_url) - - resp = await client.search_mvt( + resp = await async_client.search_mvt( index="museums", zoom=13, x=4207, diff --git a/test_elasticsearch_serverless/test_server/test_mapbox_vector_tile.py b/test_elasticsearch_serverless/test_server/test_mapbox_vector_tile.py index 5ed3594..3c11181 100644 --- a/test_elasticsearch_serverless/test_server/test_mapbox_vector_tile.py +++ b/test_elasticsearch_serverless/test_server/test_mapbox_vector_tile.py @@ -67,13 +67,12 @@ def mvt_setup(sync_client): "included": True, }, ], + refresh=True, ) -@pytest.mark.parametrize("node_class", ["urllib3", "requests"]) -def test_mapbox_vector_tile_error(elasticsearch_url, mvt_setup, node_class): - client = Elasticsearch(elasticsearch_url, node_class=node_class) - client.search_mvt( +def test_mapbox_vector_tile_error(sync_client, mvt_setup): + sync_client.search_mvt( index="museums", zoom=13, x=4207, @@ -82,7 +81,7 @@ def test_mapbox_vector_tile_error(elasticsearch_url, mvt_setup, node_class): ) with pytest.raises(RequestError) as e: - client.search_mvt( + sync_client.search_mvt( index="museums", zoom=-100, x=4207, @@ -111,16 +110,13 @@ def test_mapbox_vector_tile_error(elasticsearch_url, mvt_setup, node_class): } -@pytest.mark.parametrize("node_class", ["urllib3", "requests"]) -def test_mapbox_vector_tile_response(elasticsearch_url, mvt_setup, node_class): +def test_mapbox_vector_tile_response(sync_client, mvt_setup): try: import mapbox_vector_tile except ImportError: return pytest.skip("Requires the 'mapbox-vector-tile' package") - client = Elasticsearch(elasticsearch_url, node_class=node_class) - - resp = client.search_mvt( + resp = sync_client.search_mvt( index="museums", zoom=13, x=4207, From 467de3253b13280142d2a6ec5d3a9dce7b3e6de2 Mon Sep 17 00:00:00 2001 From: Quentin Pradet Date: Wed, 29 May 2024 17:27:23 +0400 Subject: [PATCH 2/2] Fix lint, improve condition --- .../test_async/test_server/test_helpers.py | 4 +--- .../test_async/test_server/test_mapbox_vector_tile.py | 2 +- test_elasticsearch_serverless/test_server/test_helpers.py | 4 +--- .../test_server/test_mapbox_vector_tile.py | 2 +- 4 files changed, 4 insertions(+), 8 deletions(-) diff --git a/test_elasticsearch_serverless/test_async/test_server/test_helpers.py b/test_elasticsearch_serverless/test_async/test_server/test_helpers.py index 2623774..507ae6e 100644 --- a/test_elasticsearch_serverless/test_async/test_server/test_helpers.py +++ b/test_elasticsearch_serverless/test_async/test_server/test_helpers.py @@ -346,9 +346,7 @@ async def test_errors_are_reported_correctly(self, async_client): assert "42" == error["index"]["_id"] assert "i" == error["index"]["_index"] print(error["index"]["error"]) - assert "MapperParsingException" in repr( - error["index"]["error"] - ) or "mapper_parsing_exception" in repr(error["index"]["error"]) + assert error["index"]["error"]["type"] == "document_parsing_exception" async def test_error_is_raised(self, async_client): await async_client.indices.create( diff --git a/test_elasticsearch_serverless/test_async/test_server/test_mapbox_vector_tile.py b/test_elasticsearch_serverless/test_async/test_server/test_mapbox_vector_tile.py index 276e368..ad82da7 100644 --- a/test_elasticsearch_serverless/test_async/test_server/test_mapbox_vector_tile.py +++ b/test_elasticsearch_serverless/test_async/test_server/test_mapbox_vector_tile.py @@ -17,7 +17,7 @@ import pytest -from elasticsearch_serverless import AsyncElasticsearch, RequestError +from elasticsearch_serverless import RequestError pytestmark = pytest.mark.asyncio diff --git a/test_elasticsearch_serverless/test_server/test_helpers.py b/test_elasticsearch_serverless/test_server/test_helpers.py index 2f7c82e..caaf5d3 100644 --- a/test_elasticsearch_serverless/test_server/test_helpers.py +++ b/test_elasticsearch_serverless/test_server/test_helpers.py @@ -338,9 +338,7 @@ def test_errors_are_reported_correctly(sync_client): assert "42" == error["index"]["_id"] assert "i" == error["index"]["_index"] print(error["index"]["error"]) - assert "MapperParsingException" in repr( - error["index"]["error"] - ) or "mapper_parsing_exception" in repr(error["index"]["error"]) + assert error["index"]["error"]["type"] == "document_parsing_exception" def test_error_is_raised(sync_client): diff --git a/test_elasticsearch_serverless/test_server/test_mapbox_vector_tile.py b/test_elasticsearch_serverless/test_server/test_mapbox_vector_tile.py index 3c11181..12a7537 100644 --- a/test_elasticsearch_serverless/test_server/test_mapbox_vector_tile.py +++ b/test_elasticsearch_serverless/test_server/test_mapbox_vector_tile.py @@ -17,7 +17,7 @@ import pytest -from elasticsearch_serverless import Elasticsearch, RequestError +from elasticsearch_serverless import RequestError @pytest.fixture(scope="function")