Sha256: 39970c4efffc4558dd7ea72a38b52c88aace52db70f1105fa1a71801c11b4bbb
Contents?: true
Size: 1.88 KB
Versions: 1
Compression:
Stored size: 1.88 KB
Contents
require File.expand_path(File.dirname(__FILE__) + '../../spec_helper') module Downer describe DownloadItem do describe "#initialize" do it "should escape bad url tokens" do item = DownloadItem.new('http://www.urbaninfluence.com/my[place].html', '/tmp') item.url.should == 'http://www.urbaninfluence.com/my%5Bplace%5D.html' end end describe "#get_save_filename" do it "should generate a filename from its download url" do item = DownloadItem.new('http://www.urbaninfluence.com/sites/default/files/user_uploads/images/mapsAndAtlases2.png', '/tmp') item.get_save_filename.should == 'mapsAndAtlases2.png' end it "should successfully encode invalid chars into ASCII equivalents" do item = DownloadItem.new('http://www.urbaninfluence.com/My File_Name With White space.png', '/tmp') item.url.should == 'http://www.urbaninfluence.com/My%20File_Name%20With%20White%20space.png' end it "should restore bad url tokens into valid ascii characters" do item = DownloadItem.new('http://www.urbaninfluence.com/my[place].html', '/tmp') item.get_save_filename.should == 'my[place].html' end end describe "#download" do before(:each) do FileUtils.rm_r(Dir.glob(tmp_directory + '/*')) end it "should write the url to the target directory" do item = DownloadItem.new('http://www.urbaninfluence.com/sites/default/files/user_uploads/images/mapsAndAtlases2.png', tmp_directory) item.download Dir.entries(tmp_directory).size.should > 2 end it "should raise an error when a url is unable to be downloaded" do item = DownloadItem.new('http://www.urbaninfluence.com/will_never_complete', tmp_directory) lambda { item.download }.should raise_error(Downer::FailedDownload) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
downer-0.3.2 | spec/downer/download_item_spec.rb |