- throw errors in example runner

- make unity optional in test runner generator (though that's not really too helpful at the moment)

git-svn-id: http://unity.svn.sourceforge.net/svnroot/unity/trunk@73 e7d17a6e-8845-0410-bbbc-c8efb4fdad7e
This commit is contained in:
mvandervoord
2010-06-06 16:59:00 +00:00
parent 32f317f6c0
commit f492adfec4
3 changed files with 6 additions and 5 deletions

View File

@ -9,7 +9,7 @@ File.expand_path(File.join(File.dirname(__FILE__),'colour_prompt'))
class UnityTestRunnerGenerator class UnityTestRunnerGenerator
def initialize(options = nil) def initialize(options = nil)
@options = { :includes => [] } @options = { :includes => [], :framework => :unity }
case(options) case(options)
when NilClass then @options when NilClass then @options
when String then @options = UnityTestRunnerGenerator.grab_config(options) when String then @options = UnityTestRunnerGenerator.grab_config(options)
@ -19,7 +19,7 @@ class UnityTestRunnerGenerator
end end
def self.grab_config(config_file) def self.grab_config(config_file)
options = { :includes => [] } options = { :includes => [], :framework => :unity }
unless (config_file.nil? or config_file.empty?) unless (config_file.nil? or config_file.empty?)
require 'yaml' require 'yaml'
yaml_guts = YAML.load_file(config_file) yaml_guts = YAML.load_file(config_file)
@ -27,6 +27,7 @@ class UnityTestRunnerGenerator
options[:cexception] = 1 unless (yaml_goodness[:plugins] & ['cexception', :cexception]).empty? options[:cexception] = 1 unless (yaml_goodness[:plugins] & ['cexception', :cexception]).empty?
options[:coverage ] = 1 if (yaml_goodness[:coverage]) options[:coverage ] = 1 if (yaml_goodness[:coverage])
options[:order] = 1 if (yaml_goodness[:enforce_strict_ordering]) options[:order] = 1 if (yaml_goodness[:enforce_strict_ordering])
options[:framework] = (yaml_goodness[:framework] || :unity)
options[:includes] << (yaml_goodness[:includes]) options[:includes] << (yaml_goodness[:includes])
end end
return(options) return(options)
@ -117,7 +118,7 @@ class UnityTestRunnerGenerator
def create_header(output, mocks) def create_header(output, mocks)
output.puts('/* AUTOGENERATED FILE. DO NOT EDIT. */') output.puts('/* AUTOGENERATED FILE. DO NOT EDIT. */')
output.puts('#include "unity.h"') output.puts("#include \"#{@options[:framework].to_s}.h\"")
output.puts('#include "cmock.h"') unless (mocks.empty?) output.puts('#include "cmock.h"') unless (mocks.empty?)
@options[:includes].flatten.each do |includes| @options[:includes].flatten.each do |includes|
output.puts("#include \"#{includes.gsub('.h','')}.h\"") output.puts("#include \"#{includes.gsub('.h','')}.h\"")

View File

@ -26,7 +26,7 @@ class UnityTestSummary
def run def run
# Clean up result file names # Clean up result file names
results = @targets.map {|target| target.gsub(/\\/,'/')} results = @targets.map {|target| target.gsub(/\\/,'/')}
# Dig through each result file, looking for details on pass/fail: # Dig through each result file, looking for details on pass/fail:
failure_output = [] failure_output = []
ignore_output = [] ignore_output = []

View File

@ -157,6 +157,7 @@ module RakefileHelpers
results = Dir[results_glob] results = Dir[results_glob]
summary.set_targets(results) summary.set_targets(results)
summary.run summary.run
raise "There were failures" if (summary.failures > 0)
end end
def run_tests(test_files) def run_tests(test_files)
@ -222,7 +223,6 @@ module RakefileHelpers
test_results += '.testpass' test_results += '.testpass'
end end
File.open(test_results, 'w') { |f| f.print output } File.open(test_results, 'w') { |f| f.print output }
end end
end end