Exemple #1
0
def test_execute_func(bot_cls, manager: ModuleManager):
    manager.load_all()
    mock = MagicMock(spec=dummy, name='dummy')
    mock.__wrapped__ = dummy.__wrapped__
    bot = bot_cls.return_value = Mock(spec=RequestBot, name='bot')

    yield from manager.execute_func(
        func=mock,
        plugin=manager.plugins['dummy'],
        private=False,
        channel='#czarnobyl',
        user=User('a!b@c'),
        args=['lol'],
        kwargs={'b': '42'},
    )

    bot_cls.assert_called_once_with(
        protocol=manager.protocol,
        private=False,
        chan='#czarnobyl',
        config={'__nick__': 'bot'},
        plugin=manager.plugins['dummy'],
        user=User('a!b@c'),
        temp={},
    )

    mock.assert_called_once_with(bot, a='lol', b=42)
def test_execute_func(bot_cls, manager: ModuleManager):
    manager.load_all()
    mock = MagicMock(spec=dummy, name='dummy')
    mock.__wrapped__ = dummy.__wrapped__
    bot = bot_cls.return_value = Mock(spec=RequestBot, name='bot')

    yield from manager.execute_func(
        func=mock,
        plugin=manager.plugins['dummy'],
        private=False,
        channel='#czarnobyl',
        user=User('a!b@c'),
        args=['lol'],
        kwargs={'b': '42'},
    )

    bot_cls.assert_called_once_with(
        protocol=manager.protocol,
        private=False,
        chan='#czarnobyl',
        config={'__nick__': 'bot'},
        plugin=manager.plugins['dummy'],
        user=User('a!b@c'),
        temp={},
    )

    mock.assert_called_once_with(bot, a='lol', b=42)
def test_load_all_with_config(manager: ModuleManager):
    yield from []  # noqa
    manager.config.add_section('plugin:dummy')
    manager.config.set('plugin:dummy', 'foo', 'bar')
    manager.load_all()

    plugin = manager.plugins['dummy']
    assert plugin.config == {'foo': 'bar'}
Exemple #4
0
def test_load_all_with_config(manager: ModuleManager):
    yield from []  # noqa
    manager.config.add_section('plugin:dummy')
    manager.config.set('plugin:dummy', 'foo', 'bar')
    manager.load_all()

    plugin = manager.plugins['dummy']
    assert plugin.config == {'foo': 'bar'}
Exemple #5
0
def test_load_all(manager: ModuleManager):
    yield from []  # noqa
    manager.load_all()

    plugin = manager.plugins['dummy']
    assert plugin.name == 'dummy'
    assert plugin.module_path == 'grazyna.test_mocks.dummy_plugin'
    assert plugin.config == {}

    from grazyna.test_mocks.dummy_plugin import (dummy, dummy_private,
                                                 dummy_reg, inited_plugin)
    assert set(plugin) == {dummy, dummy_private, dummy_reg}
    inited_plugin.assert_called_once_with(plugin, manager.protocol)
def test_load_all(manager: ModuleManager):
    yield from []  # noqa
    manager.load_all()

    plugin = manager.plugins['dummy']
    assert plugin.name == 'dummy'
    assert plugin.module_path == 'grazyna.test_mocks.dummy_plugin'
    assert plugin.config == {}

    from grazyna.test_mocks.dummy_plugin import (
        dummy, dummy_private, dummy_reg, inited_plugin
    )
    assert set(plugin) == {dummy, dummy_private, dummy_reg}
    inited_plugin.assert_called_once_with(plugin, manager.protocol)
def test_execute_not_exists_command(manager: ModuleManager):
    manager.execute_func = CoroutineMock()
    manager.find_message_in_db = CoroutineMock()
    manager.load_all()
    yield from manager.execute_command(
        cmd='szalona-dziewczyna',
        text='lol b=42',
        private=False,
        channel='#czarnobyl',
        user=User('a!b@c'),
    )

    assert not manager.execute_func.called

    manager.find_message_in_db.assert_called_once_with(
        'szalona-dziewczyna',
        '#czarnobyl',
        'lol b=42',
    )
