aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'tests/test_lists.py')
-rw-r--r--tests/test_lists.py61
1 files changed, 61 insertions, 0 deletions
diff --git a/tests/test_lists.py b/tests/test_lists.py
new file mode 100644
index 0000000..61300c8
--- /dev/null
+++ b/tests/test_lists.py
@@ -0,0 +1,61 @@
1import pytest
2
3@pytest.fixture()
4def mastodon_list(api):
5 mastodon_list = api.list_create('ham burglars')
6 yield mastodon_list
7 api.list_delete(mastodon_list)
8
9@pytest.mark.vcr()
10def test_list_create(api, mastodon_list):
11 assert mastodon_list in api.lists()
12
13@pytest.mark.vcr()
14def test_list_update(api, mastodon_list):
15 mastodon_list_modified = api.list_update(mastodon_list, 'fry kids')
16 assert not mastodon_list in api.lists()
17 assert mastodon_list_modified in api.lists()
18 assert api.list(mastodon_list) == mastodon_list_modified
19
20@pytest.mark.vcr()
21def test_list_add_remove_account(api, api2, mastodon_list):
22 user = api2.account_verify_credentials()
23
24 api.account_follow(user)
25 api.list_accounts_add(mastodon_list, user)
26 assert user.id in map(lambda x: x.id, api.list_accounts(mastodon_list))
27
28 api.account_unfollow(user)
29 assert len(api.list_accounts(mastodon_list)) == 0
30
31 api.account_follow(user)
32 api.list_accounts_add(mastodon_list, user)
33 assert user.id in map(lambda x: x.id, api.list_accounts(mastodon_list))
34
35 api.list_accounts_delete(mastodon_list, user)
36 assert len(api.list_accounts(mastodon_list)) == 0
37
38 api.account_unfollow(user)
39
40@pytest.mark.vcr()
41def test_list_by_account(api, api2, mastodon_list):
42 user = api2.account_verify_credentials()
43
44 api.account_follow(user)
45 api.list_accounts_add(mastodon_list, user)
46 assert mastodon_list in api.account_lists(user)
47 api.account_unfollow(user)
48
49@pytest.mark.vcr()
50def test_list_timeline(api, api2, mastodon_list):
51 user = api2.account_verify_credentials()
52
53 api.account_follow(user)
54 api.list_accounts_add(mastodon_list, user)
55
56 status = api2.status_post("I have never stolen a ham in my life.", visibility="public")
57 assert status.id in map(lambda x: x.id, api.timeline_list(mastodon_list))
58
59 api2.status_delete(status)
60 api.account_unfollow(user)
61 \ No newline at end of file
Powered by cgit v1.2.3 (git 2.41.0)