From 9e69e928b2640b06c1ee51497c597148869db7e5 Mon Sep 17 00:00:00 2001 From: Kelly Brazil Date: Wed, 11 May 2022 16:18:39 -0700 Subject: [PATCH] add chage tests --- tests/fixtures/centos-7.7/chage.json | 1 + tests/test_chage.py | 35 ++++++++++++++++++++++++++++ 2 files changed, 36 insertions(+) create mode 100644 tests/fixtures/centos-7.7/chage.json create mode 100644 tests/test_chage.py diff --git a/tests/fixtures/centos-7.7/chage.json b/tests/fixtures/centos-7.7/chage.json new file mode 100644 index 00000000..0b8bf4b2 --- /dev/null +++ b/tests/fixtures/centos-7.7/chage.json @@ -0,0 +1 @@ +{"password_last_changed":"never","password_expires":"never","password_inactive":"never","account_expires":"never","min_days_between_password_change":0,"max_days_between_password_change":99999,"warning_days_before_password_expires":7} diff --git a/tests/test_chage.py b/tests/test_chage.py new file mode 100644 index 00000000..d861869c --- /dev/null +++ b/tests/test_chage.py @@ -0,0 +1,35 @@ +import os +import unittest +import json +import jc.parsers.chage + +THIS_DIR = os.path.dirname(os.path.abspath(__file__)) + + +class MyTests(unittest.TestCase): + + def setUp(self): + # input + with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/centos-7.7/chage.out'), 'r', encoding='utf-8') as f: + self.centos_7_7_chage = f.read() + + # output + with open(os.path.join(THIS_DIR, os.pardir, 'tests/fixtures/centos-7.7/chage.json'), 'r', encoding='utf-8') as f: + self.centos_7_7_chage_json = json.loads(f.read()) + + + def test_chage_nodata(self): + """ + Test 'chage' with no data + """ + self.assertEqual(jc.parsers.chage.parse('', quiet=True), {}) + + def test_chage_centos_7_7(self): + """ + Test 'chage' on Centos 7.7 + """ + self.assertEqual(jc.parsers.chage.parse(self.centos_7_7_chage, quiet=True), self.centos_7_7_chage_json) + + +if __name__ == '__main__': + unittest.main()