mirror of
				https://github.com/krahets/hello-algo.git
				synced 2025-11-01 03:24:24 +08:00 
			
		
		
		
	 41dd677338
			
		
	
	41dd677338
	
	
	
		
			
			* test: add test all Ruby code * test: add ruby test ci * Update ruby.yml --------- Co-authored-by: Yudong Jin <krahets@163.com>
		
			
				
	
	
		
			24 lines
		
	
	
		
			547 B
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			24 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"
 |