def test_posparam_set_value_after_default(self): param = parser.PositionalParameter(argument_name='two', display_name='two', default="two") sig = support.s('one="one", two:par="two"', locals={'par': param}) csig = parser.CliSignature.from_signature(sig) ba = parser.CliBoundArguments(csig, [], 'func', args=[]) param.set_value(ba, 'inserted') self.assertEqual(ba.args, ['one', 'inserted'])
def test_posparam_set_value_after_missing(self): param = parser.PositionalParameter(argument_name='two', display_name='two') sig = support.s('one, two:par', locals={'par': param}) csig = parser.CliSignature.from_signature(sig) ba = parser.CliBoundArguments(csig, [], 'func', args=[]) with self.assertRaises(ValueError): param.set_value(ba, 'inserted')
def test_posparam_set_value_parameter_not_present(self): param = parser.PositionalParameter(argument_name='two', display_name='two') sig = support.s('one, two') csig = parser.CliSignature.from_signature(sig) ba = parser.CliBoundArguments(csig, [], 'func', args=['one', 'two']) with self.assertRaises(ValueError): param.set_value(ba, 'inserted')