From 7b60fb2b3d90729dc260c0a746fdd473af521572 Mon Sep 17 00:00:00 2001 From: index-git Date: Mon, 9 Jan 2023 17:46:48 +0100 Subject: [PATCH] Test GS issue #738 --- .../publications/issues/__init__.py | 0 .../publications/issues/gs_sld_style_test.py | 29 +++++++++++++++++++ 2 files changed, 29 insertions(+) create mode 100644 tests/dynamic_data/publications/issues/__init__.py create mode 100644 tests/dynamic_data/publications/issues/gs_sld_style_test.py diff --git a/tests/dynamic_data/publications/issues/__init__.py b/tests/dynamic_data/publications/issues/__init__.py new file mode 100644 index 000000000..e69de29bb diff --git a/tests/dynamic_data/publications/issues/gs_sld_style_test.py b/tests/dynamic_data/publications/issues/gs_sld_style_test.py new file mode 100644 index 000000000..b9a3a579f --- /dev/null +++ b/tests/dynamic_data/publications/issues/gs_sld_style_test.py @@ -0,0 +1,29 @@ +import io +import xml.etree.ElementTree as ET +import pytest + +from test_tools import process_client +from geoserver import util as gs_util +from layman import util as laymen_util, app, settings + + +@pytest.mark.usefixtures('ensure_layman_module') +def test_issue_738(): + workspace = 'dynamic_test_workspace_layer_issue_738' + layer = 'layer_issue_738' + + process_client.publish_workspace_layer(workspace=workspace, + name=layer, + style_file='sample/style/basic.sld', + ) + with app.app_context(): + layer_info = laymen_util.get_publication_info(workspace, process_client.LAYER_TYPE, layer, context={'keys': ['wms']}) + geoserver_workspace = layer_info.get('_wms', {}).get('workspace') + + response = gs_util.get_workspace_style_response(geoserver_workspace=geoserver_workspace, + stylename=layer, + headers=gs_util.headers_sld['1.1.0'], + auth=settings.LAYMAN_GS_AUTH, + ) + style = ET.parse(io.BytesIO(response.content)) + assert ET.tostring(style.getroot()) == b'''org.geotools.styling.StyledLayerDescriptorImpl@544d668e'''