From c4bafa375d8aa387201a6f622aff3d22f1753b31 Mon Sep 17 00:00:00 2001
From: David Luevano Alvarado <david@luevano.xyz>
Date: Sat, 18 Feb 2023 20:37:30 -0600
Subject: add simple test feature

---
 src/pyssg/__main__.py    |  7 -------
 tests/__init__.py        |  0
 tests/conftest.py        |  7 +++++++
 tests/test_arg_parser.py | 16 ++++++++++++++++
 4 files changed, 23 insertions(+), 7 deletions(-)
 delete mode 100644 src/pyssg/__main__.py
 create mode 100644 tests/__init__.py
 create mode 100644 tests/conftest.py
 create mode 100644 tests/test_arg_parser.py

diff --git a/src/pyssg/__main__.py b/src/pyssg/__main__.py
deleted file mode 100644
index 5213889..0000000
--- a/src/pyssg/__main__.py
+++ /dev/null
@@ -1,7 +0,0 @@
-from .pyssg import main
-
-
-# since this is not used as a package, rather it's used as a command line tool,
-#   this is never called because pyssg:main is called directly when running pyssg
-if __name__ == '__main__':
-    main()
diff --git a/tests/__init__.py b/tests/__init__.py
new file mode 100644
index 0000000..e69de29
diff --git a/tests/conftest.py b/tests/conftest.py
new file mode 100644
index 0000000..9368432
--- /dev/null
+++ b/tests/conftest.py
@@ -0,0 +1,7 @@
+import pytest
+from pyssg.arg_parser import get_parser
+
+
+@pytest.fixture
+def arg_parser():
+    return get_parser()
\ No newline at end of file
diff --git a/tests/test_arg_parser.py b/tests/test_arg_parser.py
new file mode 100644
index 0000000..45263ce
--- /dev/null
+++ b/tests/test_arg_parser.py
@@ -0,0 +1,16 @@
+import pytest
+from argparse import ArgumentParser
+
+
+@pytest.mark.parametrize('args, arg_name, exp_result', [
+    (['--version'], 'version', True),
+    (['-v'], 'version', True),
+    (['--config', 'value'], 'config', 'value'),
+    (['-c', 'value'], 'config', 'value'),
+])
+def test_individual_args(args: list[str],
+                         arg_name: str,
+                         exp_result: str | bool,
+                         arg_parser: ArgumentParser) -> None:
+    parsed_args: dict[str, str | bool] = vars(arg_parser.parse_args(args))
+    assert parsed_args[arg_name] == exp_result
-- 
cgit v1.2.3-70-g09d2