'''Return a list of key/value tuples from the lines of a setting
'''
result = []
- for line in lines.split('\n'):
- if '=' in line:
- key, val = line.split('=', 1)
- result.append((key.rstrip(), val.lstrip()))
+ if isinstance(lines, str):
+ for line in lines.splitlines():
+ if '=' in line:
+ key, val = line.split('=', 1)
+ result.append((key.rstrip(), val.lstrip()))
+ else:
+ for key, val in lines.items():
+ result.append((key, val))
return result
# parse_assignments()
-def test_parse_assignments():
- '''Returns key/value tuples and ignores lines without an "="'''
+def test_parse_assignments_str():
+ '''Returns key/value string tuples and ignores lines without an "="'''
lines = ('key1 = value1\n' # whitespace around = is ignored
'\n'
'ignored\n'
('key3', 'value3=withequals')]
+def test_parse_assignments_dict():
+ '''Returns key value tuples.
+ '''
+ lines = {'key1': 'value1',
+ 'key2': 'value2',
+ }
+ result = pgwui_server_init.parse_assignments(lines)
+ assert result == [('key1', 'value1'),
+ ('key2', 'value2'),
+ ]
+
+
# add_routes()
def test_add_routes_empty():