Test Version and KeyValue Arguments
[kamaki] / kamaki / cli / argument / __init__.py
index 8aaa7b9..28b7660 100644 (file)
@@ -289,19 +289,21 @@ class KeyValueArgument(Argument):
     :syntax: --<arg> key1=value1 --<arg> key2=value2 ...
     """
 
-    def __init__(self, help='', parsed_name=None, default=[]):
+    def __init__(self, help='', parsed_name=None, default={}):
         super(KeyValueArgument, self).__init__(-1, help, parsed_name, default)
 
     @property
     def value(self):
         """
-        :input: key=value
-        :output: {'key1':'value1', 'key2':'value2', ...}
+        :returns: (dict) {key1: val1, key2: val2, ...}
         """
         return super(KeyValueArgument, self).value
 
     @value.setter
     def value(self, keyvalue_pairs):
+        """
+        :param keyvalue_pairs: (str) ['key1=val1', 'key2=val2', ...]
+        """
         self._value = {}
         for pair in keyvalue_pairs:
             key, sep, val = pair.partition('=')
@@ -309,7 +311,7 @@ class KeyValueArgument(Argument):
                 raiseCLIError(
                     CLISyntaxError('Argument syntax error '),
                     details='%s is missing a "=" (usage: key1=val1 )\n' % pair)
-            self._value[key.strip()] = val.strip()
+            self._value[key] = val
 
 
 class ProgressBarArgument(FlagArgument):