From f5fb7426b909f360f6b57ed836b6a532e87fb48d Mon Sep 17 00:00:00 2001 From: Dan Barber Date: Fri, 7 Mar 2014 16:00:03 +0000 Subject: [PATCH] Add image fixture and validation. --- spec/factories/photos.rb | 1 + spec/fixtures/photo.jpg | Bin 0 -> 13664 bytes spec/models/photo_spec.rb | 2 ++ 3 files changed, 3 insertions(+) create mode 100644 spec/fixtures/photo.jpg diff --git a/spec/factories/photos.rb b/spec/factories/photos.rb index 2ef9f04..3baa1a4 100644 --- a/spec/factories/photos.rb +++ b/spec/factories/photos.rb @@ -4,5 +4,6 @@ FactoryGirl.define do factory :photo do title "A Photo" description "A lovely photo of a tree" + image Rails.root.join('spec/fixtures/photo.jpg') end end diff --git a/spec/fixtures/photo.jpg b/spec/fixtures/photo.jpg new file mode 100644 index 0000000000000000000000000000000000000000..ecca8c8d9e3e03e1ae27c4daab52cb76f44a7421 GIT binary patch literal 13664 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 Ve|=5JP_IcB14}