diff --git a/tests/test_asset.py b/tests/test_asset.py index b41113403..165fddac7 100644 --- a/tests/test_asset.py +++ b/tests/test_asset.py @@ -21,9 +21,9 @@ def test_alter_asset_absolute_path( assert asset.get_absolute_href() == new_href assert os.path.exists(new_href) if action == "move": - assert not os.path.exists(old_href) + assert not os.path.exists(old_href.replace("file://", "")) elif action == "copy": - assert os.path.exists(old_href) + assert os.path.exists(old_href.replace("file://", "")) @pytest.mark.parametrize("action", ["copy", "move"]) @@ -38,11 +38,11 @@ def test_alter_asset_relative_path(action: str, tmp_asset: pystac.Asset) -> None assert asset.href == new_href href = asset.get_absolute_href() assert href is not None - assert os.path.exists(href) + assert os.path.exists(href.replace("file://", "")) if action == "move": - assert not os.path.exists(old_href) + assert not os.path.exists(old_href.replace("file://", "")) elif action == "copy": - assert os.path.exists(old_href) + assert os.path.exists(old_href.replace("file://", "")) @pytest.mark.parametrize("action", ["copy", "move"]) @@ -82,18 +82,18 @@ def test_delete_asset(tmp_asset: pystac.Asset) -> None: asset = tmp_asset href = asset.get_absolute_href() assert href is not None - assert os.path.exists(href) + assert os.path.exists(href.replace("file://", "")) asset.delete() - assert not os.path.exists(href) + assert not os.path.exists(href.replace("file://", "")) def test_delete_asset_relative_no_owner_fails(tmp_asset: pystac.Asset) -> None: asset = tmp_asset href = asset.get_absolute_href() assert href is not None - assert os.path.exists(href) + assert os.path.exists(href.replace("file://", "")) asset.owner = None @@ -101,4 +101,4 @@ def test_delete_asset_relative_no_owner_fails(tmp_asset: pystac.Asset) -> None: asset.delete() assert asset.href in str(e.value) - assert os.path.exists(href) + assert os.path.exists(href.replace("file://", "")) diff --git a/tests/test_catalog.py b/tests/test_catalog.py index cb8bdace1..799145299 100644 --- a/tests/test_catalog.py +++ b/tests/test_catalog.py @@ -541,7 +541,7 @@ def test_save_with_different_stac_io(self) -> None: assert len(hrefs) == stac_io.mock.write_text.call_count for call_args_list in stac_io.mock.write_text.call_args_list: - assert call_args_list[0][0] in hrefs + assert f"file://{call_args_list[0][0]}" in hrefs def test_subcatalogs_saved_to_correct_path(self) -> None: with tempfile.TemporaryDirectory() as tmp_dir: diff --git a/tests/test_collection.py b/tests/test_collection.py index c339a8d10..b5ac60a6b 100644 --- a/tests/test_collection.py +++ b/tests/test_collection.py @@ -691,7 +691,7 @@ def test_delete_asset_relative_no_self_link_fails( assert asset.href in str(e.value) assert name in collection.assets - assert os.path.exists(href) + assert os.path.exists(href.replace("file://", "")) def test_permissive_temporal_extent_deserialization(collection: Collection) -> None: diff --git a/tests/test_item.py b/tests/test_item.py index a1c39f12e..beed81a2d 100644 --- a/tests/test_item.py +++ b/tests/test_item.py @@ -92,11 +92,11 @@ def test_asset_absolute_href(self) -> None: item.set_self_href(item_path) rel_asset = Asset("./data.geojson") rel_asset.set_owner(item) - expected_href = make_posix_style( + expected_filepath = make_posix_style( os.path.abspath(os.path.join(os.path.dirname(item_path), "./data.geojson")) ) actual_href = rel_asset.get_absolute_href() - self.assertEqual(expected_href, actual_href) + self.assertEqual(f"file://{expected_filepath}", actual_href) def test_asset_absolute_href_no_item_self(self) -> None: item_dict = self.get_example_item_dict() @@ -612,7 +612,7 @@ def test_delete_asset_relative_no_self_link_fails(tmp_asset: pystac.Asset) -> No assert asset.href in str(e.value) assert name in item.assets - assert os.path.exists(href) + assert os.path.exists(href.replace("file://", "")) def test_resolve_collection_with_root( diff --git a/tests/test_layout.py b/tests/test_layout.py index ff27f76b2..2816254de 100644 --- a/tests/test_layout.py +++ b/tests/test_layout.py @@ -421,7 +421,7 @@ def test_catalog(self) -> None: href = self.strategy.get_href( cat, parent_dir="https://example.com", is_root=True ) - self.assertEqual(href, "/an/href") + self.assertEqual(href, "file:///an/href") def test_collection(self) -> None: collection = TestCases.case_8() @@ -434,7 +434,7 @@ def test_collection(self) -> None: href = self.strategy.get_href( collection, parent_dir="https://example.com", is_root=True ) - self.assertEqual(href, "/an/href") + self.assertEqual(href, "file:///an/href") def test_item(self) -> None: collection = TestCases.case_8() @@ -444,7 +444,7 @@ def test_item(self) -> None: self.strategy.get_href(item, parent_dir="http://example.com") item.set_self_href("/an/href") href = self.strategy.get_href(item, parent_dir="http://example.com") - self.assertEqual(href, "/an/href") + self.assertEqual(href, "file:///an/href") class APILayoutStrategyTest(unittest.TestCase): diff --git a/tests/test_link.py b/tests/test_link.py index c7ecdb6cc..7d8fe5579 100644 --- a/tests/test_link.py +++ b/tests/test_link.py @@ -107,7 +107,9 @@ def test_resolved_self_href(self) -> None: link = catalog.get_single_link(pystac.RelType.SELF) assert link link.resolve_stac_object() - self.assertEqual(link.get_absolute_href(), make_posix_style(path)) + self.assertEqual( + link.get_absolute_href(), f"file://{make_posix_style(path)}" + ) def test_target_getter_setter(self) -> None: link = pystac.Link("my rel", target="./foo/bar.json") @@ -140,7 +142,10 @@ def test_relative_self_href(self) -> None: item = pystac.read_file("item.json") href = item.get_self_href() assert href - self.assertTrue(os.path.isabs(href), f"Not an absolute path: {href}") + self.assertTrue( + os.path.isabs(href.replace("file://", "")), + f"Not an absolute path: {href}", + ) finally: os.chdir(previous) @@ -237,7 +242,10 @@ def test_from_dict_round_trip(self) -> None: d2 = pystac.Link.from_dict(d).to_dict() self.assertEqual(d, d2) d = {"rel": "self", "href": "t"} - d2 = {"rel": "self", "href": make_posix_style(os.path.join(os.getcwd(), "t"))} + d2 = { + "rel": "self", + "href": f"file://{make_posix_style(os.path.join(os.getcwd(), 't'))}", + } self.assertEqual(pystac.Link.from_dict(d).to_dict(), d2) def test_from_dict_failures(self) -> None: @@ -333,7 +341,7 @@ def test_relative_self_link(tmp_path: Path) -> None: assert read_item asset_href = read_item.assets["data"].get_absolute_href() assert asset_href - assert Path(asset_href).exists() + assert Path(asset_href.replace("file://", "")).exists() @pytest.mark.parametrize("rel", HIERARCHICAL_LINKS) diff --git a/tests/validation/test_validate.py b/tests/validation/test_validate.py index d3f5dd416..1d92ef4ff 100644 --- a/tests/validation/test_validate.py +++ b/tests/validation/test_validate.py @@ -125,7 +125,9 @@ def test_validate_all_dict(self, test_case: pystac.Catalog) -> None: dst_dir = os.path.join(tmp_dir, "catalog") # Copy test case 7 to the temporary directory catalog_href = get_opt(TestCases.case_7().get_self_href()) - shutil.copytree(os.path.dirname(catalog_href), dst_dir) + shutil.copytree( + os.path.dirname(catalog_href.replace("file://", "")), dst_dir + ) new_cat_href = os.path.join(dst_dir, "catalog.json")