100 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
			
		
		
	
	
			100 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Ruby
		
	
	
	
	
	
| require "testing_env"
 | |
| require "formula"
 | |
| 
 | |
| class FormulaSpecSelectionTests < Homebrew::TestCase
 | |
|   def test_selects_stable_by_default
 | |
|     f = formula do
 | |
|       url "foo-1.0"
 | |
|       devel { url "foo-1.1a" }
 | |
|       head "foo"
 | |
|     end
 | |
| 
 | |
|     assert_predicate f, :stable?
 | |
|   end
 | |
| 
 | |
|   def test_selects_stable_when_exclusive
 | |
|     f = formula { url "foo-1.0" }
 | |
|     assert_predicate f, :stable?
 | |
|   end
 | |
| 
 | |
|   def test_selects_devel_before_head
 | |
|     f = formula do
 | |
|       devel { url "foo-1.1a" }
 | |
|       head "foo"
 | |
|     end
 | |
| 
 | |
|     assert_predicate f, :devel?
 | |
|   end
 | |
| 
 | |
|   def test_selects_devel_when_exclusive
 | |
|     f = formula { devel { url "foo-1.1a" } }
 | |
|     assert_predicate f, :devel?
 | |
|   end
 | |
| 
 | |
|   def test_selects_head_when_exclusive
 | |
|     f = formula { head "foo" }
 | |
|     assert_predicate f, :head?
 | |
|   end
 | |
| 
 | |
|   def test_incomplete_spec_not_selected
 | |
|     f = formula do
 | |
|       sha256 TEST_SHA256
 | |
|       version "1.0"
 | |
|       head "foo"
 | |
|     end
 | |
| 
 | |
|     assert_predicate f, :head?
 | |
|   end
 | |
| 
 | |
|   def test_incomplete_stable_not_set
 | |
|     f = formula do
 | |
|       sha256 TEST_SHA256
 | |
|       devel { url "foo-1.1a" }
 | |
|       head "foo"
 | |
|     end
 | |
| 
 | |
|     assert_nil f.stable
 | |
|     assert_predicate f, :devel?
 | |
|   end
 | |
| 
 | |
|   def test_selects_head_when_requested
 | |
|     f = formula("test", Pathname.new(__FILE__).expand_path, :head) do
 | |
|       url "foo-1.0"
 | |
|       devel { url "foo-1.1a" }
 | |
|       head "foo"
 | |
|     end
 | |
| 
 | |
|     assert_predicate f, :head?
 | |
|   end
 | |
| 
 | |
|   def test_selects_devel_when_requested
 | |
|     f = formula("test", Pathname.new(__FILE__).expand_path, :devel) do
 | |
|       url "foo-1.0"
 | |
|       devel { url "foo-1.1a" }
 | |
|       head "foo"
 | |
|     end
 | |
| 
 | |
|     assert_predicate f, :devel?
 | |
|   end
 | |
| 
 | |
|   def test_incomplete_devel_not_set
 | |
|     f = formula do
 | |
|       url "foo-1.0"
 | |
|       devel { version "1.1a" }
 | |
|       head "foo"
 | |
|     end
 | |
| 
 | |
|     assert_nil f.devel
 | |
|     assert_predicate f, :stable?
 | |
|   end
 | |
| 
 | |
|   def test_does_not_raise_for_missing_spec
 | |
|     f = formula("test", Pathname.new(__FILE__).expand_path, :devel) do
 | |
|       url "foo-1.0"
 | |
|       head "foo"
 | |
|     end
 | |
| 
 | |
|     assert_predicate f, :stable?
 | |
|   end
 | |
| end
 | 