Exemple #8
0
def test_execute_not_exists_command(manager: ModuleManager):
    manager.execute_func = CoroutineMock()
    manager.find_message_in_db = CoroutineMock()
    manager.load_all()
    yield from manager.execute_command(
        cmd='szalona-dziewczyna',
        text='lol b=42',
        private=False,
        channel='#czarnobyl',
        user=User('a!b@c'),
    )

    assert not manager.execute_func.called

    manager.find_message_in_db.assert_called_once_with(
        'szalona-dziewczyna',
        '#czarnobyl',
        'lol b=42',
    )
def test_execute_regs(manager: ModuleManager):
    manager.execute_func = CoroutineMock()
    manager.load_all()
    yield from manager.execute_regs(
        msg='dummmmy a b',
        private=False,
        channel='#czarnobyl',
        user=User('a!b@c'),
    )

    from grazyna.test_mocks.dummy_plugin import dummy_reg
    manager.execute_func.assert_called_once_with(
        dummy_reg,
        manager.plugins['dummy'],
        False,
        '#czarnobyl',
        User('a!b@c'),
        ('a', 'b'),
        {},
    )
Exemple #10
0
def test_execute_regs(manager: ModuleManager):
    manager.execute_func = CoroutineMock()
    manager.load_all()
    yield from manager.execute_regs(
        msg='dummmmy a b',
        private=False,
        channel='#czarnobyl',
        user=User('a!b@c'),
    )

    from grazyna.test_mocks.dummy_plugin import dummy_reg
    manager.execute_func.assert_called_once_with(
        dummy_reg,
        manager.plugins['dummy'],
        False,
        '#czarnobyl',
        User('a!b@c'),
        ('a', 'b'),
        {},
    )
def test_find_message_in_db(manager_with_db: ModuleManager):
    manager_with_db.load_all()
    with manager_with_db.protocol.get_session() as session:
        msg = Message()
        msg.channel = '#czarnobyl'
        msg.key = 'gjm'
        msg.message = '$0: $1gram juz miesiac; $@'
        session.add(msg)

    yield from manager_with_db.find_message_in_db(
        cmd='gjm',
        channel='#czarnobyl',
        text='lol kilo',
    )

    assert manager_with_db.protocol.messages == [
        SayMessage(
            '#czarnobyl',
            'lol: kilogram juz miesiac; lol kilo',
        )
    ]
Exemple #12
0
def test_find_message_in_db(manager_with_db: ModuleManager):
    manager_with_db.load_all()
    with manager_with_db.protocol.get_session() as session:
        msg = Message()
        msg.channel = '#czarnobyl'
        msg.key = 'gjm'
        msg.message = '$0: $1gram juz miesiac; $@'
        session.add(msg)

    yield from manager_with_db.find_message_in_db(
        cmd='gjm',
        channel='#czarnobyl',
        text='lol kilo',
    )

    assert manager_with_db.protocol.messages == [
        SayMessage(
            '#czarnobyl',
            'lol: kilogram juz miesiac; lol kilo',
        )
    ]
def test_execute_command(manager: ModuleManager):
    manager.execute_func = CoroutineMock()
    manager.find_message_in_db = CoroutineMock()
    manager.load_all()
    yield from manager.execute_command(
        cmd='dummy',
        text='lol b=42',
        private=False,
        channel='#czarnobyl',
        user=User('a!b@c'),
    )

    assert not manager.find_message_in_db.called

    from grazyna.test_mocks.dummy_plugin import dummy
    manager.execute_func.assert_called_once_with(
        dummy,
        manager.plugins['dummy'],
        False,
        '#czarnobyl',
        User('a!b@c'),
        ['lol'],
        {'b': '42'},
    )
Exemple #14
0
def test_execute_command(manager: ModuleManager):
    manager.execute_func = CoroutineMock()
    manager.find_message_in_db = CoroutineMock()
    manager.load_all()
    yield from manager.execute_command(
        cmd='dummy',
        text='lol b=42',
        private=False,
        channel='#czarnobyl',
        user=User('a!b@c'),
    )

    assert not manager.find_message_in_db.called

    from grazyna.test_mocks.dummy_plugin import dummy
    manager.execute_func.assert_called_once_with(
        dummy,
        manager.plugins['dummy'],
        False,
        '#czarnobyl',
        User('a!b@c'),
        ['lol'],
        {'b': '42'},
    )