diff options
| author | KOBAYASHI Shuji <[email protected]> | 2021-01-08 20:32:08 +0900 |
|---|---|---|
| committer | KOBAYASHI Shuji <[email protected]> | 2021-01-08 20:36:54 +0900 |
| commit | 3a8d7bdf82dddb8d5e54330503d9ed11b4f68ad0 (patch) | |
| tree | e5c1e9c5f62a9bd4e495593c59b0d035a1d193ff /Rakefile | |
| parent | 04561cd999431264e10bb96915a26049cff29d92 (diff) | |
| download | mruby-3a8d7bdf82dddb8d5e54330503d9ed11b4f68ad0.tar.gz mruby-3a8d7bdf82dddb8d5e54330503d9ed11b4f68ad0.zip | |
Delay test code build until `rake test`
With this change, the test code will not be built unless `rake test` is
run, so there will be almost no side effects even if `enable_test` is
always set (but, gems specified by `add_test_dependency` are included
in `libmruby.a`).
Also added are `test: build` task, which only builds the test code
(including the main code), and `test: run` task, which only runs tests
independent of build. Therefore, the idiom for building in parallel and
not running tests in parallel is `rake -m test:build && rake test:run`.
Diffstat (limited to 'Rakefile')
| -rw-r--r-- | Rakefile | 25 |
1 files changed, 3 insertions, 22 deletions
@@ -29,6 +29,7 @@ load "#{MRUBY_ROOT}/tasks/mrbgems.rake" load "#{MRUBY_ROOT}/tasks/libmruby.rake" load "#{MRUBY_ROOT}/tasks/bin.rake" load "#{MRUBY_ROOT}/tasks/presym.rake" +load "#{MRUBY_ROOT}/tasks/test.rake" load "#{MRUBY_ROOT}/tasks/benchmark.rake" load "#{MRUBY_ROOT}/tasks/gitlab.rake" load "#{MRUBY_ROOT}/tasks/doc.rake" @@ -51,37 +52,17 @@ end task :build => MRuby.targets.flat_map{|_, build| build.products} -desc "run all mruby tests" -task :test -MRuby.each_target do - if test_enabled? - t = :"test_#{self.name}" - task t => ["all"] do - run_test - end - task :test => t - end - - if bintest_enabled? - t = :"bintest_#{self.name}" - task t => ["all"] do - run_bintest - end - task :test => t - end -end - desc "clean all built and in-repo installed artifacts" task :clean do MRuby.each_target do |build| - rm_rf build.products rm_rf build.build_dir + rm_f build.products end puts "Cleaned up target build folder" end desc "clean everything!" -task :deep_clean => ["clean", "clean_doc"] do +task :deep_clean => %w[clean doc:clean] do MRuby.each_target do |build| rm_rf build.gem_clone_dir end |
