mirror of
https://github.com/gryf/slack-backup.git
synced 2025-12-17 11:30:25 +01:00
Implementation of TextReporter
This commit is contained in:
51
tests/test_reporter.py
Normal file
51
tests/test_reporter.py
Normal file
@@ -0,0 +1,51 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from unittest import TestCase
|
||||
try:
|
||||
from unittest.mock import MagicMock
|
||||
except ImportError:
|
||||
from mock import MagicMock
|
||||
|
||||
from slack_backup import reporters as r
|
||||
|
||||
|
||||
class FakeUser(object):
|
||||
def __init__(self, slackid, name):
|
||||
self.slackid = slackid
|
||||
self.name = name
|
||||
|
||||
|
||||
class TestReporter(TestCase):
|
||||
|
||||
def setUp(self):
|
||||
|
||||
users = [FakeUser('U111AAAAA', 'user1'),
|
||||
FakeUser('U111BBBBB', 'user2'),
|
||||
FakeUser('U111CCCCC', 'funky_username1'),
|
||||
FakeUser('U111DDDDD', 'user-name°')]
|
||||
|
||||
args = MagicMock()
|
||||
args.output = 'logs'
|
||||
query1 = MagicMock()
|
||||
query1.all = MagicMock(return_value=users)
|
||||
query = MagicMock(return_value=query1)
|
||||
|
||||
self.reporter = r.TextReporter(args, query)
|
||||
|
||||
def test_regexp(self):
|
||||
text = 'Cras vestibulum <@U111AAAAA|user1> erat ultrices neque.'
|
||||
self.assertEqual(self.reporter._filter_slackid(text),
|
||||
'Cras vestibulum user1 erat ultrices neque.')
|
||||
|
||||
text = ('Cras vestibulum <@U111AAAAA|user1> erat ultrices '
|
||||
'<@U111AAAAA|user1> neque.')
|
||||
self.assertEqual(self.reporter._filter_slackid(text),
|
||||
'Cras vestibulum user1 erat ultrices user1 neque.')
|
||||
|
||||
text = ('<@U111BBBBB|user2>Praesent vel enim sed eros luctus '
|
||||
'imperdiet.\nMauris neque ante, <@U111DDDDD> placerat at, '
|
||||
'mollis vitae, faucibus quis, <@U111CCCCC>leo. Ut feugiat.')
|
||||
|
||||
# Praesent vel enim sed eros luctus imperdiet. Vivamus urna quam, congue
|
||||
# vulputate, convallis non, cursus cursus, risus. Quisque aliquet. Donec
|
||||
# vulputate egestas elit. Morbi dictum, sem sit amet aliquam.
|
||||
Reference in New Issue
Block a user