diff --git a/main.py b/main.py index 933059b..7b32956 100755 --- a/main.py +++ b/main.py @@ -10,6 +10,7 @@ import multiprocessing from src import parser_factory +__version__ = '0.1' def __check_file(filename:str, mode:int = os.R_OK) -> bool: if not os.path.isfile(filename): @@ -24,6 +25,8 @@ def __check_file(filename:str, mode:int = os.R_OK) -> bool: def create_arg_parser(): parser = argparse.ArgumentParser(description='Metadata anonymisation toolkit 2') parser.add_argument('files', nargs='*') + parser.add_argument('-v', '--version', action='version', + version='MAT2 %s' % __version__) info = parser.add_argument_group('Information') info.add_argument('-c', '--check', action='store_true', diff --git a/tests/test_climat2.py b/tests/test_climat2.py index 44703b7..67b56eb 100644 --- a/tests/test_climat2.py +++ b/tests/test_climat2.py @@ -8,12 +8,20 @@ class TestHelp(unittest.TestCase): def test_help(self): proc = subprocess.Popen(['./main.py', '--help'], stdout=subprocess.PIPE) stdout, _ = proc.communicate() - self.assertIn(b'usage: main.py [-h] [-c] [-l] [-s] [-L] [files [files ...]]', stdout) + self.assertIn(b'usage: main.py [-h] [-v] [-c] [-l] [-s] [-L] [files [files ...]]', stdout) def test_no_arg(self): proc = subprocess.Popen(['./main.py'], stdout=subprocess.PIPE) stdout, _ = proc.communicate() - self.assertIn(b'usage: main.py [-h] [-c] [-l] [-s] [-L] [files [files ...]]', stdout) + self.assertIn(b'usage: main.py [-h] [-v] [-c] [-l] [-s] [-L] [files [files ...]]', stdout) + + +class TestVersion(unittest.TestCase): + def test_version(self): + proc = subprocess.Popen(['./main.py', '--version'], stdout=subprocess.PIPE) + stdout, _ = proc.communicate() + self.assertTrue(stdout.startswith(b'MAT2 ')) + class TestReturnValue(unittest.TestCase):