コード例 #1
0
ファイル: test_loader.py プロジェクト: noahfx/slgt-sopel
def test_clean_callable_example_nickname(tmpconfig, func):
    module.commands('test')(func)
    module.example('$nickname: hello')(func)

    loader.clean_callable(func, tmpconfig)

    assert len(func._docs) == 1
    assert 'test' in func._docs

    docs = func._docs['test']
    assert len(docs) == 2
    assert docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert docs[1] == 'TestBot: hello'
コード例 #2
0
ファイル: test_loader.py プロジェクト: neonobjclash/sopel
def test_clean_callable_example_nickname(tmpconfig, func):
    module.commands('test')(func)
    module.example('$nickname: hello')(func)

    loader.clean_callable(func, tmpconfig)

    assert len(func._docs) == 1
    assert 'test' in func._docs

    docs = func._docs['test']
    assert len(docs) == 2
    assert docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert docs[1] == 'TestBot: hello'
コード例 #3
0
ファイル: test_loader.py プロジェクト: Sickmantella/sopel
def test_clean_callable_example_user_help(tmpconfig, func):
    module.commands('test')(func)
    module.example('.test hello', user_help=True)(func)

    loader.clean_callable(func, tmpconfig)

    assert len(func._docs) == 1
    assert 'test' in func._docs

    docs = func._docs['test']
    assert len(docs) == 2
    assert docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert docs[1] == ['.test hello']
コード例 #4
0
ファイル: test_loader.py プロジェクト: Sickmantella/sopel
def test_clean_callable_example_not_set(tmpconfig, func):
    module.commands('test')(func)

    loader.clean_callable(func, tmpconfig)

    assert hasattr(func, '_docs')
    assert len(func._docs) == 1
    assert 'test' in func._docs

    docs = func._docs['test']
    assert len(docs) == 2
    assert docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert docs[1] == []
コード例 #5
0
ファイル: test_loader.py プロジェクト: sopel-irc/sopel
def test_clean_callable_example_user_help(tmpconfig, func):
    module.commands('test')(func)
    module.example('.test hello', user_help=True)(func)

    loader.clean_callable(func, tmpconfig)

    assert len(func._docs) == 1
    assert 'test' in func._docs

    docs = func._docs['test']
    assert len(docs) == 2
    assert docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert docs[1] == ['.test hello']
コード例 #6
0
ファイル: test_loader.py プロジェクト: sopel-irc/sopel
def test_clean_callable_example_not_set(tmpconfig, func):
    module.commands('test')(func)

    loader.clean_callable(func, tmpconfig)

    assert hasattr(func, '_docs')
    assert len(func._docs) == 1
    assert 'test' in func._docs

    docs = func._docs['test']
    assert len(docs) == 2
    assert docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert docs[1] == []
コード例 #7
0
ファイル: test_loader.py プロジェクト: noahfx/slgt-sopel
def test_clean_callable_example_default_prefix(tmpconfig, func):
    module.commands('test')(func)
    module.example('.test hello')(func)

    tmpconfig.core.help_prefix = '!'
    loader.clean_callable(func, tmpconfig)

    assert len(func._docs) == 1
    assert 'test' in func._docs

    docs = func._docs['test']
    assert len(docs) == 2
    assert docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert docs[1] == '!test hello'
コード例 #8
0
ファイル: test_loader.py プロジェクト: noahfx/slgt-sopel
def test_clean_callable_example_first_only(tmpconfig, func):
    module.commands('test')(func)
    module.example('.test hello')(func)
    module.example('.test bonjour')(func)

    loader.clean_callable(func, tmpconfig)

    assert len(func._docs) == 1
    assert 'test' in func._docs

    docs = func._docs['test']
    assert len(docs) == 2
    assert docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert docs[1] == '.test hello'
