mirror of
https://github.com/krahets/hello-algo.git
synced 2024-12-24 10:26:27 +08:00
41dd677338
* test: add test all Ruby code * test: add ruby test ci * Update ruby.yml --------- Co-authored-by: Yudong Jin <krahets@163.com>
23 lines
547 B
Ruby
23 lines
547 B
Ruby
require 'open3'
|
|
|
|
start_time = Time.now
|
|
ruby_code_dir = File.dirname(__FILE__)
|
|
files = Dir.glob("#{ruby_code_dir}/chapter_*/*.rb")
|
|
|
|
errors = []
|
|
|
|
files.each do |file|
|
|
stdout, stderr, status = Open3.capture3("ruby #{file}")
|
|
errors << stderr unless status.success?
|
|
end
|
|
|
|
puts "\x1b[34mTested #{files.count} files\x1b[m"
|
|
|
|
unless errors.empty?
|
|
puts "\x1b[33mFound exception in #{errors.length} files\x1b[m"
|
|
raise errors.join("\n\n")
|
|
else
|
|
puts "\x1b[32mPASS\x1b[m"
|
|
end
|
|
|
|
puts "Testing finishes after #{((Time.now - start_time) * 1000).round} ms"
|