remove usage of vcr cassettes; delete unused fixtures; fix some broken unit tests
This commit is contained in:
@@ -2,20 +2,12 @@ require 'test_helper'
|
||||
|
||||
module Downloads
|
||||
class DeviantArtTest < ActiveSupport::TestCase
|
||||
def setup
|
||||
super
|
||||
@record = false
|
||||
setup_vcr
|
||||
end
|
||||
|
||||
context "a download for a deviant art html page" do
|
||||
setup do
|
||||
@source = "http://starbitt.deviantart.com/art/09271X-636962118"
|
||||
@tempfile = Tempfile.new("danbooru-test")
|
||||
@download = Downloads::File.new(@source, @tempfile.path)
|
||||
VCR.use_cassette("downloads-deviant-art-test/html", :record => @vcr_record_option) do
|
||||
@download.download!
|
||||
end
|
||||
@download.download!
|
||||
end
|
||||
|
||||
should "set the html page as the source" do
|
||||
|
||||
@@ -2,12 +2,6 @@ require 'test_helper'
|
||||
|
||||
module Downloads
|
||||
class FileTest < ActiveSupport::TestCase
|
||||
def setup
|
||||
super
|
||||
@record = false
|
||||
setup_vcr
|
||||
end
|
||||
|
||||
context "A post download" do
|
||||
setup do
|
||||
@source = "http://www.google.com/intl/en_ALL/images/logo.gif"
|
||||
@@ -32,38 +26,28 @@ module Downloads
|
||||
end
|
||||
|
||||
should "stream a file from an HTTP source" do
|
||||
VCR.use_cassette("downloads-file-test/http", :record => @vcr_record_option) do
|
||||
@download.http_get_streaming(@source) do |resp|
|
||||
assert_equal("200", resp.code)
|
||||
assert(resp["Content-Length"].to_i > 0, "File should be larger than 0 bytes")
|
||||
end
|
||||
@download.http_get_streaming(@source) do |resp|
|
||||
assert_equal("200", resp.code)
|
||||
assert(resp["Content-Length"].to_i > 0, "File should be larger than 0 bytes")
|
||||
end
|
||||
end
|
||||
|
||||
should "throw an exception when the file is larger than the maximum" do
|
||||
assert_raise(Downloads::File::Error) do
|
||||
VCR.use_cassette("downloads-file-test/http", :record => @vcr_record_option) do
|
||||
@download.http_get_streaming(@source, {}, :max_size => 1) do |resp|
|
||||
end
|
||||
@download.http_get_streaming(@source, {}, :max_size => 1) do |resp|
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
should "store the file in the tempfile path" do
|
||||
VCR.use_cassette("downloads-file-test/http", :record => @vcr_record_option) do
|
||||
@download.download!
|
||||
end
|
||||
|
||||
@download.download!
|
||||
assert_equal(@source, @download.source)
|
||||
assert(::File.exists?(@tempfile.path), "temp file should exist")
|
||||
assert(::File.size(@tempfile.path) > 0, "should have data")
|
||||
end
|
||||
|
||||
should "initialize the content type" do
|
||||
VCR.use_cassette("downloads-file-test/http", :record => @vcr_record_option) do
|
||||
@download.download!
|
||||
end
|
||||
|
||||
@download.download!
|
||||
assert_match(/image\/gif/, @download.content_type)
|
||||
end
|
||||
end
|
||||
@@ -80,11 +64,9 @@ module Downloads
|
||||
end
|
||||
|
||||
should "stream a file from an HTTPS source" do
|
||||
VCR.use_cassette("downloads-file-test/https", :record => @vcr_record_option) do
|
||||
@download.http_get_streaming(@source) do |resp|
|
||||
assert_equal("200", resp.code)
|
||||
assert(resp["Content-Length"].to_i > 0, "File should be larger than 0 bytes")
|
||||
end
|
||||
@download.http_get_streaming(@source) do |resp|
|
||||
assert_equal("200", resp.code)
|
||||
assert(resp["Content-Length"].to_i > 0, "File should be larger than 0 bytes")
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
@@ -2,37 +2,27 @@ require 'test_helper'
|
||||
|
||||
module Downloads
|
||||
class PixivTest < ActiveSupport::TestCase
|
||||
def assert_downloaded(expected_filesize, source, cassette, record = nil)
|
||||
def assert_downloaded(expected_filesize, source)
|
||||
tempfile = Tempfile.new("danbooru-test")
|
||||
download = Downloads::File.new(source, tempfile.path)
|
||||
|
||||
VCR.use_cassette(cassette, :record => (record || @vcr_record_option)) do
|
||||
assert_nothing_raised(Downloads::File::Error) do
|
||||
download.download!
|
||||
end
|
||||
assert_nothing_raised(Downloads::File::Error) do
|
||||
download.download!
|
||||
end
|
||||
|
||||
assert_equal(expected_filesize, tempfile.size, "Tested source URL: #{source}")
|
||||
end
|
||||
|
||||
def assert_rewritten(expected_source, test_source, cassette, record = nil)
|
||||
def assert_rewritten(expected_source, test_source)
|
||||
tempfile = Tempfile.new("danbooru-test")
|
||||
download = Downloads::File.new(test_source, tempfile.path)
|
||||
|
||||
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
|
||||
rewritten_source, headers, _ = download.before_download(test_source, {}, {})
|
||||
assert_equal(expected_source, rewritten_source, "Tested source URL: #{test_source}")
|
||||
end
|
||||
|
||||
def assert_not_rewritten(source, cassette, record = nil)
|
||||
assert_rewritten(source, source, cassette, record)
|
||||
end
|
||||
|
||||
def setup
|
||||
super
|
||||
@record = false
|
||||
setup_vcr
|
||||
def assert_not_rewritten(source)
|
||||
assert_rewritten(source, source)
|
||||
end
|
||||
|
||||
context "An ugoira site for pixiv" do
|
||||
@@ -40,9 +30,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("downloads-pixiv-test/ugoira-converter", :record => @vcr_record_option) do
|
||||
@download.download!
|
||||
end
|
||||
@download.download!
|
||||
end
|
||||
|
||||
teardown do
|
||||
@@ -73,9 +61,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, "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")
|
||||
assert_downloaded(1083, @new_small_thumbnail)
|
||||
assert_downloaded(1083, @new_medium_thumbnail)
|
||||
assert_downloaded(@file_size, @new_full_size_image)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -96,20 +84,20 @@ module Downloads
|
||||
end
|
||||
|
||||
should "download the full size image" do
|
||||
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")
|
||||
assert_not_rewritten(@full_size_image)
|
||||
assert_downloaded(@file_size, @full_size_image)
|
||||
end
|
||||
|
||||
should "download the full size image instead of the HTML page" do
|
||||
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")
|
||||
assert_rewritten(@full_size_image, @medium_page)
|
||||
assert_rewritten(@full_size_image, @big_page)
|
||||
assert_downloaded(@file_size, @medium_page)
|
||||
assert_downloaded(@file_size, @big_page)
|
||||
end
|
||||
|
||||
should "download the full size image instead of the thumbnail" do
|
||||
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")
|
||||
assert_rewritten(@full_size_image, @medium_thumbnail)
|
||||
assert_downloaded(@file_size, @medium_thumbnail)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -131,27 +119,27 @@ module Downloads
|
||||
end
|
||||
|
||||
should "download the full size image" do
|
||||
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_not_rewritten(@p0_full_size_image)
|
||||
assert_not_rewritten(@p1_full_size_image)
|
||||
|
||||
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")
|
||||
assert_downloaded(@p0_file_size, @p0_full_size_image)
|
||||
assert_downloaded(@p1_file_size, @p1_full_size_image)
|
||||
end
|
||||
|
||||
should "download the full size image instead of the HTML page" do
|
||||
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")
|
||||
assert_rewritten(@p0_full_size_image_3, @medium_page)
|
||||
assert_rewritten(@p0_full_size_image_3, @manga_page)
|
||||
assert_rewritten(@p1_full_size_image_3, @manga_big_p1_page)
|
||||
assert_downloaded(@p0_file_size, @medium_page)
|
||||
assert_downloaded(@p0_file_size, @manga_page)
|
||||
assert_downloaded(@p1_file_size, @manga_big_p1_page)
|
||||
end
|
||||
|
||||
should "download the full size image instead of the thumbnail" do
|
||||
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")
|
||||
assert_rewritten(@p0_full_size_image_3, @p0_large_thumbnail)
|
||||
assert_rewritten(@p1_full_size_image_3, @p1_large_thumbnail)
|
||||
assert_downloaded(@p0_file_size, @p0_large_thumbnail)
|
||||
assert_downloaded(@p1_file_size, @p1_large_thumbnail)
|
||||
end
|
||||
end
|
||||
|
||||
@@ -164,18 +152,18 @@ module Downloads
|
||||
end
|
||||
|
||||
should "download the zip file instead of the HTML page" do
|
||||
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")
|
||||
assert_rewritten(@zip_file, @medium_page)
|
||||
assert_downloaded(@file_size, @medium_page)
|
||||
end
|
||||
|
||||
should "download the zip file instead of the thumbnail" do
|
||||
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")
|
||||
assert_rewritten(@zip_file, @small_thumbnail)
|
||||
assert_downloaded(@file_size, @small_thumbnail)
|
||||
end
|
||||
|
||||
should "download the zip file" do
|
||||
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")
|
||||
assert_not_rewritten(@zip_file)
|
||||
assert_downloaded(@file_size, @zip_file)
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
@@ -2,20 +2,12 @@ require 'test_helper'
|
||||
|
||||
module Downloads
|
||||
class TumblrTest < ActiveSupport::TestCase
|
||||
def setup
|
||||
super
|
||||
@record = true
|
||||
setup_vcr
|
||||
end
|
||||
|
||||
context "a download for a tumblr 500 sample" do
|
||||
setup do
|
||||
@source = "http://24.media.tumblr.com/fc328250915434e66e8e6a92773f79d0/tumblr_mf4nshfibc1s0oswoo1_500.jpg"
|
||||
@tempfile = Tempfile.new("danbooru-test")
|
||||
@download = Downloads::File.new(@source, @tempfile.path)
|
||||
VCR.use_cassette("downloads-tumblr-test/sample", :record => @vcr_record_option) do
|
||||
@download.download!
|
||||
end
|
||||
@download.download!
|
||||
end
|
||||
|
||||
should "instead change the source to the 1280 version" do
|
||||
@@ -32,13 +24,7 @@ module Downloads
|
||||
@source = "http://25.media.tumblr.com/tumblr_lxbzel2H5y1r9yjhso1_500.jpg"
|
||||
@tempfile = Tempfile.new("danbooru-test")
|
||||
@download = Downloads::File.new(@source, @tempfile.path)
|
||||
VCR.use_cassette("downloads-tumblr-test/sample", :record => @vcr_record_option) do
|
||||
@download.download!
|
||||
end
|
||||
end
|
||||
|
||||
should "not change the source" do
|
||||
assert_equal("http://25.media.tumblr.com/tumblr_lxbzel2H5y1r9yjhso1_500.jpg", @download.source)
|
||||
@download.download!
|
||||
end
|
||||
|
||||
should "download the 500 version" do
|
||||
|
||||
Reference in New Issue
Block a user