diff options
| author | Jack Nagel | 2013-06-28 21:17:12 -0500 |
|---|---|---|
| committer | Jack Nagel | 2013-06-28 21:18:04 -0500 |
| commit | f6536e9c8bae3c53a0b7c97b7bdddc0ce7beab83 (patch) | |
| tree | 8f3b053f8c2adf5debb384302f02b2a6d61d0946 /Library | |
| parent | 033ef09518f5da1fdb56adb4cb90abd30e7223a6 (diff) | |
| download | brew-f6536e9c8bae3c53a0b7c97b7bdddc0ce7beab83.tar.bz2 | |
Reject versions that aren't strings
Diffstat (limited to 'Library')
| -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') |
