diff options
author | codl <[email protected]> | 2017-11-27 22:52:19 +0100 |
---|---|---|
committer | codl <[email protected]> | 2017-11-27 22:52:19 +0100 |
commit | c73fd26729e8266374bc89f50cae5c429bf6122e (patch) | |
tree | 698a340e691aa236ba1eed94971594762bdd2e56 /tests/test_status.py | |
parent | 26eb1004bba411345b8f8bb1beb72b6a9efbb954 (diff) | |
download | mastodon.py-c73fd26729e8266374bc89f50cae5c429bf6122e.tar.gz |
add tests for writing statuses
Diffstat (limited to 'tests/test_status.py')
-rw-r--r-- | tests/test_status.py | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/tests/test_status.py b/tests/test_status.py index 971940a..a5b8b3a 100644 --- a/tests/test_status.py +++ b/tests/test_status.py | |||
@@ -1,5 +1,6 @@ | |||
1 | import pytest | 1 | import pytest |
2 | from mastodon.Mastodon import MastodonAPIError | 2 | from mastodon.Mastodon import MastodonAPIError |
3 | from time import sleep | ||
3 | 4 | ||
4 | @pytest.mark.vcr() | 5 | @pytest.mark.vcr() |
5 | def test_status(status, api): | 6 | def test_status(status, api): |
@@ -33,3 +34,58 @@ def test_status_favourited_by(status, api): | |||
33 | api.status_favourite(status['id']) | 34 | api.status_favourite(status['id']) |
34 | favourites = api.status_favourited_by(status['id']) | 35 | favourites = api.status_favourited_by(status['id']) |
35 | assert favourites | 36 | assert favourites |
37 | |||
38 | @pytest.mark.vcr() | ||
39 | def test_toot(api): | ||
40 | status = api.toot('Toot!') | ||
41 | try: | ||
42 | assert status | ||
43 | finally: | ||
44 | api.status_delete(status['id']) | ||
45 | |||
46 | @pytest.mark.vcr() | ||
47 | @pytest.mark.parametrize('visibility', ('', 'direct', 'private', 'unlisted', 'public', | ||
48 | pytest.param('foobar', marks=pytest.mark.xfail()))) | ||
49 | @pytest.mark.parametrize('spoiler_text', (None, 'Content warning')) | ||
50 | def test_status_post(api, visibility, spoiler_text): | ||
51 | status = api.status_post( | ||
52 | 'Toot!', | ||
53 | visibility=visibility, | ||
54 | spoiler_text=spoiler_text) | ||
55 | try: | ||
56 | assert status | ||
57 | if visibility: | ||
58 | assert status['visibility'] == visibility | ||
59 | if spoiler_text: | ||
60 | assert status['spoiler_text'] == spoiler_text | ||
61 | finally: | ||
62 | api.status_delete(status['id']) | ||
63 | |||
64 | @pytest.mark.vcr() | ||
65 | def test_status_reblog_unreblog(status, api): | ||
66 | reblog = api.status_reblog(status['id']) | ||
67 | assert reblog | ||
68 | |||
69 | status = reblog['reblog'] | ||
70 | assert status['reblogged'] | ||
71 | |||
72 | status = api.status_unreblog(status['id']) | ||
73 | assert not status['reblogged'] | ||
74 | |||
75 | |||
76 | @pytest.mark.vcr() | ||
77 | def test_status_fav_unfav(status, api): | ||
78 | status = api.status_favourite(status['id']) | ||
79 | assert status['favourited'] | ||
80 | |||
81 | status = api.status_unfavourite(status['id']) | ||
82 | assert not status['favourited'] | ||
83 | |||
84 | |||
85 | @pytest.mark.vcr() | ||
86 | def test_status_mute_unmute(status, api): | ||
87 | status = api.status_mute(status['id']) | ||
88 | assert status['muted'] | ||
89 | |||
90 | status = api.status_unmute(status['id']) | ||
91 | assert not status['muted'] | ||