summaryrefslogtreecommitdiff
path: root/tests
diff options
context:
space:
mode:
authorpommicket <pommicket@gmail.com>2025-09-23 11:11:36 -0400
committerpommicket <pommicket@gmail.com>2025-09-23 11:11:36 -0400
commit216909c9e45316d7714d12296a83dbcb1589756c (patch)
tree8b74c4506ae637ce003b3337b57e096e8311b1d7 /tests
parent7afac3b1f9fb29bb6e68f5ebe8782488b6be4d98 (diff)
Error tests, fix duplicate keys not being detected
Diffstat (limited to 'tests')
-rw-r--r--tests/__init__.py10
-rw-r--r--tests/errors.py9
2 files changed, 18 insertions, 1 deletions
diff --git a/tests/__init__.py b/tests/__init__.py
index e9737ec..aed3dc6 100644
--- a/tests/__init__.py
+++ b/tests/__init__.py
@@ -1,6 +1,6 @@
import unittest
import os
-from tests import parsing
+from tests import parsing, errors
class TestParsing(unittest.TestCase):
def test_all(self) -> None:
@@ -10,6 +10,14 @@ class TestParsing(unittest.TestCase):
with self.subTest(file):
parsing.test_path(self, f'{test_dir}/{file}')
+class TestErrors(unittest.TestCase):
+ def test_all(self) -> None:
+ test_dir = '../tests/errors'
+ for file in os.listdir(test_dir):
+ if not file.endswith('.pom'): continue
+ with self.subTest(file):
+ errors.test_path(self, f'{test_dir}/{file}')
+
if __name__ == '__main__':
unittest.main()
diff --git a/tests/errors.py b/tests/errors.py
new file mode 100644
index 0000000..841c30e
--- /dev/null
+++ b/tests/errors.py
@@ -0,0 +1,9 @@
+import pom_parser
+import unittest
+
+def test_path(tester: unittest.TestCase, path: str) -> None:
+ try:
+ pom_parser.load_path(path)
+ tester.fail(f'Parsing configuration {path} should have failed.')
+ except pom_parser.Error:
+ pass