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:
44
tests/test_kv_dup.py
Normal file
44
tests/test_kv_dup.py
Normal 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()
|
Reference in New Issue
Block a user