Ejemplo n.º 1
0
 def test_bad_cmd(self):
     with self.assertRaises(CommandInvalid):
         CommandParser('foo -h')
     with self.assertRaises(CommandInvalid):
         CommandParser('bar ')
     with self.assertRaises(CommandNotFound):
         CommandParser('')
     with self.assertRaises(CommandNotFound):
         CommandParser('ex')
Ejemplo n.º 2
0
    def test_option_parsing(self):
        parser = CommandParser(Document('test-cmd -h'))
        self.assertEqual(len(list(parser.used_options)), 0)
        expected = ['-l', '--foo', '--bar']
        parsed = [o.short_name or o.long_name for o in parser.available_options]
        self.assertEqual(parsed, expected)

        parser = CommandParser(Document('test-cmd --bar -h'))
        self.assertEqual(len(list(parser.used_options)), 1)
        expected = ['-l', '--foo', '--bar']
        parsed = [o.short_name or o.long_name for o in parser.available_options]
        self.assertEqual(parsed, expected)
Ejemplo n.º 3
0
    def test_arg_parsing(self):
        parser = CommandParser(Document('test-cmd --foo bar arg1_value -l arg2_value '))
        self.assertEqual(list(parser.used_args), [self.cmd.args['arg1'], self.cmd.args['arg2']])
        parser = CommandParser(Document('test-cmd arg1_value -l'))
        self.assertEqual(list(parser.used_args), [self.cmd.args['arg1']])
        self.assertEqual(list(parser.available_args), [self.cmd.args['arg2']])

        parser = CommandParser(Document('test-cmd2 arg1_value -l'))
        self.assertEqual(list(parser.available_args), [self.cmd2.args['arg2']])
        parser = CommandParser(Document('test-cmd2 arg1_value -l arg2_value'))
        self.assertEqual(list(parser.available_args), [self.cmd2.args['arg2']])
        parser = CommandParser(Document('test-cmd2 arg1_value -l arg2_value arg2_value2'))
        self.assertEqual(list(parser.available_args), [self.cmd2.args['arg2']])
Ejemplo n.º 4
0
 def test_cmd(self):
     parser = CommandParser('test-cmd')
     self.assertEqual(parser.cmd, self.mgr.get('test-cmd'))
     self.assertEqual(parser.cmd_name, 'test-cmd')