============================= INTEGRATION TESTS ============================== ============================= test session starts ============================== platform linux -- Python 3.10.12, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3 cachedir: /tmp/pytest_cache_dir rootdir: /opt collecting ... collected 4 items tests/test_if1_if2.py::TestIF1_IF2::test_001 2025-10-16 14:08:26,059 - LUCAS - INFO - io.download - Download process successfuly finished. Size of downloaded data: 1538kb FAILED tests/test_if1_if2.py::TestIF1_IF2::test_002 2025-10-16 14:08:27,066 - LUCAS - INFO - io.download - Download process successfuly finished. Size of downloaded data: 334kb FAILED tests/test_if1_if2.py::TestIF1_IF2::test_003 2025-10-16 14:08:27,389 - LUCAS - INFO - io.download - Download process successfuly finished. Size of downloaded data: 214kb FAILED tests/test_if1_if2.py::TestIF1_IF2::test_004 2025-10-16 14:08:27,658 - LUCAS - INFO - io.download - Download process successfuly finished. Size of downloaded data: 41kb FAILED =================================== FAILURES =================================== _____________________________ TestIF1_IF2.test_001 _____________________________ self = ds = > def _postprocessing(self, ds): """Delete gml_id column. If data are space time aggregated, delete columns which aren't required :param GDALDataset ds: GPKG dataset """ def _group(name): return { "LC_LU": "LAND COVER,LAND USE", "LC_LU_SO": "LAND COVER,LAND USE,SOIL", "FO": "FORESTRY", "CO": "COPERNICUS", "IN": "INSPIRE" }[name] try: for idx in range(ds.GetLayerCount()): layer = ds.GetLayerByIndex(idx) defn = layer.GetLayerDefn() layer.DeleteField(defn.GetFieldIndex('gml_id')) if self._request.st_aggregated and self._request.years is not None: # delete attributes which do not pass temporal filter layer_defn = layer.GetLayerDefn() delete_attr = [] for i in range(layer_defn.GetFieldCount()): attr = layer_defn.GetFieldDefn(i).GetName() try: if int(attr[-4:]) not in self._request.years: delete_attr.append(attr) except ValueError: # some attributes are timeless (eg. point_id, ..., count_survey) pass for attr in delete_attr: layer.DeleteField(defn.GetFieldIndex(attr)) # read LUCAS JSON metadata from server try: r = requests.get(self._mtd_url) > lucas_metadata = json.loads(r.content) /usr/local/lib/python3.10/dist-packages/st_lucas/io.py:230: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib/python3.10/json/__init__.py:346: in loads return _default_decoder.decode(s) /usr/lib/python3.10/json/decoder.py:337: in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = s = 'HTTP Status 404 – Not Found