コード例 #9
0
ファイル: test_loader.py プロジェクト: neonobjclash/sopel
def test_clean_callable_example_default_prefix(tmpconfig, func):
    module.commands('test')(func)
    module.example('.test hello')(func)

    tmpconfig.core.help_prefix = '!'
    loader.clean_callable(func, tmpconfig)

    assert len(func._docs) == 1
    assert 'test' in func._docs

    docs = func._docs['test']
    assert len(docs) == 2
    assert docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert docs[1] == '!test hello'
コード例 #10
0
ファイル: test_loader.py プロジェクト: neonobjclash/sopel
def test_clean_callable_example_first_only(tmpconfig, func):
    module.commands('test')(func)
    module.example('.test hello')(func)
    module.example('.test bonjour')(func)

    loader.clean_callable(func, tmpconfig)

    assert len(func._docs) == 1
    assert 'test' in func._docs

    docs = func._docs['test']
    assert len(docs) == 2
    assert docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert docs[1] == '.test hello'
コード例 #11
0
ファイル: test_loader.py プロジェクト: noahfx/slgt-sopel
def test_clean_callable_example_multi_commands(tmpconfig, func):
    module.commands('test')(func)
    module.commands('unit')(func)
    module.example('.test hello')(func)

    loader.clean_callable(func, tmpconfig)

    assert hasattr(func, '_docs')
    assert len(func._docs) == 2
    assert 'test' in func._docs
    assert 'unit' in func._docs

    test_docs = func._docs['test']
    unit_docs = func._docs['unit']
    assert len(test_docs) == 2
    assert test_docs == unit_docs

    assert test_docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert test_docs[1] == '.test hello'
コード例 #12
0
ファイル: test_loader.py プロジェクト: neonobjclash/sopel
def test_clean_callable_example_multi_commands(tmpconfig, func):
    module.commands('test')(func)
    module.commands('unit')(func)
    module.example('.test hello')(func)

    loader.clean_callable(func, tmpconfig)

    assert hasattr(func, '_docs')
    assert len(func._docs) == 2
    assert 'test' in func._docs
    assert 'unit' in func._docs

    test_docs = func._docs['test']
    unit_docs = func._docs['unit']
    assert len(test_docs) == 2
    assert test_docs == unit_docs

    assert test_docs[0] == inspect.cleandoc(func.__doc__).splitlines()
    assert test_docs[1] == '.test hello'
コード例 #13
0
ファイル: fixedreplies.py プロジェクト: loseitIRC/loseitbot
    'NSV\?':
    'NSV means non-scale victory.  See https://www.reddit.com/r/loseit/wiki/faq',
    '.*NSV mean\?':
    'NSV means non-scale victory.  See https://www.reddit.com/r/loseit/wiki/faq',
    'GW\?':
    'GW means goal weight.  See https://www.reddit.com/r/loseit/wiki/faq',
    '.*GW mean\?':
    'GW means goal weight.  See https://www.reddit.com/r/loseit/wiki/faq'
}

#@module.commands(*commands.keys())
#@module.example('.' + ', .'.join(commands.keys()))
#def linkreply(bot, trigger):
#    bot.reply(commands[trigger.group(1).lower()])


def spontaneous_reply(bot, trigger):
    bot.say(patterns[trigger.match.re.pattern])


for pattern in patterns.keys():
    module.rule(pattern)(spontaneous_reply)


def link_reply(bot, trigger):
    bot.reply(commands[trigger.group(1).lower()])


for command in commands.keys():
    module.commands(command)(link_reply)
コード例 #14
0
ファイル: quotebot.py プロジェクト: examknow/ZppixBot-Source
from sopel import module
import sqlite3

module.commands('pickquote')
def pickQuote(bot, trigger):
  conn = sqlite3.connect('/data/project/zppixbot/.sopel/plugins/quotes.db')
  cursor = conn.execute("SELECT * from quotes ORDER BY RANDOM() LIMIT 1;")
     quote = row[0]
     author = row[1]
  for row in cursor:
     bot.say(quote + " - " + author)
     conn.close()