Commit 58671ebf by Chris Apolzon

Paperclip#run now respects swallow_stderr setting. Fix for #741

parent f19393cf
...@@ -99,6 +99,7 @@ module Paperclip ...@@ -99,6 +99,7 @@ module Paperclip
command_path = options[:command_path] || options[:image_magick_path] command_path = options[:command_path] || options[:image_magick_path]
Cocaine::CommandLine.path = ( Cocaine::CommandLine.path ? [Cocaine::CommandLine.path, command_path ].flatten : command_path ) Cocaine::CommandLine.path = ( Cocaine::CommandLine.path ? [Cocaine::CommandLine.path, command_path ].flatten : command_path )
local_options = local_options.merge(:logger => logger) if logging? && (options[:log_command] || local_options[:log_command]) local_options = local_options.merge(:logger => logger) if logging? && (options[:log_command] || local_options[:log_command])
local_options = local_options.merge(:swallow_stderr => options[:swallow_stderr]) if !local_options[:swallow_stderr] && !options[:swallow_stderr].nil?
Cocaine::CommandLine.new(cmd, arguments, local_options).run Cocaine::CommandLine.new(cmd, arguments, local_options).run
end end
......
...@@ -4,6 +4,7 @@ class PaperclipTest < Test::Unit::TestCase ...@@ -4,6 +4,7 @@ class PaperclipTest < Test::Unit::TestCase
context "Calling Paperclip.run" do context "Calling Paperclip.run" do
setup do setup do
Paperclip.options[:log_command] = false Paperclip.options[:log_command] = false
Paperclip.options[:swallow_stderr] = nil
Cocaine::CommandLine.expects(:new).with("convert", "stuff", {}).returns(stub(:run)) Cocaine::CommandLine.expects(:new).with("convert", "stuff", {}).returns(stub(:run))
@original_command_line_path = Cocaine::CommandLine.path @original_command_line_path = Cocaine::CommandLine.path
end end
...@@ -22,6 +23,18 @@ class PaperclipTest < Test::Unit::TestCase ...@@ -22,6 +23,18 @@ class PaperclipTest < Test::Unit::TestCase
Paperclip.run("convert", "stuff") Paperclip.run("convert", "stuff")
assert_equal [Cocaine::CommandLine.path].flatten.include?("/opt/my_app/bin"), true assert_equal [Cocaine::CommandLine.path].flatten.include?("/opt/my_app/bin"), true
end end
should "respect Paperclip.options[:swallow_stderr]" do
Paperclip.options[:swallow_stderr] = false
Cocaine::CommandLine.unstub(:new)
Cocaine::CommandLine.expects(:new).with("convert", "stuff", {:swallow_stderr => false}).returns(stub(:run))
Paperclip.run("convert", "stuff")
Paperclip.options[:swallow_stderr] = true
Cocaine::CommandLine.unstub(:new)
Cocaine::CommandLine.expects(:new).with("convert", "stuff", {:swallow_stderr => true}).returns(stub(:run))
Paperclip.run("convert", "stuff")
end
end end
context "Calling Paperclip.run with a logger" do context "Calling Paperclip.run with a logger" do
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment