From d71c2d2b20a42fc52788c3ce63043773cdc4651a Mon Sep 17 00:00:00 2001 From: Kelly Brazil Date: Fri, 22 Dec 2023 11:48:23 -0800 Subject: [PATCH] add kv_dup tests --- tests/test_kv_dup.py | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 tests/test_kv_dup.py diff --git a/tests/test_kv_dup.py b/tests/test_kv_dup.py new file mode 100644 index 00000000..219f937a --- /dev/null +++ b/tests/test_kv_dup.py @@ -0,0 +1,44 @@ +import os +import unittest +import jc.parsers.kv_dup + +THIS_DIR = os.path.dirname(os.path.abspath(__file__)) + + +class MyTests(unittest.TestCase): + + def test_kv_dup_nodata(self): + """ + Test the test kv file with no data + """ + self.assertEqual(jc.parsers.kv_dup.parse('', quiet=True), {}) + + def test_kv_dup_duplicate_keys(self): + """ + Test input that contains duplicate keys + """ + data = ''' +duplicate_key: value1 +another_key = foo +duplicate_key = value2 +''' + expected = {"duplicate_key":["value1","value2"],"another_key":["foo"]} + self.assertEqual(jc.parsers.kv_dup.parse(data, quiet=True), expected) + + def test_kv_dup_null_values(self): + """ + Test input that contains duplicate keys and null values + """ + data = ''' +normal_key: "hello world" +no_val +some_vals = 1 +some_vals +some_vals:3 +''' + expected = {"normal_key":["hello world"],"no_val":[""],"some_vals":["1","","3"]} + self.assertEqual(jc.parsers.kv_dup.parse(data, quiet=True), expected) + + +if __name__ == '__main__': + unittest.main()