def test_get_matched_rule(): rules = [main.Rule(lambda x, _: x.script == 'cd ..', None), main.Rule(lambda *_: False, None)] assert main.get_matched_rule(main.Command('ls', '', ''), rules, None) is None assert main.get_matched_rule(main.Command('cd ..', '', ''), rules, None) == rules[0]
def test_get_matched_rule(capsys): rules = [Rule('', lambda x, _: x.script == 'cd ..'), Rule('', lambda *_: False), Rule('rule', Mock(side_effect=OSError('Denied')))] assert main.get_matched_rule(Command('ls'), rules, Mock(no_colors=True)) is None assert main.get_matched_rule(Command('cd ..'), rules, Mock(no_colors=True)) == rules[0] assert capsys.readouterr()[1].split('\n')[0] \ == '[WARN] Rule rule:'
def test_get_matched_rule(capsys): rules = [types.Rule('', lambda x, _: x.script == 'cd ..', None, True), types.Rule('', lambda *_: False, None, True), types.Rule('rule', Mock(side_effect=OSError('Denied')), None, True)] assert main.get_matched_rule(types.Command('ls', '', ''), rules, Mock(no_colors=True)) is None assert main.get_matched_rule(types.Command('cd ..', '', ''), rules, Mock(no_colors=True)) == rules[0] assert capsys.readouterr()[1].split('\n')[0] \ == '[WARN] Rule rule:'
def test_get_matched_rule(capsys): rules = [main.Rule('', lambda x, _: x.script == 'cd ..', None), main.Rule('', lambda *_: False, None), main.Rule('rule', Mock(side_effect=OSError('Denied')), None)] assert main.get_matched_rule(main.Command('ls', '', ''), rules, None) is None assert main.get_matched_rule(main.Command('cd ..', '', ''), rules, None) == rules[0] assert capsys.readouterr()[1].split('\n')[0]\ == '[WARN] rule: Traceback (most recent call last):'
def test_match(self): rule = Rule('', lambda x, _: x.script == 'cd ..') assert main.get_matched_rule( Command('cd ..'), [rule], Mock(no_colors=True)) == rule
def test_no_match(self): assert main.get_matched_rule( Command('ls'), [Rule('', lambda *_: False)], Mock(no_colors=True)) is None
def test_when_rule_failed(self, capsys): main.get_matched_rule( Command('ls'), [Rule('test', Mock(side_effect=OSError('Denied')))], Mock(no_colors=True)) assert capsys.readouterr()[1].split('\n')[0] == '[WARN] Rule test:'
def test_match(self): rule = Rule('', lambda x, _: x.script == 'cd ..') assert main.get_matched_rule(Command('cd ..'), [rule], Mock(no_colors=True)) == rule
def test_no_match(self): assert main.get_matched_rule(Command('ls'), [Rule('', lambda *_: False)], Mock(no_colors=True)) is None