Merge pull request #584 from 6/https-source

Upload from HTTPS sources
This commit is contained in:
Albert Yi
2013-02-23 08:39:42 -08:00
4 changed files with 40 additions and 4 deletions

View File

@@ -39,5 +39,24 @@ module Downloads
assert_match(/image\/gif/, @download.content_type)
end
end
context "A post download with an HTTPS source" do
setup do
@source = "https://www.google.com/intl/en_ALL/images/logo.gif"
@tempfile = Tempfile.new("danbooru-test")
@download = Downloads::File.new(@source, @tempfile.path)
end
teardown do
@tempfile.close
end
should "stream a file from an HTTPS source" do
@download.http_get_streaming do |resp|
assert_equal("200", resp.code)
assert(resp["Content-Length"].to_i > 0, "File should be larger than 0 bytes")
end
end
end
end
end

View File

@@ -79,6 +79,23 @@ class UploadTest < ActiveSupport::TestCase
end
end
context "determining if a file is downloadable" do
should "classify HTTP sources as downloadable" do
@upload = FactoryGirl.create(:source_upload, source: "http://www.example.com/1.jpg")
assert_not_nil(@upload.is_downloadable?)
end
should "classify HTTPS sources as downloadable" do
@upload = FactoryGirl.create(:source_upload, source: "https://www.example.com/1.jpg")
assert_not_nil(@upload.is_downloadable?)
end
should "classify non-HTTP/HTTPS sources as not downloadable" do
@upload = FactoryGirl.create(:source_upload, source: "ftp://www.example.com/1.jpg")
assert_nil(@upload.is_downloadable?)
end
end
context "file processor" do
should "parse and process a cgi file representation" do
FileUtils.cp("#{Rails.root}/test/files/test.jpg", "#{Rails.root}/tmp")