summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
Diffstat (limited to 'tests')
-rw-r--r--tests/test_release_metadata.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/test_release_metadata.py b/tests/test_release_metadata.py
new file mode 100644
index 0000000..60374ff
--- /dev/null
+++ b/tests/test_release_metadata.py
@@ -0,0 +1,34 @@
+import json
+from pathlib import Path
+import re
+import tomllib
+import unittest
+
+from parley import __version__
+
+
+ROOT = Path(__file__).resolve().parent.parent
+
+
+class ReleaseMetadataTests(unittest.TestCase):
+ def test_versions_are_consistent(self) -> None:
+ with (ROOT / "pyproject.toml").open("rb") as source:
+ project_version = tomllib.load(source)["project"]["version"]
+ pkgbuild = (ROOT / "packaging/arch/PKGBUILD").read_text(encoding="utf-8")
+ package_version = re.search(r"^pkgver=(.+)$", pkgbuild, re.MULTILINE)
+
+ self.assertIsNotNone(package_version)
+ self.assertEqual(__version__, "1.0.0")
+ self.assertEqual(project_version, __version__)
+ self.assertEqual(package_version.group(1), __version__)
+
+ def test_extension_targets_current_shell(self) -> None:
+ metadata = json.loads(
+ (ROOT / "extension/metadata.json").read_text(encoding="utf-8")
+ )
+ self.assertEqual(metadata["version"], 1)
+ self.assertEqual(metadata["url"], "https://github.com/yuvadm/parley")
+
+
+if __name__ == "__main__":
+ unittest.main()