diff options
| -rw-r--r-- | Library/Homebrew/formula_support.rb | 2 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_software_spec.rb | 6 |
2 files changed, 8 insertions, 0 deletions
diff --git a/Library/Homebrew/formula_support.rb b/Library/Homebrew/formula_support.rb index 1ef4d3abc..69420ff0f 100644 --- a/Library/Homebrew/formula_support.rb +++ b/Library/Homebrew/formula_support.rb @@ -40,6 +40,8 @@ class SoftwareSpec when nil then Version.detect(url, specs) when String then Version.new(val) when Hash then Version.new_with_scheme(*val.shift) + else + raise TypeError, "version '#{val.inspect}' should be a string" end end diff --git a/Library/Homebrew/test/test_software_spec.rb b/Library/Homebrew/test/test_software_spec.rb index f3eed4769..856bea611 100644 --- a/Library/Homebrew/test/test_software_spec.rb +++ b/Library/Homebrew/test/test_software_spec.rb @@ -66,6 +66,12 @@ class SoftwareSpecTests < Test::Unit::TestCase assert @spec.version.detected_from_url? end + def test_rejects_non_string_versions + assert_raises(TypeError) { @spec.version(1) } + assert_raises(TypeError) { @spec.version(2.0) } + assert_raises(TypeError) { @spec.version(Object.new) } + end + def test_mirrors assert_empty @spec.mirrors @spec.mirror('foo') |
