1
0
mirror of https://github.com/kellyjonbrazil/jc.git synced 2025-08-08 22:36:48 +02:00

add kv_dup tests

This commit is contained in:
Kelly Brazil
2023-12-22 11:48:23 -08:00
parent 6dd5b29998
commit d71c2d2b20

44
tests/test_kv_dup.py Normal file
View File

@ -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()