[rspec-users] How to spec an attachment_fu model
Justin W. Reagor
justinwr at gmail.com
Wed Aug 22 12:58:12 EDT 2007
> # TODO: Allow it to work with Merb tempfiles too.
> def uploaded_data=(file_data)
> return nil if file_data.nil? || file_data.size == 0
> self.content_type = file_data.content_type
Durh... stupid me, didn't see this post! :)
:: Justin Reagor
:: justinwr at gmail.com
:: Justin Reagor
:: justinwr at gmail.com
On Aug 22, 2007, at 12:23 PM, Matt Lins wrote:
> First off, I'm not trying to spec attachment_fu, I know it's been
> tested.
>
> But, I added some code to that model that I do need to test.
> Basically, I need to somehow fulfill the "uploaded_data" property
> so I can actually run my tests(otherwise they fail because of
> validations). The "uploaded_data" field is what would grab the
> multipart data from form. Here it is:
>
> # This method handles the uploaded file object. If you set
> the field name to uploaded_data, you don't need
> # any special code in your controller.
> #
> # <% form_for :attachment, :html => { :multipart => true }
> do |f| -%>
> # <p><%= f.file_field :uploaded_data %></p>
> # <p><%= submit_tag :Save %>
> # <% end -%>
> #
> # @attachment = Attachment.create! params[:attachment]
> #
> # TODO: Allow it to work with Merb tempfiles too.
> def uploaded_data=(file_data)
> return nil if file_data.nil? || file_data.size == 0
> self.content_type = file_data.content_type
> self.filename = file_data.original_filename if
> respond_to?(:filename)
> if file_data.is_a?(StringIO)
> file_data.rewind
> self.temp_data = file_data.read
> else
> self.temp_path = file_data.path
> end
> end
>
> While I was digging I found out that "file_data" is a ruby Tempfile
> object. So, I tried to create a dummy file and pass it, but it
> failed. I found out in the CGI library, it actually extends the
> Tempfile object and adds some methods/properties. It started to get
> messy, so I thought I'd ask for advice.
>
> How can I create a valid attachment_fu model spec(so I can start
> tweaking it to test my other validations)?
> _______________________________________________
> rspec-users mailing list
> rspec-users at rubyforge.org
> http://rubyforge.org/mailman/listinfo/rspec-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://rubyforge.org/pipermail/rspec-users/attachments/20070822/d55178a9/attachment-0001.html
More information about the rspec-users
mailing list