Example #1
0
 def test_complete_top_level_args(self):
     commands = {
         'subcommands': {},
         'arguments': ['foo', 'bar']
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp --', ['--foo', '--bar'])
Example #2
0
 def test_complete_service_arg_with_arg_already_used(self):
     commands = {
         'subcommands': {
             'baz': {}
         },
         'arguments': ['foo', 'bar']
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp baz --foo --f', [])
Example #3
0
 def test_complete_service_arguments(self):
     commands = {
         'subcommands': {
             'foo': {}
         },
         'arguments': ['baz', 'bin']
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp foo --', ['--baz', '--bin'])
Example #4
0
 def test_complete_operation_arg_when_arg_already_used(self):
     commands = {
         'subcommands': {
             'foo': {'subcommands': {
                 'bar': {'arguments': ['baz']}
             }}
         },
         'arguments': []
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp foo bar --baz --b', [])
Example #5
0
 def test_complete_undocumented_command(self):
     class UndocumentedCommand(CLICommand):
         _UNDOCUMENTED = True
     commands = {
         'subcommands': {
             'foo': {},
             'bar': UndocumentedCommand()
         },
         'arguments': []
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp ', ['foo'])
Example #6
0
 def test_complete_partial_service_arguments(self):
     commands = {
         'subcommands': {
             'biz': {}
         },
         'arguments': ['foo', 'bar', 'foobar', 'fubar']
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp biz --f', [
         '--foo', '--fubar', '--foobar'])
     self.assert_completion(completer, 'cdp biz --fo', [
         '--foo', '--foobar'])
     self.assert_completion(completer, 'cdp biz --foob', ['--foobar'])
Example #7
0
 def test_complete_on_invalid_service(self):
     commands = {
         'subcommands': {
             'foo': {},
             'bar': {
                 'subcommands': {
                     'baz': {}
                 }
             }
         },
         'arguments': []
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp bin', [])
Example #8
0
 def test_complete_positional_argument(self):
     commands = {
         'subcommands': {
             'foo': {'subcommands': {
                 'bar': {'arguments': [
                     'baz',
                     CustomArgument('bin', positional_arg=True)
                 ]}
             }}
         },
         'arguments': []
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp foo bar --bin ', [])
     self.assert_completion(completer, 'cdp foo bar --bin blah --',
                            ['--baz'])
Example #9
0
 def test_complete_partial_operation_arguments(self):
     commands = {
         'subcommands': {
             'foo': {'subcommands': {
                 'bar': {'arguments': ['base', 'baz', 'air']}
             }}
         },
         'arguments': ['bin']
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp foo bar --b', [
         '--base', '--baz', '--bin'])
     self.assert_completion(completer, 'cdp foo bar --ba', [
         '--base', '--baz'])
     self.assert_completion(completer, 'cdp foo bar --bas', ['--base'])
     self.assert_completion(completer, 'cdp foo bar --base', [])
Example #10
0
 def test_complete_partial_service_name(self):
     commands = {
         'subcommands': {
             'cloudfront': {},
             'cloudformation': {},
             'cloudhsm': {},
             'sts': {}
         },
         'arguments': []
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp cloud', [
         'cloudfront', 'cloudformation', 'cloudhsm'])
     self.assert_completion(completer, 'cdp cloudf', [
         'cloudfront', 'cloudformation'])
     self.assert_completion(completer, 'cdp cloudfr', ['cloudfront'])
     self.assert_completion(completer, 'cdp cloudfront', [])
Example #11
0
 def test_complete_partial_service_commands(self):
     commands = {
         'subcommands': {
             'foo': {
                 'subcommands': {
                     'barb': {
                         'arguments': ['nil']
                     },
                     'baz': {},
                     'biz': {},
                     'foobar': {}
                 }
             }
         },
         'arguments': []
     }
     completer = Completer(
         self.clidriver_creator.create_clidriver(commands))
     self.assert_completion(completer, 'cdp foo b', ['barb', 'baz', 'biz'])
     self.assert_completion(completer, 'cdp foo ba', ['barb', 'baz'])
     self.assert_completion(completer, 'cdp foo bar', ['barb'])
     self.assert_completion(completer, 'cdp foo barb', [])