Skip to content

Commit 8baeaff

Browse files
committed
fix(parser): preserve unquoted hash characters in CLI arguments
1 parent 8119529 commit 8baeaff

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

‎fire/parser_test.py‎

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -119,8 +119,15 @@ def testDefaultParseValueNestedContainers(self):
119119

120120
def testDefaultParseValueComments(self):
121121
self.assertEqual(parser.DefaultParseValue('"0#comments"'), '0#comments')
122-
# Comments are stripped. This behavior may change in the future.
123-
self.assertEqual(parser.DefaultParseValue('0#comments'), 0)
122+
self.assertEqual(parser.DefaultParseValue('0#comments'), '0#comments')
123+
self.assertEqual(parser.DefaultParseValue('qgm#123'), 'qgm#123')
124+
self.assertEqual(parser.DefaultParseValue('#literal'), '#literal')
125+
self.assertEqual(parser.DefaultParseValue('a#b#c'), 'a#b#c')
126+
127+
def testDefaultParseValueQuotedHashesInContainers(self):
128+
self.assertEqual(parser.DefaultParseValue('["a#b", 2]'), ['a#b', 2])
129+
self.assertEqual(parser.DefaultParseValue('{"key": "a#b"}'),
130+
{'key': 'a#b'})
124131

125132
def testDefaultParseValueBadLiteral(self):
126133
# If it can't be parsed, we treat it as a string. This behavior may change.

0 commit comments

Comments
 (0)