skip 2.9.2 on 3.10 upwards since json broke somehow

pull/350/head
halcy 2023-06-24 01:56:19 +03:00
rodzic 4b4ecfe669
commit 26c1133395
3 zmienionych plików z 49 dodań i 38 usunięć

Wyświetl plik

@ -1,6 +1,7 @@
import pytest import pytest
import vcr import vcr
import time import time
import sys
@pytest.fixture() @pytest.fixture()
def mention(api2): def mention(api2):
@ -60,16 +61,19 @@ def test_notifications_dismiss(api, mention):
api.notifications_dismiss(notifications[0]) api.notifications_dismiss(notifications[0])
def test_notifications_dismiss_pre_2_9_2(api, api2): def test_notifications_dismiss_pre_2_9_2(api, api2):
with vcr.use_cassette('test_notifications_dismiss.yaml', cassette_library_dir='tests/cassettes_pre_2_9_2', record_mode='none'): if sys.version_info > (3, 9): # 3.10 and up will not load the json data and regenerating it would require a 2.9.2 instance
status = None pytest.skip("Test skipped for 3.10 and up")
try: else:
status = api2.status_post('@mastodonpy_test hello!') with vcr.use_cassette('test_notifications_dismiss.yaml', cassette_library_dir='tests/cassettes_pre_2_9_2', record_mode='none'):
notifications = api.notifications() status = None
api.verify_minimum_version("2.9.2", cached=False) try:
api.notifications_dismiss(notifications[0]) status = api2.status_post('@mastodonpy_test hello!')
finally: notifications = api.notifications()
if status is not None: api.verify_minimum_version("2.9.2", cached=False)
api2.status_delete(status) api.notifications_dismiss(notifications[0])
finally:
if status is not None:
api2.status_delete(status)
@pytest.mark.vcr() @pytest.mark.vcr()
def test_notifications_clear(api): def test_notifications_clear(api):

Wyświetl plik

@ -1,5 +1,6 @@
import pytest import pytest
import vcr import vcr
import sys
@pytest.mark.vcr() @pytest.mark.vcr()
def test_search(api): def test_search(api):
@ -15,20 +16,23 @@ def test_search(api):
assert len(results["accounts"]) == 0 assert len(results["accounts"]) == 0
def test_search_pre_2_9_2(api): def test_search_pre_2_9_2(api):
api.mastodon_major = 2 if sys.version_info > (3, 9): # 3.10 and up will not load the json data and regenerating it would require a 2.9.2 instance
api.mastodon_minor = 9 pytest.skip("Test skipped for 3.10 and up")
api.mastodon_patch = 1 else:
with vcr.use_cassette('test_search.yaml', cassette_library_dir='tests/cassettes_pre_2_9_2', record_mode='none'): api.mastodon_major = 2
results = api.search_v1('mastodonpy_test') api.mastodon_minor = 9
assert isinstance(results, dict) api.mastodon_patch = 1
with vcr.use_cassette('test_search.yaml', cassette_library_dir='tests/cassettes_pre_2_9_2', record_mode='none'):
results = api.search_v2('mastodonpy_test') results = api.search_v1('mastodonpy_test')
assert isinstance(results, dict) assert isinstance(results, dict)
results = api.search('mastodonpy_test') results = api.search_v2('mastodonpy_test')
assert isinstance(results, dict) assert isinstance(results, dict)
results = api.search('mastodonpy_test')
assert isinstance(results, dict)
results = api.search('mastodonpy_test', result_type="statuses") results = api.search('mastodonpy_test', result_type="statuses")
assert isinstance(results, dict) assert isinstance(results, dict)
assert len(results["hashtags"]) == 0 assert len(results["hashtags"]) == 0
assert len(results["accounts"]) == 0 assert len(results["accounts"]) == 0

Wyświetl plik

@ -12,6 +12,7 @@ import vcr
import time import time
import pickle import pickle
import os import os
import sys
@pytest.mark.vcr() @pytest.mark.vcr()
def test_status(status, api): def test_status(status, api):
@ -55,18 +56,20 @@ def test_status_card(api):
# Old-version card api # Old-version card api
def test_status_card_pre_2_9_2(api): def test_status_card_pre_2_9_2(api):
with vcr.use_cassette('test_status_card.yaml', cassette_library_dir='tests/cassettes_pre_2_9_2', record_mode='none'): if sys.version_info > (3, 9): # 3.10 and up will not load the json data and regenerating it would require a 2.9.2 instance
import time pytest.skip("Test skipped for 3.10 and up")
status = api.status_post("http://example.org/") else:
time.sleep(5) # Card generation may take time with vcr.use_cassette('test_status_card.yaml', cassette_library_dir='tests/cassettes_pre_2_9_2', record_mode='none'):
api.verify_minimum_version("2.9.2", cached=False) import time
card = api.status_card(status['id']) status = api.status_post("http://example.org/")
try: time.sleep(5) # Card generation may take time
assert card api.verify_minimum_version("2.9.2", cached=False)
assert card.url == "http://example.org/" card = api.status_card(status['id'])
finally: try:
api.status_delete(status['id']) assert card
assert card.url == "http://example.org/"
finally:
api.status_delete(status['id'])
@pytest.mark.vcr() @pytest.mark.vcr()
def test_status_context(status, api): def test_status_context(status, api):