diff options
Diffstat (limited to 'spec/models/foi_attachment_spec.rb')
-rw-r--r-- | spec/models/foi_attachment_spec.rb | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/spec/models/foi_attachment_spec.rb b/spec/models/foi_attachment_spec.rb new file mode 100644 index 000000000..d8166dddc --- /dev/null +++ b/spec/models/foi_attachment_spec.rb @@ -0,0 +1,36 @@ +require File.expand_path(File.dirname(__FILE__) + '/../spec_helper') + +describe FoiAttachment, " when calculating due date" do + fixtures :incoming_messages, :raw_emails, :public_bodies, :public_body_translations, :info_requests, :users, :foi_attachments + + before(:each) do + load_raw_emails_data(raw_emails) + end + + it "sets the body" do + attachment = FoiAttachment.new + attachment.body = "baz" + attachment.body.should == "baz" + end + it "sets the size" do + attachment = FoiAttachment.new + attachment.body = "baz" + attachment.body.should == "baz" + attachment.update_display_size! + attachment.display_size.should == "0K" + end + it "reparses the body if it disappears" do + mail_body = load_file_fixture('incoming-request-attach-attachments.email') + mail = TMail::Mail.parse(mail_body) + mail.base64_decode + im = incoming_messages(:useless_incoming_message) + im.stub!(:mail).and_return(mail) + #im.extract_attachments! + attachments = im.get_attachments_for_display + FileUtils.rm attachments[0].filepath + lambda { + attachments = im.get_attachments_for_display + body = attachments[0].body + }.should_not raise_error(Errno::ENOENT) + end +end |