53 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| require "testing_env"
 | |
| require "utils/bottles"
 | |
| 
 | |
| class BottleCollectorTests < Homebrew::TestCase
 | |
|   def setup
 | |
|     @collector = Utils::Bottles::Collector.new
 | |
|   end
 | |
| 
 | |
|   def checksum_for(tag)
 | |
|     @collector.fetch_checksum_for(tag)
 | |
|   end
 | |
| 
 | |
|   def test_collector_returns_passed_tags
 | |
|     @collector[:lion] = "foo"
 | |
|     @collector[:mountain_lion] = "bar"
 | |
|     assert_equal ["bar", :mountain_lion], checksum_for(:mountain_lion)
 | |
|   end
 | |
| 
 | |
|   def test_collector_returns_when_empty
 | |
|     assert_nil checksum_for(:foo)
 | |
|   end
 | |
| 
 | |
|   def test_collector_returns_nil_for_no_match
 | |
|     @collector[:lion] = "foo"
 | |
|     assert_nil checksum_for(:foo)
 | |
|   end
 | |
| 
 | |
|   def test_collector_returns_nil_for_no_match_when_later_tag_present
 | |
|     @collector[:lion_or_later] = "foo"
 | |
|     assert_nil checksum_for(:foo)
 | |
|   end
 | |
| 
 | |
|   def test_collector_finds_or_later_tags
 | |
|     @collector[:lion_or_later] = "foo"
 | |
|     assert_equal ["foo", :lion_or_later], checksum_for(:mountain_lion)
 | |
|     assert_nil checksum_for(:snow_leopard)
 | |
|   end
 | |
| 
 | |
|   def test_collector_prefers_exact_matches
 | |
|     @collector[:lion_or_later] = "foo"
 | |
|     @collector[:mountain_lion] = "bar"
 | |
|     assert_equal ["bar", :mountain_lion], checksum_for(:mountain_lion)
 | |
|   end
 | |
| 
 | |
|   def test_collector_finds_altivec_tags
 | |
|     @collector[:tiger_altivec] = "foo"
 | |
|     assert_equal ["foo", :tiger_altivec], checksum_for(:tiger_g4)
 | |
|     assert_equal ["foo", :tiger_altivec], checksum_for(:tiger_g4e)
 | |
|     assert_equal ["foo", :tiger_altivec], checksum_for(:tiger_g5)
 | |
|     assert_nil checksum_for(:tiger_g3)
 | |
|   end
 | |
| end
 | 
