Commit 4a1a0c6f

mo khan <mo@mokhan.ca>
2014-06-07 22:30:07
use fake blob storage for tests.
1 parent 03d9e6c
Changed files (2)
app
services
infrastructure
config
initializers
app/services/infrastructure/blob_storage.rb
@@ -6,7 +6,6 @@ class BlobStorage
   end
 
   def upload(key, file)
-    raise "heck"
     puts "uploading to #{bucket_name}/#{key}"
     object = connection.buckets[bucket_name].objects[key]
     object.write(Pathname.new(file), content_type: content_type_for(file), cache_control: 'public, max-age=315576000')
@@ -21,4 +20,9 @@ class BlobStorage
   def content_type_for(file)
     ::MIME::Types.type_for(file).first.to_s
   end
+
+  class Fake
+    def upload(*args)
+    end
+  end
 end
config/initializers/container.rb
@@ -8,7 +8,11 @@ container.register(:queue) { |c| Delayed::Job }
 container.register(:message_bus) { |c| c.build(MessageBus) }.as_singleton
 container.register(:exif_parser) { |builder| ExifParser.new }
 container.register(:twitter_publisher) { |c| c.build(TwitterPublisher) }.as_singleton
-container.register(:blob_storage) { |builder| BlobStorage.new }
+if Rails.env.test?
+  container.register(:blob_storage) { |builder| BlobStorage::Fake.new }
+else
+  container.register(:blob_storage) { |builder| BlobStorage.new }
+end
 
 # repositories
 container.register(:cakes) { |builder| Creation }