nitter/tests/test_timeline.py

55 lines
2.0 KiB
Python
Raw Normal View History

2019-06-28 22:42:53 +00:00
from base import BaseTestCase, Timeline
from parameterized import parameterized
normal = [['mobile_test'], ['mobile_test_2']]
2020-06-01 00:25:56 +00:00
after = [['mobile_test', 'HBaAgJPsqtGNhA0AAA%3D%3D'],
['mobile_test_2', 'HBaAgJPsqtGNhA0AAA%3D%3D']]
2019-06-28 22:42:53 +00:00
2020-06-01 00:25:56 +00:00
no_more = [['mobile_test_8?cursor=HBaAwJCsk%2F6%2FtgQAAA%3D%3D']]
2019-06-28 22:42:53 +00:00
2020-06-01 00:25:56 +00:00
empty = [['emptyuser'], ['mobile_test_10']]
2019-06-28 22:42:53 +00:00
2020-06-01 00:25:56 +00:00
protected = [['mobile_test_7'], ['Empty_user']]
2019-06-28 22:42:53 +00:00
class TweetTest(BaseTestCase):
@parameterized.expand(normal)
def test_timeline(self, username):
self.open_nitter(username)
self.assert_element_present(Timeline.older)
self.assert_element_absent(Timeline.newest)
self.assert_element_absent(Timeline.end)
self.assert_element_absent(Timeline.none)
@parameterized.expand(after)
2020-06-01 00:25:56 +00:00
def test_after(self, username, cursor):
self.open_nitter(f'{username}?cursor={cursor}')
2019-06-28 22:42:53 +00:00
self.assert_element_present(Timeline.newest)
self.assert_element_present(Timeline.older)
self.assert_element_absent(Timeline.end)
self.assert_element_absent(Timeline.none)
@parameterized.expand(no_more)
def test_no_more(self, username):
self.open_nitter(username)
2019-09-19 00:29:24 +00:00
self.assert_text('No more items', Timeline.end)
2019-06-28 22:42:53 +00:00
self.assert_element_present(Timeline.newest)
self.assert_element_absent(Timeline.older)
@parameterized.expand(empty)
def test_empty(self, username):
self.open_nitter(username)
2019-09-19 00:29:24 +00:00
self.assert_text('No items found', Timeline.none)
2019-06-28 22:42:53 +00:00
self.assert_element_absent(Timeline.newest)
self.assert_element_absent(Timeline.older)
self.assert_element_absent(Timeline.end)
@parameterized.expand(protected)
def test_protected(self, username):
self.open_nitter(username)
self.assert_text('This account\'s tweets are protected.', Timeline.protected)
self.assert_element_absent(Timeline.newest)
self.assert_element_absent(Timeline.older)
self.assert_element_absent(Timeline.end)