Plurk: rewrite tests
This commit is contained in:
@@ -2,105 +2,75 @@ require "test_helper"
|
||||
|
||||
module Sources
|
||||
class PlurkTest < ActiveSupport::TestCase
|
||||
context "The source for a Plurk picture" do
|
||||
setup do
|
||||
@post_url = "https://www.plurk.com/p/om6zv4"
|
||||
@adult_post_url = "https://www.plurk.com/p/omc64y"
|
||||
@image_url = "https://images.plurk.com/5wj6WD0r6y4rLN0DL3sqag.jpg"
|
||||
@profile_url = "https://www.plurk.com/redeyehare"
|
||||
@post1 = Source::Extractor.find(@post_url)
|
||||
@post2 = Source::Extractor.find(@image_url)
|
||||
@post3 = Source::Extractor.find(@profile_url)
|
||||
@post4 = Source::Extractor.find(@adult_post_url)
|
||||
end
|
||||
context "A plurk post" do
|
||||
strategy_should_work(
|
||||
"https://www.plurk.com/p/om6zv4",
|
||||
image_urls: ["https://images.plurk.com/5wj6WD0r6y4rLN0DL3sqag.jpg"],
|
||||
download_size: 627_697,
|
||||
artist_name: "紅眼兔@姑且是個畫圖的",
|
||||
tag_name: "redeyehare",
|
||||
profile_url: "https://www.plurk.com/redeyehare",
|
||||
dtext_artist_commentary_desc: "Trick or Treat!\n很久沒畫萬聖賀圖了,畫一波大的 感覺持續復健中"
|
||||
)
|
||||
end
|
||||
|
||||
should "not raise errors" do
|
||||
assert_nothing_raised { @post1.to_h }
|
||||
assert_nothing_raised { @post2.to_h }
|
||||
assert_nothing_raised { @post3.to_h }
|
||||
assert_nothing_raised { @post4.to_h }
|
||||
end
|
||||
|
||||
should "get the artist name" do
|
||||
assert_equal("紅眼兔@姑且是個畫圖的", @post1.artist_name)
|
||||
assert_equal("redeyehare", @post1.tag_name)
|
||||
assert_equal("BOW99", @post4.tag_name)
|
||||
end
|
||||
|
||||
should "get profile url" do
|
||||
assert_equal(@profile_url, @post1.profile_url)
|
||||
end
|
||||
|
||||
should "get the image url" do
|
||||
assert_equal([@image_url], @post1.image_urls)
|
||||
assert_equal([@image_url], @post2.image_urls)
|
||||
end
|
||||
|
||||
should "get the image urls for an adult post" do
|
||||
images = %w[
|
||||
https://images.plurk.com/yfnumBJqqoQt50Em6xKwf.png
|
||||
https://images.plurk.com/5NaqqO3Yi6bQW1wKXq1Dc2.png
|
||||
https://images.plurk.com/3HzNcbMhCozHPk5YY8j9fI.png
|
||||
https://images.plurk.com/2e0duwn8BpSW9MGuUvbrim.png
|
||||
https://images.plurk.com/1OuiMDp82hYPEUn64CWFFB.png
|
||||
https://images.plurk.com/3F3KzZOabeMYkgTeseEZ0r.png
|
||||
https://images.plurk.com/7onKKTAIXkY4pASszrBys8.png
|
||||
https://images.plurk.com/6aotmjLGbtMLiI3slN7ODv.png
|
||||
https://images.plurk.com/6pzn7jE2nkj9EV7H25L0x1.png
|
||||
https://images.plurk.com/yA8egjDuhy0eNG9yxRj1d.png
|
||||
https://images.plurk.com/55tbTkH3cKTTYkZe9fu1Pv.png
|
||||
https://images.plurk.com/5z64F9uUipJ0fMJWXNGHTw.png
|
||||
https://images.plurk.com/6cwurMe6jymEu6INzmyg74.png
|
||||
https://images.plurk.com/7zyTReS8UVyCFYtU1DJRYt.png
|
||||
https://images.plurk.com/1PiRWGzaXozU15Scx1ZC4T.png
|
||||
https://images.plurk.com/2xzB5qacdLVV75GhaFifaY.png
|
||||
https://images.plurk.com/7uQENFmFNtWSKF0AAQKffr.png
|
||||
https://images.plurk.com/7ChGLokdAezvbEjPCLUr8f.png
|
||||
https://images.plurk.com/3AzjLxynamDGxNDTq4wt5x.png
|
||||
https://images.plurk.com/3SYjvKc3IBbz6ZXWeG1pY8.png
|
||||
https://images.plurk.com/7bk2kYN2fEVV0kiT5qoiuO.png
|
||||
https://images.plurk.com/6mgCwWjSqOfi0BtSg6THcZ.png
|
||||
https://images.plurk.com/3BwtMvr6S13gr96r5TLIFd.png
|
||||
https://images.plurk.com/22CPzkRM71frDR5eRMPthC.png
|
||||
https://images.plurk.com/1IFScoxA7m0FXNu6XirBwa.jpg
|
||||
https://images.plurk.com/5v1ZXQxbS7ocV4BybwbCSs.jpg
|
||||
https://images.plurk.com/4n1og7pg4KP3wRYSKpFzF7.png
|
||||
https://images.plurk.com/5gK1PyPTrVYoeZBr10lEYu.png
|
||||
https://images.plurk.com/3m8YZS3D9vaAH8Lw1LDTix.png
|
||||
https://images.plurk.com/3oy7joPrEFm0Wlo7NplXOl.png
|
||||
https://images.plurk.com/2IBA93ghmCJCJT72mQyLUK.png
|
||||
https://images.plurk.com/16jqEhVqtuLJwnRjpIDRCr.png
|
||||
https://images.plurk.com/7cKzaSigAvKc6DKNxeGmnH.png
|
||||
https://images.plurk.com/ypfkOMsC24hIPGSEWjJ8A.png
|
||||
https://images.plurk.com/5qW11yr06e9u3t5Zt9Jxmm.png
|
||||
https://images.plurk.com/4H5st1xsFDSFgLd7gNXgD8.png
|
||||
https://images.plurk.com/4nf49mWygwQyrYriZ453Qx.png
|
||||
https://images.plurk.com/2Y0TXcYZkni94j7yxxosV9.png
|
||||
https://images.plurk.com/5ih71C9XNJDq88wzKbBdNp.png
|
||||
https://images.plurk.com/UmoZjSHx0Y4NYa3mgKffU.png
|
||||
https://images.plurk.com/4IHGG5mQNw95vqClFEBoOM.png
|
||||
https://images.plurk.com/5J3bRPjGBZV8fDxo7cTwGs.png
|
||||
https://images.plurk.com/3uAjR5oBfe4d6MFThFQ0Gt.png
|
||||
https://images.plurk.com/3fFJ8RN3HkmfcuUdn7OpnQ.png
|
||||
https://images.plurk.com/sxkaWnhmDrCSsUEg6Kn9Y.png
|
||||
https://images.plurk.com/1f3W8JnHlwpt3OlT4ZJhiu.gif
|
||||
https://images.plurk.com/5lNGKqPCf6opXu21f5DdbU.gif
|
||||
context "An adult plurk post" do
|
||||
strategy_should_work(
|
||||
"https://www.plurk.com/p/omc64y",
|
||||
profile_url: "https://www.plurk.com/BOW99",
|
||||
artist_name: "BOW🔞",
|
||||
tag_name: "BOW99",
|
||||
dtext_artist_commentary_desc: "[十月號]",
|
||||
image_urls: [
|
||||
"https://images.plurk.com/yfnumBJqqoQt50Em6xKwf.png",
|
||||
"https://images.plurk.com/5NaqqO3Yi6bQW1wKXq1Dc2.png",
|
||||
"https://images.plurk.com/3HzNcbMhCozHPk5YY8j9fI.png",
|
||||
"https://images.plurk.com/2e0duwn8BpSW9MGuUvbrim.png",
|
||||
"https://images.plurk.com/1OuiMDp82hYPEUn64CWFFB.png",
|
||||
"https://images.plurk.com/3F3KzZOabeMYkgTeseEZ0r.png",
|
||||
"https://images.plurk.com/7onKKTAIXkY4pASszrBys8.png",
|
||||
"https://images.plurk.com/6aotmjLGbtMLiI3slN7ODv.png",
|
||||
"https://images.plurk.com/6pzn7jE2nkj9EV7H25L0x1.png",
|
||||
"https://images.plurk.com/yA8egjDuhy0eNG9yxRj1d.png",
|
||||
"https://images.plurk.com/55tbTkH3cKTTYkZe9fu1Pv.png",
|
||||
"https://images.plurk.com/5z64F9uUipJ0fMJWXNGHTw.png",
|
||||
"https://images.plurk.com/6cwurMe6jymEu6INzmyg74.png",
|
||||
"https://images.plurk.com/7zyTReS8UVyCFYtU1DJRYt.png",
|
||||
"https://images.plurk.com/1PiRWGzaXozU15Scx1ZC4T.png",
|
||||
"https://images.plurk.com/2xzB5qacdLVV75GhaFifaY.png",
|
||||
"https://images.plurk.com/7uQENFmFNtWSKF0AAQKffr.png",
|
||||
"https://images.plurk.com/7ChGLokdAezvbEjPCLUr8f.png",
|
||||
"https://images.plurk.com/3AzjLxynamDGxNDTq4wt5x.png",
|
||||
"https://images.plurk.com/3SYjvKc3IBbz6ZXWeG1pY8.png",
|
||||
"https://images.plurk.com/7bk2kYN2fEVV0kiT5qoiuO.png",
|
||||
"https://images.plurk.com/6mgCwWjSqOfi0BtSg6THcZ.png",
|
||||
"https://images.plurk.com/3BwtMvr6S13gr96r5TLIFd.png",
|
||||
"https://images.plurk.com/22CPzkRM71frDR5eRMPthC.png",
|
||||
"https://images.plurk.com/1IFScoxA7m0FXNu6XirBwa.jpg",
|
||||
"https://images.plurk.com/5v1ZXQxbS7ocV4BybwbCSs.jpg",
|
||||
"https://images.plurk.com/4n1og7pg4KP3wRYSKpFzF7.png",
|
||||
"https://images.plurk.com/5gK1PyPTrVYoeZBr10lEYu.png",
|
||||
"https://images.plurk.com/3m8YZS3D9vaAH8Lw1LDTix.png",
|
||||
"https://images.plurk.com/3oy7joPrEFm0Wlo7NplXOl.png",
|
||||
"https://images.plurk.com/2IBA93ghmCJCJT72mQyLUK.png",
|
||||
"https://images.plurk.com/16jqEhVqtuLJwnRjpIDRCr.png",
|
||||
"https://images.plurk.com/7cKzaSigAvKc6DKNxeGmnH.png",
|
||||
"https://images.plurk.com/ypfkOMsC24hIPGSEWjJ8A.png",
|
||||
"https://images.plurk.com/5qW11yr06e9u3t5Zt9Jxmm.png",
|
||||
"https://images.plurk.com/4H5st1xsFDSFgLd7gNXgD8.png",
|
||||
"https://images.plurk.com/4nf49mWygwQyrYriZ453Qx.png",
|
||||
"https://images.plurk.com/2Y0TXcYZkni94j7yxxosV9.png",
|
||||
"https://images.plurk.com/5ih71C9XNJDq88wzKbBdNp.png",
|
||||
"https://images.plurk.com/UmoZjSHx0Y4NYa3mgKffU.png",
|
||||
"https://images.plurk.com/4IHGG5mQNw95vqClFEBoOM.png",
|
||||
"https://images.plurk.com/5J3bRPjGBZV8fDxo7cTwGs.png",
|
||||
"https://images.plurk.com/3uAjR5oBfe4d6MFThFQ0Gt.png",
|
||||
"https://images.plurk.com/3fFJ8RN3HkmfcuUdn7OpnQ.png",
|
||||
"https://images.plurk.com/sxkaWnhmDrCSsUEg6Kn9Y.png",
|
||||
"https://images.plurk.com/1f3W8JnHlwpt3OlT4ZJhiu.gif",
|
||||
"https://images.plurk.com/5lNGKqPCf6opXu21f5DdbU.gif",
|
||||
]
|
||||
|
||||
assert_equal(images, @post4.image_urls)
|
||||
end
|
||||
|
||||
should "download an image" do
|
||||
assert_downloaded(627_697, @post1.image_urls.sole)
|
||||
assert_downloaded(627_697, @post2.image_urls.sole)
|
||||
end
|
||||
|
||||
should "find the correct artist" do
|
||||
@artist = FactoryBot.create(:artist, name: "redeyehare", url_string: @profile_url)
|
||||
assert_equal([@artist], @post1.artists)
|
||||
@adult_artist = FactoryBot.create(:artist, name: "bow", url_string: "https://www.plurk.com/BOW99")
|
||||
assert_equal([@adult_artist], @post4.artists)
|
||||
end
|
||||
)
|
||||
end
|
||||
|
||||
should "Parse Plurk URLs correctly" do
|
||||
|
||||
Reference in New Issue
Block a user