29 lines
No EOL
804 B
Python
29 lines
No EOL
804 B
Python
from wiki_postbot.bot import WikiPostBot
|
|
from wiki_postbot.actions import commands
|
|
import pytest
|
|
from tweepy import Tweet, StreamResponse
|
|
|
|
|
|
@pytest.mark.parametrize(
|
|
['test_str', 'test_res'],
|
|
[
|
|
(
|
|
'@threadodo_bot identify\nname: Myname T. Identifier\norcid: 101001010101010',
|
|
{'username': 'threadodo_bot', 'command': 'identify',
|
|
'args': {
|
|
'name': 'Myname T. Identifier',
|
|
'orcid': '101001010101010'
|
|
}}
|
|
)
|
|
] )
|
|
|
|
def test_parse_identity(test_str, test_res):
|
|
bot = WikiPostBot()
|
|
response = StreamResponse(Tweet({'text':test_str, 'id':'1095'}), {}, {}, {})
|
|
id = commands.Identify(bot)
|
|
|
|
assert id.check(response)
|
|
|
|
params = id.parse(response)
|
|
|
|
assert params.__dict__ == test_res |