This commit is contained in:
evazion
2022-03-18 16:57:24 -05:00
parent 512c72bbc9
commit 26d23c49d0
2 changed files with 27 additions and 5 deletions

View File

@@ -15,17 +15,23 @@ class Source::URL::Mastodon < Source::URL
def parse
case [host, *path_segments]
# https://pawoo.net/@evazion
# https://baraag.net/@danbooru
in _, /^@/ => username
@username = username.delete_prefix("@")
# https://pawoo.net/@evazion/19451018
# https://baraag.net/@curator/102270656480174153
in _, /^@/ => username, /^\d+$/ => work_id, *rest
@username = username.delete_prefix("@")
@work_id = work_id
# https://pawoo.net/@evazion
# https://baraag.net/@danbooru
# https://baraag.net/@quietvice/media
in _, /^@/ => username, *rest
@username = username.delete_prefix("@")
# https://pawoo.net/users/esoraneko
# https://pawoo.net/users/khurata/media
in _, "users", username, *rest
@username = username
# https://pawoo.net/web/statuses/19451018
# https://pawoo.net/web/statuses/19451018/favorites
# https://baraag.net/web/statuses/102270656480174153

View File

@@ -168,6 +168,22 @@ class ArtistURLTest < ActiveSupport::TestCase
assert_equal("http://nijie.info/invalid.php/", url.normalized_url)
end
should "normalize pawoo.net urls" do
url = create(:artist_url, url: "http://pawoo.net/@evazion/19451018")
assert_equal("https://pawoo.net/@evazion", url.url)
assert_equal("http://pawoo.net/@evazion/", url.normalized_url)
url = create(:artist_url, url: "http://pawoo.net/users/evazion/media")
assert_equal("https://pawoo.net/@evazion", url.url)
assert_equal("http://pawoo.net/@evazion/", url.normalized_url)
end
should "normalize baraag.net urls" do
url = create(:artist_url, url: "http://baraag.net/@curator/102270656480174153")
assert_equal("https://baraag.net/@curator", url.url)
assert_equal("http://baraag.net/@curator/", url.normalized_url)
end
context "#search method" do
subject { ArtistURL }