2018-05-06 15:42:38 +02:00
|
|
|
import pytest
|
2018-06-05 22:10:31 +02:00
|
|
|
import time
|
2018-05-06 15:42:38 +02:00
|
|
|
|
|
|
|
@pytest.fixture()
|
|
|
|
def mastodon_list(api):
|
|
|
|
mastodon_list = api.list_create('ham burglars')
|
|
|
|
yield mastodon_list
|
|
|
|
api.list_delete(mastodon_list)
|
|
|
|
|
|
|
|
@pytest.mark.vcr()
|
|
|
|
def test_list_create(api, mastodon_list):
|
|
|
|
assert mastodon_list in api.lists()
|
|
|
|
|
|
|
|
@pytest.mark.vcr()
|
|
|
|
def test_list_update(api, mastodon_list):
|
|
|
|
mastodon_list_modified = api.list_update(mastodon_list, 'fry kids')
|
|
|
|
assert not mastodon_list in api.lists()
|
|
|
|
assert mastodon_list_modified in api.lists()
|
|
|
|
assert api.list(mastodon_list) == mastodon_list_modified
|
|
|
|
|
|
|
|
@pytest.mark.vcr()
|
|
|
|
def test_list_add_remove_account(api, api2, mastodon_list):
|
|
|
|
user = api2.account_verify_credentials()
|
|
|
|
|
|
|
|
api.account_follow(user)
|
|
|
|
api.list_accounts_add(mastodon_list, user)
|
|
|
|
assert user.id in map(lambda x: x.id, api.list_accounts(mastodon_list))
|
|
|
|
|
|
|
|
api.account_unfollow(user)
|
|
|
|
assert len(api.list_accounts(mastodon_list)) == 0
|
|
|
|
|
|
|
|
api.account_follow(user)
|
|
|
|
api.list_accounts_add(mastodon_list, user)
|
|
|
|
assert user.id in map(lambda x: x.id, api.list_accounts(mastodon_list))
|
|
|
|
|
|
|
|
api.list_accounts_delete(mastodon_list, user)
|
|
|
|
assert len(api.list_accounts(mastodon_list)) == 0
|
|
|
|
|
|
|
|
api.account_unfollow(user)
|
|
|
|
|
|
|
|
@pytest.mark.vcr()
|
|
|
|
def test_list_by_account(api, api2, mastodon_list):
|
|
|
|
user = api2.account_verify_credentials()
|
|
|
|
|
|
|
|
api.account_follow(user)
|
|
|
|
api.list_accounts_add(mastodon_list, user)
|
|
|
|
assert mastodon_list in api.account_lists(user)
|
|
|
|
api.account_unfollow(user)
|
|
|
|
|
|
|
|
@pytest.mark.vcr()
|
|
|
|
def test_list_timeline(api, api2, mastodon_list):
|
|
|
|
user = api2.account_verify_credentials()
|
|
|
|
|
|
|
|
api.account_follow(user)
|
|
|
|
api.list_accounts_add(mastodon_list, user)
|
|
|
|
|
|
|
|
status = api2.status_post("I have never stolen a ham in my life.", visibility="public")
|
2018-06-05 22:10:31 +02:00
|
|
|
time.sleep(2)
|
|
|
|
list_tl = list(map(lambda x: x.id, api.timeline_list(mastodon_list)))
|
|
|
|
assert status.id in list_tl
|
2018-05-06 15:42:38 +02:00
|
|
|
|
|
|
|
api2.status_delete(status)
|
|
|
|
api.account_unfollow(user)
|
|
|
|
|