diff options
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/bottle_version.rb | 8 | ||||
| -rw-r--r-- | Library/Homebrew/bottles.rb | 3 | ||||
| -rw-r--r-- | Library/Homebrew/test/test_bottle_versions.rb | 8 |
3 files changed, 18 insertions, 1 deletions
diff --git a/Library/Homebrew/bottle_version.rb b/Library/Homebrew/bottle_version.rb new file mode 100644 index 000000000..6ad8ebeb7 --- /dev/null +++ b/Library/Homebrew/bottle_version.rb @@ -0,0 +1,8 @@ +class BottleVersion < Version + def self._parse spec + spec = Pathname.new(spec) unless spec.is_a? Pathname + stem = spec.stem + + super + end +end diff --git a/Library/Homebrew/bottles.rb b/Library/Homebrew/bottles.rb index 60a4dcca0..ab484c134 100644 --- a/Library/Homebrew/bottles.rb +++ b/Library/Homebrew/bottles.rb @@ -1,6 +1,7 @@ require 'tab' require 'macos' require 'extend/ARGV' +require 'bottle_version' # TODO: use options={} for some arguments. @@ -91,8 +92,8 @@ def bottle_tag end def bottle_filename_formula_name filename - version = Version.parse(filename).to_s path = Pathname.new filename + version = BottleVersion.parse(path).to_s basename = path.basename.to_s basename.rpartition("-#{version}").first end diff --git a/Library/Homebrew/test/test_bottle_versions.rb b/Library/Homebrew/test/test_bottle_versions.rb new file mode 100644 index 000000000..f418912b7 --- /dev/null +++ b/Library/Homebrew/test/test_bottle_versions.rb @@ -0,0 +1,8 @@ +require 'testing_env' +require 'bottle_version' + +class BottleVersionParsingTests < Test::Unit::TestCase + def assert_version_detected expected, path + assert_equal expected, BottleVersion.parse(path).to_s + end +end |
