@@ -92,12 +92,30 @@ def testFireNamedArgs(self):
9292 fire .Fire (tc .OldStyleWithDefaults , command = ['triple' , '--count' , '5' ]),
9393 15 )
9494
95+ def testFireNamedArgsSingleHyphen (self ):
96+ self .assertEqual (fire .Fire (tc .WithDefaults ,
97+ command = ['double' , '-count' , '5' ]), 10 )
98+ self .assertEqual (fire .Fire (tc .WithDefaults ,
99+ command = ['triple' , '-count' , '5' ]), 15 )
100+ self .assertEqual (
101+ fire .Fire (tc .OldStyleWithDefaults , command = ['double' , '-count' , '5' ]),
102+ 10 )
103+ self .assertEqual (
104+ fire .Fire (tc .OldStyleWithDefaults , command = ['triple' , '-count' , '5' ]),
105+ 15 )
106+
95107 def testFireNamedArgsWithEquals (self ):
96108 self .assertEqual (fire .Fire (tc .WithDefaults ,
97109 command = ['double' , '--count=5' ]), 10 )
98110 self .assertEqual (fire .Fire (tc .WithDefaults ,
99111 command = ['triple' , '--count=5' ]), 15 )
100112
113+ def testFireNamedArgsWithEqualsSingleHyphen (self ):
114+ self .assertEqual (fire .Fire (tc .WithDefaults ,
115+ command = ['double' , '-count=5' ]), 10 )
116+ self .assertEqual (fire .Fire (tc .WithDefaults ,
117+ command = ['triple' , '-count=5' ]), 15 )
118+
101119 def testFireAllNamedArgs (self ):
102120 self .assertEqual (fire .Fire (tc .MixedDefaults , command = ['sum' , '1' , '2' ]), 5 )
103121 self .assertEqual (fire .Fire (tc .MixedDefaults ,
@@ -354,6 +372,23 @@ def testBoolParsingContinued(self):
354372 fire .Fire (tc .MixedDefaults , command = ['identity' , '10' , '--beta' ]),
355373 (10 , True ))
356374
375+ def testBoolParsingSingleHyphen (self ):
376+ self .assertEqual (
377+ fire .Fire (tc .MixedDefaults ,
378+ command = ['identity' , '-alpha=False' , '10' ]), (False , 10 ))
379+ self .assertEqual (
380+ fire .Fire (tc .MixedDefaults ,
381+ command = ['identity' , '-alpha' , '-beta' , '10' ]), (True , 10 ))
382+ self .assertEqual (
383+ fire .Fire (tc .MixedDefaults ,
384+ command = ['identity' , '-alpha' , '-beta=10' ]), (True , 10 ))
385+ self .assertEqual (
386+ fire .Fire (tc .MixedDefaults ,
387+ command = ['identity' , '-noalpha' , '-beta' ]), (False , True ))
388+ self .assertEqual (
389+ fire .Fire (tc .MixedDefaults ,
390+ command = ['identity' , '-alpha' , '-10' , '-beta' ]), (- 10 , True ))
391+
357392 def testBoolParsingLessExpectedCases (self ):
358393 # Note: Does not return (True, 10).
359394 self .assertEqual (
@@ -560,6 +595,11 @@ def testSeparatorForChaining(self):
560595 '--separator' , '$$' ]),
561596 True )
562597
598+ def testNegativeNumbers (self ):
599+ self .assertEqual (
600+ fire .Fire (tc .MixedDefaults ,
601+ command = ['sum' , '--alpha' , '-3' , '--beta' , '-4' ]), - 11 )
602+
563603 def testFloatForExpectedInt (self ):
564604 self .assertEqual (
565605 fire .Fire (tc .MixedDefaults ,
0 commit comments