From 7265d31f622962951abfad0530c00842dc45e7f4 Mon Sep 17 00:00:00 2001 From: Marc Remolt Date: Mon, 6 Jun 2011 19:45:34 +0200 Subject: [PATCH] Some specs for file Attachment --- spec/lib/wordpress/attachment_spec.rb | 72 ++++++++++++++++----------- 1 file changed, 42 insertions(+), 30 deletions(-) diff --git a/spec/lib/wordpress/attachment_spec.rb b/spec/lib/wordpress/attachment_spec.rb index e3ff42b..e77870b 100644 --- a/spec/lib/wordpress/attachment_spec.rb +++ b/spec/lib/wordpress/attachment_spec.rb @@ -1,44 +1,56 @@ require 'spec_helper' describe Refinery::WordPress::Attachment, :type => :model do - let(:attachment) { test_dump.attachments.first } + context "an image attchment" do + let(:attachment) { test_dump.attachments.first } - specify { attachment.title.should == '200px-Tux.svg' } - # doesn't get exported atm. for some reason - specify { attachment.description.should == '' } - specify { attachment.url.should == 'http://localhost/wordpress/wp-content/uploads/2011/05/200px-Tux.svg_.png' } - specify { attachment.file_name.should == '200px-Tux.svg_.png' } - specify { attachment.post_date.should == DateTime.new(2011, 6, 5, 15, 26, 51) } - specify { attachment.should be_an_image } + specify { attachment.title.should == '200px-Tux.svg' } + # doesn't get exported atm. for some reason + specify { attachment.description.should == '' } + specify { attachment.url.should == 'http://localhost/wordpress/wp-content/uploads/2011/05/200px-Tux.svg_.png' } + specify { attachment.file_name.should == '200px-Tux.svg_.png' } + specify { attachment.post_date.should == DateTime.new(2011, 6, 5, 15, 26, 51) } + specify { attachment.should be_an_image } - describe "#to_refinery" do - before do - @image = attachment.to_refinery + describe "#to_refinery" do + before do + @image = attachment.to_refinery + end + + it "should create an Image from the Attachment" do + @image.should be_a(Image) + end + + it "should copy the attributes from Attachment" do + @image.created_at.should == attachment.post_date + @image.image.url.end_with?(attachment.file_name).should be_true + end end - it "should create an Image from the Attachment" do - @image.should be_a(Image) - end + describe "#replace_image_url" do + before do + test_dump.authors.each(&:to_refinery) + test_dump.posts.each(&:to_refinery) + @image = attachment.to_refinery + + attachment.replace_image_url_in_blog_posts + end + + it "should replace attachment urls in the generated BlogPosts" do + BlogPost.first.body.should_not include(attachment.url) + BlogPost.first.body.should include(@image.image.url) + end - it "should copy the attributes from Attachment" do - @image.created_at.should == attachment.post_date - @image.image.url.end_with?(attachment.file_name).should be_true end end - describe "#replace_image_url" do - before do - test_dump.authors.each(&:to_refinery) - test_dump.posts.each(&:to_refinery) - @image = attachment.to_refinery - - attachment.replace_image_url_in_blog_posts - end - - it "should replace attachment urls in the generated BlogPosts" do - BlogPost.first.body.should_not include(attachment.url) - BlogPost.first.body.should include(@image.image.url) - end + context "a file attachment" do + let(:attachment) { test_dump.attachments.last } + specify { attachment.title.should == 'cv' } + specify { attachment.url.should == 'http://localhost/wordpress/wp-content/uploads/2011/05/cv.txt' } + specify { attachment.file_name.should == 'cv.txt' } + specify { attachment.post_date.should == DateTime.new(2011, 6, 6, 17, 27, 50) } + specify { attachment.should_not be_an_image } end end