Donald Meyers / Mbed OS evan
Committer:
djmeyers
Date:
Sat Mar 18 22:37:16 2017 +0000
Revision:
0:06ee5f8a484a
Initial commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
djmeyers 0:06ee5f8a484a 1 # ==========================================
djmeyers 0:06ee5f8a484a 2 # Unity Project - A Test Framework for C
djmeyers 0:06ee5f8a484a 3 # Copyright (c) 2007 Mike Karlesky, Mark VanderVoord, Greg Williams
djmeyers 0:06ee5f8a484a 4 # [Released under MIT License. Please refer to license.txt for details]
djmeyers 0:06ee5f8a484a 5 # ==========================================
djmeyers 0:06ee5f8a484a 6
djmeyers 0:06ee5f8a484a 7 UNITY_ROOT = File.expand_path(File.dirname(__FILE__)) + '/'
djmeyers 0:06ee5f8a484a 8
djmeyers 0:06ee5f8a484a 9 require 'rake'
djmeyers 0:06ee5f8a484a 10 require 'rake/clean'
djmeyers 0:06ee5f8a484a 11 require UNITY_ROOT + 'rakefile_helper'
djmeyers 0:06ee5f8a484a 12
djmeyers 0:06ee5f8a484a 13 TEMP_DIRS = [
djmeyers 0:06ee5f8a484a 14 File.join(UNITY_ROOT, 'build')
djmeyers 0:06ee5f8a484a 15 ]
djmeyers 0:06ee5f8a484a 16
djmeyers 0:06ee5f8a484a 17 TEMP_DIRS.each do |dir|
djmeyers 0:06ee5f8a484a 18 directory(dir)
djmeyers 0:06ee5f8a484a 19 CLOBBER.include(dir)
djmeyers 0:06ee5f8a484a 20 end
djmeyers 0:06ee5f8a484a 21
djmeyers 0:06ee5f8a484a 22 task :prepare_for_tests => TEMP_DIRS
djmeyers 0:06ee5f8a484a 23
djmeyers 0:06ee5f8a484a 24 include RakefileHelpers
djmeyers 0:06ee5f8a484a 25
djmeyers 0:06ee5f8a484a 26 # Load proper GCC as defult configuration
djmeyers 0:06ee5f8a484a 27 DEFAULT_CONFIG_FILE = 'gcc_auto_stdint.yml'
djmeyers 0:06ee5f8a484a 28 configure_toolchain(DEFAULT_CONFIG_FILE)
djmeyers 0:06ee5f8a484a 29
djmeyers 0:06ee5f8a484a 30 desc "Test unity with its own unit tests"
djmeyers 0:06ee5f8a484a 31 task :unit => [:prepare_for_tests] do
djmeyers 0:06ee5f8a484a 32 run_tests get_unit_test_files
djmeyers 0:06ee5f8a484a 33 end
djmeyers 0:06ee5f8a484a 34
djmeyers 0:06ee5f8a484a 35 desc "Test unity's helper scripts"
djmeyers 0:06ee5f8a484a 36 task :scripts => [:prepare_for_tests] do
djmeyers 0:06ee5f8a484a 37 Dir['tests/test_*.rb'].each do |scriptfile|
djmeyers 0:06ee5f8a484a 38 require "./"+scriptfile
djmeyers 0:06ee5f8a484a 39 end
djmeyers 0:06ee5f8a484a 40 end
djmeyers 0:06ee5f8a484a 41
djmeyers 0:06ee5f8a484a 42 desc "Generate test summary"
djmeyers 0:06ee5f8a484a 43 task :summary do
djmeyers 0:06ee5f8a484a 44 report_summary
djmeyers 0:06ee5f8a484a 45 end
djmeyers 0:06ee5f8a484a 46
djmeyers 0:06ee5f8a484a 47 desc "Build and test Unity"
djmeyers 0:06ee5f8a484a 48 task :all => [:clean, :prepare_for_tests, :scripts, :unit, :summary]
djmeyers 0:06ee5f8a484a 49 task :default => [:clobber, :all]
djmeyers 0:06ee5f8a484a 50 task :ci => [:no_color, :default]
djmeyers 0:06ee5f8a484a 51 task :cruise => [:no_color, :default]
djmeyers 0:06ee5f8a484a 52
djmeyers 0:06ee5f8a484a 53 desc "Load configuration"
djmeyers 0:06ee5f8a484a 54 task :config, :config_file do |t, args|
djmeyers 0:06ee5f8a484a 55 configure_toolchain(args[:config_file])
djmeyers 0:06ee5f8a484a 56 end
djmeyers 0:06ee5f8a484a 57
djmeyers 0:06ee5f8a484a 58 task :no_color do
djmeyers 0:06ee5f8a484a 59 $colour_output = false
djmeyers 0:06ee5f8a484a 60 end