aboutsummaryrefslogtreecommitdiffstats
path: root/test/rake/test_trace_output.rb
diff options
context:
space:
mode:
authordrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-11-29 19:16:46 +0000
committerdrbrain <drbrain@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2012-11-29 19:16:46 +0000
commitd1d4490a57413ff5cb7e8bd0274bb34c7da68d29 (patch)
tree70596346a7f5f13d846cda7353fb8474baf4ad7e /test/rake/test_trace_output.rb
parent40bae2f67c1160e1e59018c1003d014c60d1ee47 (diff)
downloadruby-d1d4490a57413ff5cb7e8bd0274bb34c7da68d29.tar.gz
* lib/rake/*: Updated to rake 0.9.5
* test/rake/*: ditto. * NEWS: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rake/test_trace_output.rb')
-rw-r--r--test/rake/test_trace_output.rb43
1 files changed, 43 insertions, 0 deletions
diff --git a/test/rake/test_trace_output.rb b/test/rake/test_trace_output.rb
new file mode 100644
index 0000000000..750ea1447e
--- /dev/null
+++ b/test/rake/test_trace_output.rb
@@ -0,0 +1,43 @@
+require File.expand_path('../helper', __FILE__)
+require 'stringio'
+
+class TestTraceOutput < Rake::TestCase
+ include Rake::TraceOutput
+
+ class PrintSpy
+ attr_reader :result, :calls
+ def initialize
+ @result = ""
+ @calls = 0
+ end
+ def print(string)
+ @result << string
+ @calls += 1
+ end
+ end
+
+ def test_trace_issues_single_io_for_args_with_empty_args
+ spy = PrintSpy.new
+ trace_on(spy)
+ assert_equal "\n", spy.result
+ assert_equal 1, spy.calls
+ end
+
+ def test_trace_issues_single_io_for_args_multiple_strings
+ spy = PrintSpy.new
+ trace_on(spy, "HI\n", "LO")
+ assert_equal "HI\nLO\n", spy.result
+ assert_equal 1, spy.calls
+ end
+
+ def test_trace_issues_single_io_for_args_multiple_strings_and_alternate_sep
+ old_sep = $\
+ $\ = "\r"
+ spy = PrintSpy.new
+ trace_on(spy, "HI\r", "LO")
+ assert_equal "HI\rLO\r", spy.result
+ assert_equal 1, spy.calls
+ ensure
+ $\ = old_sep
+ end
+end