From 03f8f568585b96404003622b50e3e8a04cfe1cd0 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Sun, 7 Jul 2013 17:46:01 -0400 Subject: [PATCH] test command echoing --- lib/rscons/environment.rb | 5 +++-- spec/build_tests_spec.rb | 10 +++++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/lib/rscons/environment.rb b/lib/rscons/environment.rb index 26a8e5a..8168378 100644 --- a/lib/rscons/environment.rb +++ b/lib/rscons/environment.rb @@ -39,6 +39,7 @@ module Rscons (@variables[:builders] || []).each do |builder| add_builder(builder) end + @variables[:echo] ||= :command end def add_builder(builder) @@ -117,9 +118,9 @@ module Rscons end end command = expand_varref.call(command.flatten).flatten - if @echo == :command + if @variables[:echo] == :command puts command.map { |c| c =~ /\s/ ? "'#{c}'" : c }.join(' ') - elsif @echo == :short + elsif @variables[:echo] == :short puts short_desc end system(*command) diff --git a/spec/build_tests_spec.rb b/spec/build_tests_spec.rb index 0016658..f403d86 100644 --- a/spec/build_tests_spec.rb +++ b/spec/build_tests_spec.rb @@ -13,7 +13,7 @@ describe Rscons do def build_testdir if File.exists?("build.rb") - system("ruby -I #{@owd}/lib -r rscons build.rb") + system("ruby -I #{@owd}/lib -r rscons build.rb > build.out") end end @@ -44,6 +44,14 @@ describe Rscons do `./simple`.should == "This is a simple C program\n" end + it 'prints commands as they are executed' do + test_dir('simple') + File.read('build.out').should == <