Mastodon.py/tests/test_constructor.py

48 wiersze
1.6 KiB
Python

2017-11-27 14:18:18 +00:00
import pytest
from mastodon import Mastodon
from mastodon.Mastodon import MastodonIllegalArgumentError
def test_constructor_from_filenames(tmpdir):
client = tmpdir.join('client')
2017-11-27 19:51:12 +00:00
client.write_text(u'foo\nbar\n', 'UTF-8')
access = tmpdir.join('access')
2017-11-27 19:51:12 +00:00
access.write_text(u'baz\n', 'UTF-8')
2017-11-27 14:18:18 +00:00
api = Mastodon(
2022-11-24 22:09:54 +00:00
str(client),
access_token=str(access),
api_base_url="mastodon.social"
)
2017-11-27 14:18:18 +00:00
assert api.client_id == 'foo'
assert api.client_secret == 'bar'
assert api.access_token == 'baz'
def test_constructor_illegal_ratelimit():
with pytest.raises(MastodonIllegalArgumentError):
2022-11-27 22:55:41 +00:00
api = Mastodon('foo', client_secret='bar', ratelimit_method='baz', api_base_url="whatever")
def test_constructor_no_url():
with pytest.raises(MastodonIllegalArgumentError):
api = Mastodon('foo', client_secret='bar')
with pytest.raises(MastodonIllegalArgumentError):
api = Mastodon(access_token='baz')
2017-11-27 14:18:18 +00:00
2018-05-06 00:50:54 +00:00
def test_constructor_illegal_versioncheckmode():
with pytest.raises(MastodonIllegalArgumentError):
api = Mastodon(
'foo', client_secret='bar',
version_check_mode='baz')
2017-11-27 14:18:18 +00:00
def test_constructor_missing_client_secret():
with pytest.raises(MastodonIllegalArgumentError):
api = Mastodon('foo')
2018-05-06 00:50:54 +00:00
@pytest.mark.vcr()
def test_verify_version(api):
2022-11-20 19:22:48 +00:00
assert api.verify_minimum_version("2.3.3") is True
assert api.verify_minimum_version("9999.9999.9999") is False
assert api.verify_minimum_version("1.0.0") is True
2018-06-04 18:55:44 +00:00
def test_supported_version(api):
assert Mastodon.get_supported_version()