Wikidata client and property
This commit is contained in:
parent
431962c02f
commit
a9e2cb3ccc
|
@ -1 +1,2 @@
|
|||
pytest
|
||||
wikidata
|
||||
|
|
5
test/test_data.py
Normal file
5
test/test_data.py
Normal file
|
@ -0,0 +1,5 @@
|
|||
import socials_util
|
||||
|
||||
def test_is_aggregator():
|
||||
assert not socials_util.SocialSiteId.PAGE_WATCH.is_aggregator()
|
||||
assert not socials_util.SocialSiteId.FALKON_PROFILE_BOOKMARKS.is_aggregator()
|
|
@ -1,7 +1,12 @@
|
|||
import pytest
|
||||
import aenum
|
||||
|
||||
import socials_util
|
||||
|
||||
def test_re_social_path_validation():
|
||||
with pytest.raises(ValueError):
|
||||
socials_util.re_social_path('www.example.org')
|
||||
|
||||
|
||||
def test_extension():
|
||||
my_secret_site = aenum.extend_enum(socials_util.SocialSiteId, 'MY_SECRET_SITE', 666)
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
import pytest
|
||||
|
||||
import urllib.parse
|
||||
import socials_util
|
||||
from socials_util import SocialLink, SocialSiteId, determine_social_from_url
|
||||
|
||||
PARSABLE_SOCIAL_IDS_COMBINED: list[tuple[str, object, str]] = [
|
||||
PARSABLE_SOCIAL_IDS_COMBINED: list[tuple[str, object, str | None]] = [
|
||||
# Tumblr formats
|
||||
('https://triviallytrue.tumblr.com/', SocialSiteId.TUMBLR, 'triviallytrue'),
|
||||
('https://www.triviallytrue.tumblr.com/', SocialSiteId.TUMBLR, 'triviallytrue'),
|
||||
|
@ -186,6 +188,13 @@ PARSABLE_SOCIAL_IDS_COMBINED: list[tuple[str, object, str]] = [
|
|||
# Cara
|
||||
('https://cara.app/simzart', SocialSiteId.CARA_PROFILE, 'simzart'),
|
||||
('https://cara.app/simzart/all', SocialSiteId.CARA_PROFILE, 'simzart'),
|
||||
|
||||
# Mastodon
|
||||
('https://idlethumbs.social/@testtest', SocialSiteId.MASTODON_PAGE, None),
|
||||
('https://mastodon.example.org/testtest', SocialSiteId.MASTODON_PAGE, None),
|
||||
|
||||
# Feeds
|
||||
('https://example.org/main.atom', SocialSiteId.RSS_FEED, None),
|
||||
]
|
||||
|
||||
NOT_PARSABLE = [
|
||||
|
@ -213,3 +222,15 @@ def test_parse_social_ids(url: str, expected_social_site_id: SocialSiteId, expec
|
|||
@pytest.mark.parametrize('url', NOT_PARSABLE)
|
||||
def test_not_parsable(url: str) -> None:
|
||||
assert determine_social_from_url(url) is None
|
||||
|
||||
def test_wrong_parse_type() -> None:
|
||||
with pytest.raises(TypeError):
|
||||
assert socials_util.to_parse_result(None)
|
||||
|
||||
def test_from_parse_result() -> None:
|
||||
urlresult = urllib.parse.urlparse('https://old.reddit.com/user/Harpsibored/submitted/')
|
||||
assert socials_util.to_parse_result(urlresult) is urlresult
|
||||
|
||||
def test_determine_social_from_url_internally() -> None:
|
||||
with pytest.raises(TypeError):
|
||||
assert socials_util.determine_social_from_url_internally(None)
|
||||
|
|
9
test/test_wikidata_property.py
Normal file
9
test/test_wikidata_property.py
Normal file
|
@ -0,0 +1,9 @@
|
|||
import pytest
|
||||
import socials_util
|
||||
import wikidata
|
||||
|
||||
|
||||
def test_wikidata_properties():
|
||||
wikidata_client = wikidata.client.Client()
|
||||
wikidata_property = socials_util.SocialSiteId.RSS_FEED.wikidata_property(wikidata_client)
|
||||
assert wikidata_property is not None
|
Loading…
Reference in New Issue
Block a user