Example #1
0
class TestUnkownCommands(object):

    def setup(self):
        self.parser = Parse(['--foo'])
        self.parser.writer = StringIO()

    def test_catch_unkown_flag(self):
        self.parser.arguments = ['--bar']
        self.parser._build()
        assert self.parser.unkown_commands == ['--bar']

    def test_catch_unkown_flag_including_help(self):
        args = ['--bar', '--help', '-h']
        self.parser.arguments = args
        self.parser._build()
        assert self.parser.unkown_commands == args

    def test_catch_unkown_flag_except_help(self):
        args = ['--bar', '--help', '-h']
        self.parser.catch_help = True
        self.parser.arguments = args
        self.parser._build()
        assert self.parser.unkown_commands == ['--bar']

    def test_catch_unkown_flag_including_version(self):
        args = ['--bar', '--version']
        self.parser.arguments = args
        self.parser._build()
        assert self.parser.unkown_commands == args

    def test_catch_unkown_flag_except_version(self):
        args = ['--bar', '--version']
        self.parser.catch_version = True
        self.parser.arguments = args
        self.parser._build()
        assert self.parser.unkown_commands == ['--bar']