Example #1
0
    def test_direct_command(self):
        def cmd_checker1(match_list, cmd, sender):
            cmd_checker1.runned = True
            cmd_checker1.cmd = cmd
            ok_('1234' in match_list)

        def cmd_checker2(match_list, cmd, sender):
            cmd_checker2.runned = True
            cmd_checker2.cmd = cmd
            ok_('1234' in match_list)

        # Here we only test the api correctness
        # the integration test will be in command_server test
        ap = LinotArgParser('testcmd', self.parser, None)
        ap.add_direct_command(cmd_checker1, '[cxyz]+([0-9]+)', re.IGNORECASE)
        ap = LinotArgParser('testcmd2', self.parser, None)
        ap.add_direct_command(cmd_checker2, '[abc]+([0-9]+)', re.IGNORECASE)
        cmd_checker1.runned = False
        cmd_checker2.runned = False
        self.parser.process_direct_commands('1234', None)
        ok_(cmd_checker1.runned is False)
        ok_(cmd_checker2.runned is False)
        self.parser.process_direct_commands('xyz1234', None)
        ok_(cmd_checker1.runned is True)
        ok_(cmd_checker2.runned is False)
        cmd_checker1.runned = False
        self.parser.process_direct_commands('ab1234', None)
        ok_(cmd_checker1.runned is False)
        ok_(cmd_checker2.runned is True)
        cmd_checker2.runned = False
        self.parser.process_direct_commands('c1234', None)
        ok_(cmd_checker1.runned is True)
        ok_(cmd_checker2.runned is True)
        ok_(cmd_checker1.cmd == 'c1234')
        ok_(cmd_checker2.cmd == 'c1234')
Example #2
0
    def test_direct_command(self):
        def cmd_checker1(match_list, cmd, sender):
            cmd_checker1.runned = True
            cmd_checker1.cmd = cmd
            ok_('1234' in match_list)

        def cmd_checker2(match_list, cmd, sender):
            cmd_checker2.runned = True
            cmd_checker2.cmd = cmd
            ok_('1234' in match_list)

        # Here we only test the api correctness
        # the integration test will be in command_server test
        ap = LinotArgParser('testcmd', self.parser, None)
        ap.add_direct_command(cmd_checker1, '[cxyz]+([0-9]+)', re.IGNORECASE)
        ap = LinotArgParser('testcmd2', self.parser, None)
        ap.add_direct_command(cmd_checker2, '[abc]+([0-9]+)', re.IGNORECASE)
        cmd_checker1.runned = False
        cmd_checker2.runned = False
        self.parser.process_direct_commands('1234', None)
        ok_(cmd_checker1.runned is False)
        ok_(cmd_checker2.runned is False)
        self.parser.process_direct_commands('xyz1234', None)
        ok_(cmd_checker1.runned is True)
        ok_(cmd_checker2.runned is False)
        cmd_checker1.runned = False
        self.parser.process_direct_commands('ab1234', None)
        ok_(cmd_checker1.runned is False)
        ok_(cmd_checker2.runned is True)
        cmd_checker2.runned = False
        self.parser.process_direct_commands('c1234', None)
        ok_(cmd_checker1.runned is True)
        ok_(cmd_checker2.runned is True)
        ok_(cmd_checker1.cmd == 'c1234')
        ok_(cmd_checker2.cmd == 'c1234')
Example #3
0
    def test_direct_command(self):
        def default_process(args, sender):
            ok_(False)  # should not reach here

        lap = LinotArgParser('testcmd', self.parser, default_process)

        def cmd_checker(match_list, cmd, sender):
            ok_('somechannel' in match_list)
            ok_(len(match_list) == 1)
            ok_(cmd == 'www.twitch.tv/somechannel')
            cmd_checker.runned = True
        lap.add_direct_command(cmd_checker, 'twitch\.tv/(\w+)[\s\t,]*', re.IGNORECASE)
        cmd_checker.runned = False

        sender = CommandSubmitter('test', 'sender')
        fake_cmd = [
            (sender, 'www.twitch.tv/somechannel')
        ]
        interfaces.get('test').add_command_list(fake_cmd)
        command_server.start(self.parser, ['test'])
        threading.Event().wait(.5)
        command_server.stop()
        ok_(cmd_checker.runned)