refactor source pixiv test
refactor pixiv download tests refactor upload test refactor nico seiga test refactor twitter tests
This commit is contained in:
@@ -2,11 +2,11 @@ require 'test_helper'
|
||||
|
||||
module Downloads
|
||||
class PixivTest < ActiveSupport::TestCase
|
||||
def assert_downloaded(expected_filesize, source, cassette, record = :once)
|
||||
def assert_downloaded(expected_filesize, source, cassette, record = nil)
|
||||
tempfile = Tempfile.new("danbooru-test")
|
||||
download = Downloads::File.new(source, tempfile.path)
|
||||
|
||||
VCR.use_cassette(cassette, :record => record) do
|
||||
VCR.use_cassette(cassette, :record => (record || @vcr_record_option)) do
|
||||
assert_nothing_raised(Downloads::File::Error) do
|
||||
download.download!
|
||||
end
|
||||
@@ -15,22 +15,23 @@ module Downloads
|
||||
assert_equal(expected_filesize, tempfile.size, "Tested source URL: #{source}")
|
||||
end
|
||||
|
||||
def assert_rewritten(expected_source, test_source, cassette, record = :once)
|
||||
def assert_rewritten(expected_source, test_source, cassette, record = nil)
|
||||
tempfile = Tempfile.new("danbooru-test")
|
||||
download = Downloads::File.new(test_source, tempfile.path)
|
||||
|
||||
VCR.use_cassette(cassette, :record => record) do
|
||||
VCR.use_cassette(cassette, :record => (record || @vcr_record_option)) do
|
||||
rewritten_source, headers, _ = download.before_download(test_source, {}, {})
|
||||
assert_equal(expected_source, rewritten_source, "Tested source URL: #{test_source}")
|
||||
end
|
||||
end
|
||||
|
||||
def assert_not_rewritten(source, cassette, record = :once)
|
||||
def assert_not_rewritten(source, cassette, record = nil)
|
||||
assert_rewritten(source, source, cassette, record)
|
||||
end
|
||||
|
||||
def setup
|
||||
super
|
||||
@record = false
|
||||
setup_vcr
|
||||
end
|
||||
|
||||
@@ -39,7 +40,7 @@ module Downloads
|
||||
Delayed::Worker.delay_jobs = false
|
||||
@tempfile = Tempfile.new("danbooru-test")
|
||||
@download = Downloads::File.new("http://www.pixiv.net/member_illust.php?mode=medium&illust_id=46378654", @tempfile.path)
|
||||
VCR.use_cassette("download-ugoira-converter", :record => :once) do
|
||||
VCR.use_cassette("downloads-pixiv-test/ugoira-converter", :record => @vcr_record_option) do
|
||||
@download.download!
|
||||
end
|
||||
end
|
||||
@@ -72,9 +73,9 @@ module Downloads
|
||||
|
||||
should "work when using new URLs" do
|
||||
# Don't know the actual file size of the thumbnails since they don't work.
|
||||
assert_downloaded(1083, @new_small_thumbnail, "download-pixiv-old-png-new-small-thumbnail")
|
||||
assert_downloaded(1083, @new_medium_thumbnail, "download-pixiv-old-png-new-medium-thumbnail")
|
||||
assert_downloaded(@file_size, @new_full_size_image, "download-pixiv-old-png-new-full-size")
|
||||
assert_downloaded(1083, @new_small_thumbnail, "downloads-pixiv-test/download-old-png-new-small-thumbnail")
|
||||
assert_downloaded(1083, @new_medium_thumbnail, "downloads-pixiv-test/download-old-png-new-medium-thumbnail")
|
||||
assert_downloaded(@file_size, @new_full_size_image, "downloads-pixiv-test/download-old-png-new-full-size")
|
||||
end
|
||||
end
|
||||
|
||||
@@ -95,20 +96,20 @@ module Downloads
|
||||
end
|
||||
|
||||
should "download the full size image" do
|
||||
assert_not_rewritten(@full_size_image, "rewrite-pixiv-new-png-full-size")
|
||||
assert_downloaded(@file_size, @full_size_image, "download-pixiv-new-png-full-size")
|
||||
assert_not_rewritten(@full_size_image, "downloads-pixiv-test/rewrite-new-png-full-size")
|
||||
assert_downloaded(@file_size, @full_size_image, "downloads-pixiv-test/download-new-png-full-size")
|
||||
end
|
||||
|
||||
should "download the full size image instead of the HTML page" do
|
||||
assert_rewritten(@full_size_image, @medium_page, "rewrite-pixiv-new-png-medium-html")
|
||||
assert_rewritten(@full_size_image, @big_page, "rewrite-pixiv-new-png-big-html")
|
||||
assert_downloaded(@file_size, @medium_page, "download-pixiv-new-png-medium-html")
|
||||
assert_downloaded(@file_size, @big_page, "download-pixiv-new-png-big-html")
|
||||
assert_rewritten(@full_size_image, @medium_page, "downloads-pixiv-test/rewrite-new-png-medium-html")
|
||||
assert_rewritten(@full_size_image, @big_page, "downloads-pixiv-test/rewrite-new-png-big-html")
|
||||
assert_downloaded(@file_size, @medium_page, "downloads-pixiv-test/download-new-png-medium-html")
|
||||
assert_downloaded(@file_size, @big_page, "downloads-pixiv-test/download-new-png-big-html")
|
||||
end
|
||||
|
||||
should "download the full size image instead of the thumbnail" do
|
||||
assert_rewritten(@full_size_image, @medium_thumbnail, "rewrite-pixiv-new-png-medium-thumbnail")
|
||||
assert_downloaded(@file_size, @medium_thumbnail, "download-pixiv-new-png-medium-thumbnail")
|
||||
assert_rewritten(@full_size_image, @medium_thumbnail, "downloads-pixiv-test/rewrite-new-png-medium-thumbnail")
|
||||
assert_downloaded(@file_size, @medium_thumbnail, "downloads-pixiv-test/download-new-png-medium-thumbnail")
|
||||
end
|
||||
end
|
||||
|
||||
@@ -130,27 +131,27 @@ module Downloads
|
||||
end
|
||||
|
||||
should "download the full size image" do
|
||||
assert_not_rewritten(@p0_full_size_image, "rewrite-pixiv-new-manga-p0-full-size")
|
||||
assert_not_rewritten(@p1_full_size_image, "rewrite-pixiv-new-manga-p1-full-size")
|
||||
assert_not_rewritten(@p0_full_size_image, "downloads-pixiv-test/rewrite-new-manga-p0-full-size")
|
||||
assert_not_rewritten(@p1_full_size_image, "downloads-pixiv-test/rewrite-new-manga-p1-full-size")
|
||||
|
||||
assert_downloaded(@p0_file_size, @p0_full_size_image, "download-pixiv-new-manga-p0-full-size")
|
||||
assert_downloaded(@p1_file_size, @p1_full_size_image, "download-pixiv-new-manga-p1-full-size")
|
||||
assert_downloaded(@p0_file_size, @p0_full_size_image, "downloads-pixiv-test/download-new-manga-p0-full-size")
|
||||
assert_downloaded(@p1_file_size, @p1_full_size_image, "downloads-pixiv-test/download-new-manga-p1-full-size")
|
||||
end
|
||||
|
||||
should "download the full size image instead of the HTML page" do
|
||||
assert_rewritten(@p0_full_size_image_3, @medium_page, "rewrite-pixiv-new-manga-p0-medium-html")
|
||||
assert_rewritten(@p0_full_size_image_3, @manga_page, "rewrite-pixiv-new-manga-p0-big-html")
|
||||
assert_rewritten(@p1_full_size_image_3, @manga_big_p1_page, "rewrite-pixiv-new-manga-p1-big-html")
|
||||
assert_downloaded(@p0_file_size, @medium_page, "download-pixiv-new-manga-p0-medium-html")
|
||||
assert_downloaded(@p0_file_size, @manga_page, "download-pixiv-new-manga-p0-big-html")
|
||||
assert_downloaded(@p1_file_size, @manga_big_p1_page, "download-pixiv-new-manga-p1-big-html")
|
||||
assert_rewritten(@p0_full_size_image_3, @medium_page, "downloads-pixiv-test/rewrite-new-manga-p0-medium-html")
|
||||
assert_rewritten(@p0_full_size_image_3, @manga_page, "downloads-pixiv-test/rewrite-new-manga-p0-big-html")
|
||||
assert_rewritten(@p1_full_size_image_3, @manga_big_p1_page, "downloads-pixiv-test/rewrite-new-manga-p1-big-html")
|
||||
assert_downloaded(@p0_file_size, @medium_page, "downloads-pixiv-test/download-new-manga-p0-medium-html")
|
||||
assert_downloaded(@p0_file_size, @manga_page, "downloads-pixiv-test/download-new-manga-p0-big-html")
|
||||
assert_downloaded(@p1_file_size, @manga_big_p1_page, "downloads-pixiv-test/download-new-manga-p1-big-html")
|
||||
end
|
||||
|
||||
should "download the full size image instead of the thumbnail" do
|
||||
assert_rewritten(@p0_full_size_image_3, @p0_large_thumbnail, "rewrite-pixiv-new-manga-p0-large-thumbnail")
|
||||
assert_rewritten(@p1_full_size_image_3, @p1_large_thumbnail, "rewrite-pixiv-new-manga-p1-large-thumbnail")
|
||||
assert_downloaded(@p0_file_size, @p0_large_thumbnail, "download-pixiv-new-manga-p0-large-thumbnail")
|
||||
assert_downloaded(@p1_file_size, @p1_large_thumbnail, "download-pixiv-new-manga-p1-large-thumbnail")
|
||||
assert_rewritten(@p0_full_size_image_3, @p0_large_thumbnail, "downloads-pixiv-test/rewrite-new-manga-p0-large-thumbnail")
|
||||
assert_rewritten(@p1_full_size_image_3, @p1_large_thumbnail, "downloads-pixiv-test/rewrite-new-manga-p1-large-thumbnail")
|
||||
assert_downloaded(@p0_file_size, @p0_large_thumbnail, "downloads-pixiv-test/download-new-manga-p0-large-thumbnail")
|
||||
assert_downloaded(@p1_file_size, @p1_large_thumbnail, "downloads-pixiv-test/download-new-manga-p1-large-thumbnail")
|
||||
end
|
||||
end
|
||||
|
||||
@@ -163,18 +164,18 @@ module Downloads
|
||||
end
|
||||
|
||||
should "download the zip file instead of the HTML page" do
|
||||
assert_rewritten(@zip_file, @medium_page, "rewrite-pixiv-ugoira-medium-page")
|
||||
assert_downloaded(@file_size, @medium_page, "download-pixiv-ugoira-medium-page")
|
||||
assert_rewritten(@zip_file, @medium_page, "downloads-pixiv-test/rewrite-ugoira-medium-page")
|
||||
assert_downloaded(@file_size, @medium_page, "downloads-pixiv-test/download-ugoira-medium-page")
|
||||
end
|
||||
|
||||
should "download the zip file instead of the thumbnail" do
|
||||
assert_rewritten(@zip_file, @small_thumbnail, "rewrite-pixiv-ugoira-small-thumbnail")
|
||||
assert_downloaded(@file_size, @small_thumbnail, "download-pixiv-ugoira-small-thumbnail")
|
||||
assert_rewritten(@zip_file, @small_thumbnail, "downloads-pixiv-test/rewrite-ugoira-small-thumbnail")
|
||||
assert_downloaded(@file_size, @small_thumbnail, "downloads-pixiv-test/download-ugoira-small-thumbnail")
|
||||
end
|
||||
|
||||
should "download the zip file" do
|
||||
assert_not_rewritten(@zip_file, "rewrite-pixiv-ugoira-zip-file")
|
||||
assert_downloaded(@file_size, @zip_file, "download-pixiv-ugoira-zip-file")
|
||||
assert_not_rewritten(@zip_file, "downloads-pixiv-test/rewrite-ugoira-zip-file")
|
||||
assert_downloaded(@file_size, @zip_file, "downloads-pixiv-test/download-ugoira-zip-file")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user