Skip to content
Browse files

Fixes issue with uppercase extension and default style on to_s method…

…. Fixes issue #385.
  • Loading branch information...
1 parent fc792c8 commit 0708cd43866be838c9cf577a746b9aefcb1d8384 @armyofgnomes armyofgnomes committed Feb 1, 2011
Showing with 41 additions and 1 deletion.
  1. +1 −1 lib/paperclip/attachment.rb
  2. +40 −0 test/attachment_test.rb
  3. BIN test/fixtures/uppercase.PNG
View
2 lib/paperclip/attachment.rb
@@ -127,7 +127,7 @@ def path style_name = default_style
end
# Alias to +url+
- def to_s style_name = nil
+ def to_s style_name = default_style
url(style_name)
end
View
40 test/attachment_test.rb
@@ -486,6 +486,46 @@ def do_after_all; end
assert_equal "sheep_say_bæ.png", @dummy.avatar.original_filename
end
end
+
+ context "Attachment with uppercase extension and a default style" do
+ setup do
+ @old_defaults = Paperclip::Attachment.default_options.dup
+ Paperclip::Attachment.default_options.merge!({
+ :path => ":rails_root/tmp/:attachment/:class/:style/:id/:basename.:extension"
+ })
+ FileUtils.rm_rf("tmp")
+ rebuild_model
+ @instance = Dummy.new
+ @instance.stubs(:id).returns 123
+
+ @file = File.new(File.join(File.dirname(__FILE__), "fixtures", "uppercase.PNG"), 'rb')
+
+ styles = {:styles => { :large => ["400x400", :jpg],
+ :medium => ["100x100", :jpg],
+ :small => ["32x32#", :jpg]},
+ :default_style => :small}
+ @attachment = Paperclip::Attachment.new(:avatar,
+ @instance,
+ styles)
+ now = Time.now
+ Time.stubs(:now).returns(now)
+ @attachment.assign(@file)
+ @attachment.save
+ end
+
+ teardown do
+ @file.close
+ Paperclip::Attachment.default_options.merge!(@old_defaults)
+ end
+
+ should "should have matching to_s and url methods" do
+ file = @attachment.to_file
+ assert file
+ assert_match @attachment.to_s, @attachment.url
+ assert_match @attachment.to_s(:small), @attachment.url(:small)
+ file.close
+ end
+ end
context "An attachment" do
setup do
View
BIN test/fixtures/uppercase.PNG
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 0708cd4

Please sign in to comment.
Something went wrong with that request. Please try again.