twitter: fix batch bookmarklet selecting wrong image.
Fix regression in 7e465aeda.
https://danbooru.donmai.us/forum_topics/9127?page=276#forum_post_158779
This commit is contained in:
@@ -1,14 +1,13 @@
|
|||||||
module Sources::Strategies
|
module Sources::Strategies
|
||||||
class Twitter < Base
|
class Twitter < Base
|
||||||
PAGE = %r!\Ahttps?://(?:mobile\.)?twitter\.com!i
|
PAGE = %r!\Ahttps?://(?:mobile\.)?twitter\.com!i
|
||||||
ASSET = %r!\A(https?://(?:video|pbs)\.twimg\.com/media/)!i
|
|
||||||
PROFILE = %r!\Ahttps?://(?:mobile\.)?twitter.com/(?<username>[a-z0-9_]+)!i
|
PROFILE = %r!\Ahttps?://(?:mobile\.)?twitter.com/(?<username>[a-z0-9_]+)!i
|
||||||
|
|
||||||
# https://pbs.twimg.com/media/EBGbJe_U8AA4Ekb.jpg
|
# https://pbs.twimg.com/media/EBGbJe_U8AA4Ekb.jpg
|
||||||
# https://pbs.twimg.com/media/EBGbJe_U8AA4Ekb?format=jpg&name=900x900
|
# https://pbs.twimg.com/media/EBGbJe_U8AA4Ekb?format=jpg&name=900x900
|
||||||
BASE_IMAGE_URL = %r!\Ahttps?://pbs\.twimg\.com/media!i
|
BASE_IMAGE_URL = %r!\Ahttps?://pbs\.twimg\.com/media!i
|
||||||
FILENAME1 = %r!(?<file_name>\w+)\.(?<file_ext>\w+)!i
|
FILENAME1 = %r!(?<file_name>[a-zA-Z0-9_-]+)\.(?<file_ext>\w+)!i
|
||||||
FILENAME2 = %r!(?<file_name>\w+)\?.*format=(?<file_ext>\w+)!i
|
FILENAME2 = %r!(?<file_name>[a-zA-Z0-9_-]+)\?.*format=(?<file_ext>\w+)!i
|
||||||
IMAGE_URL = %r!#{BASE_IMAGE_URL}/#{Regexp.union(FILENAME1, FILENAME2)}!i
|
IMAGE_URL = %r!#{BASE_IMAGE_URL}/#{Regexp.union(FILENAME1, FILENAME2)}!i
|
||||||
|
|
||||||
# Twitter provides a list but it's inaccurate; some names ('intent') aren't
|
# Twitter provides a list but it's inaccurate; some names ('intent') aren't
|
||||||
|
|||||||
@@ -189,6 +189,11 @@ module Sources
|
|||||||
assert_equal(["https://pbs.twimg.com/media/EBGp2YdUYAA19Uj.jpg:orig"], @site.image_urls)
|
assert_equal(["https://pbs.twimg.com/media/EBGp2YdUYAA19Uj.jpg:orig"], @site.image_urls)
|
||||||
assert_equal("https://pbs.twimg.com/media/EBGp2YdUYAA19Uj.jpg:orig", @site.canonical_url)
|
assert_equal("https://pbs.twimg.com/media/EBGp2YdUYAA19Uj.jpg:orig", @site.canonical_url)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
should "work for filenames containing dashes" do
|
||||||
|
@site = Sources::Strategies.find("https://pbs.twimg.com/media/EAjc-OWVAAAxAgQ.jpg", "https://twitter.com/asteroid_ill/status/1155420330128625664")
|
||||||
|
assert_equal("https://pbs.twimg.com/media/EAjc-OWVAAAxAgQ.jpg:orig", @site.image_url)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
context "The source site for a https://twitter.com/i/web/status/:id url" do
|
context "The source site for a https://twitter.com/i/web/status/:id url" do
|
||||||
|
|||||||
Reference in New Issue
Block a user