Exemplo n.º 1
0
 def test_post_register(self):
     manager = ExecutionManager()
     with mock.patch.object(CompletionCommand, 'get_env_var_name') as m:
         m.return_value = 'FOO_AUTO_COMPLETE'
         manager.register('completion', CompletionCommand)
     self.assertTrue(manager.completion)
     self.assertEqual(manager.completion_env_var_name, 'FOO_AUTO_COMPLETE')
Exemplo n.º 2
0
    def test_post_register_hooks(self):
        Command = type('Command', (BaseCommand, ), {'args': ['foo', 'bar']})

        class Command(BaseCommand):
            def post_register(self, manager):
                manager.completion = True

        manager = ExecutionManager()
        self.assertFalse(manager.completion)
        manager.register('completion', Command)
        self.assertTrue(manager.completion)
Exemplo n.º 3
0
    def setUp(self):
        self.stream = io.StringIO()
        self.stdout = io.StringIO()
        self.manager = ExecutionManager(stderr=self.stream, stdout=self.stdout)
        self.manager
        Command = type('Command', (BaseCommand, ), {})
        CompCommand = type('CompCommand', (CompletionCommand, ), {})

        class AddCommand(BaseCommand):
            args = BaseCommand.args + [
                arg('-f', '--force', action='store_true', default=False),
            ]

        self.manager.register('add', AddCommand)
        self.manager.register('annotate', Command)
        self.manager.register('init', Command)
        self.manager.register('completion', CompCommand)
        self.manager.completion = True
        self.manager.completion_env_var_name = 'PROG_AUTO_COMPLETE'
Exemplo n.º 4
0
 def test_default_argv(self):
     with mock.patch.object(sys, 'argv', ['vcs', 'foo', 'bar']):
         manager = ExecutionManager()
         self.assertEqual(manager.argv, ['foo', 'bar'])
Exemplo n.º 5
0
 def test_init_stderr(self):
     manager = ExecutionManager()
     self.assertEqual(manager.stderr, sys.stderr)
Exemplo n.º 6
0
 def setUp(self):
     self.manager = ExecutionManager(['foobar'], stderr=StringIO())