mirror of
https://github.com/inspec/inspec
synced 2024-12-18 00:53:22 +00:00
d2c13ef353
Signed-off-by: Dominik Richter <dominik.richter@gmail.com>
50 lines
1.1 KiB
Ruby
50 lines
1.1 KiB
Ruby
#!/usr/bin/env rake
|
|
# encoding: utf-8
|
|
|
|
require 'rake/testtask'
|
|
require 'rubocop/rake_task'
|
|
|
|
# Rubocop
|
|
desc 'Run Rubocop lint checks'
|
|
task :rubocop do
|
|
RuboCop::RakeTask.new
|
|
end
|
|
|
|
# lint the project
|
|
desc 'Run robocop linter'
|
|
task lint: [:rubocop]
|
|
|
|
# run tests
|
|
task default: :test
|
|
Rake::TestTask.new do |t|
|
|
t.libs << 'test'
|
|
t.pattern = 'test/unit/*_test.rb'
|
|
t.warning = true
|
|
t.verbose = true
|
|
t.ruby_opts = ['--dev'] if defined?(JRUBY_VERSION)
|
|
end
|
|
|
|
namespace :test do
|
|
task :isolated do
|
|
Dir.glob('test/unit/*_test.rb').all? do |file|
|
|
sh(Gem.ruby, '-w', '-Ilib:test', file)
|
|
end or fail 'Failures'
|
|
end
|
|
|
|
task :resources do
|
|
tests = Dir['test/resource/*_test.rb']
|
|
return if tests.empty?
|
|
sh(Gem.ruby, 'test/docker_test.rb', *tests)
|
|
end
|
|
|
|
task :docker_runner do
|
|
path = File.join(File.dirname(__FILE__), 'test', 'runner')
|
|
sh('sh', '-c', "cd #{path} && config=test-runner.yaml ruby -I ../../lib docker_test.rb tests/*")
|
|
end
|
|
|
|
task :local_runner do
|
|
concurrency = ENV['CONCURRENCY'] || 4
|
|
path = File.join(File.dirname(__FILE__), 'test', 'runner')
|
|
sh('sh', '-c', "cd #{path} && kitchen test -c #{concurrency}")
|
|
end
|
|
end
|