45 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			45 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| # typed: false
 | |
| # frozen_string_literal: true
 | |
| 
 | |
| describe Utils do
 | |
|   describe "ruby_check_version_script" do
 | |
|     subject do
 | |
|       quiet_system "#{HOMEBREW_LIBRARY_PATH}/utils/ruby_check_version_script.rb", required_ruby_version
 | |
|     end
 | |
| 
 | |
|     before do
 | |
|       ENV.delete("HOMEBREW_DEVELOPER")
 | |
|       ENV.delete("HOMEBREW_USE_RUBY_FROM_PATH")
 | |
|     end
 | |
| 
 | |
|     describe "succeeds on Homebrew required Ruby version" do
 | |
|       let(:required_ruby_version) { HOMEBREW_REQUIRED_RUBY_VERSION }
 | |
| 
 | |
|       it { is_expected.to be true }
 | |
|     end
 | |
| 
 | |
|     describe "succeeds on newer mismatched major/minor required Ruby version and configurated environment" do
 | |
|       let(:required_ruby_version) { "2.0.0" }
 | |
| 
 | |
|       before do
 | |
|         ENV["HOMEBREW_DEVELOPER"] = "1"
 | |
|         ENV["HOMEBREW_USE_RUBY_FROM_PATH"] = "1"
 | |
|       end
 | |
| 
 | |
|       it { is_expected.to be true }
 | |
|     end
 | |
| 
 | |
|     describe "fails on on mismatched major/minor required Ruby version" do
 | |
|       let(:required_ruby_version) { "1.2.3" }
 | |
| 
 | |
|       it { is_expected.to be false }
 | |
|     end
 | |
| 
 | |
|     describe "fails on invalid required Ruby version" do
 | |
|       let(:required_ruby_version) { "fish" }
 | |
| 
 | |
|       it { is_expected.to be false }
 | |
|     end
 | |
|   end
 | |
| end
 | 
