Overriding Object.class was not my intention
Renamed to Formula::class_s.
This commit is contained in:
parent
d62fd87436
commit
f0f59659dd
@ -35,7 +35,7 @@ def make url
|
|||||||
template=<<-EOS
|
template=<<-EOS
|
||||||
require 'brewkit'
|
require 'brewkit'
|
||||||
|
|
||||||
class #{Formula.class $1} <Formula
|
class #{Formula.class_s $1} <Formula
|
||||||
@url='#{url}'
|
@url='#{url}'
|
||||||
@homepage=''
|
@homepage=''
|
||||||
@md5=''
|
@md5=''
|
||||||
|
|||||||
@ -151,14 +151,14 @@ class Formula
|
|||||||
"-DCMAKE_INSTALL_PREFIX='#{prefix}' -DCMAKE_BUILD_TYPE=None"
|
"-DCMAKE_INSTALL_PREFIX='#{prefix}' -DCMAKE_BUILD_TYPE=None"
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.class name
|
def self.class_s name
|
||||||
#remove invalid characters and camelcase
|
#remove invalid characters and camelcase
|
||||||
name.capitalize.gsub(/[-_\s]([a-zA-Z0-9])/) { $1.upcase }
|
name.capitalize.gsub(/[-_\s]([a-zA-Z0-9])/) { $1.upcase }
|
||||||
end
|
end
|
||||||
|
|
||||||
def self.factory name
|
def self.factory name
|
||||||
require self.path(name)
|
require self.path(name)
|
||||||
return eval(self.class(name)).new(name)
|
return eval(self.class_s(name)).new(name)
|
||||||
rescue LoadError
|
rescue LoadError
|
||||||
raise FormulaUnavailableError.new(name)
|
raise FormulaUnavailableError.new(name)
|
||||||
end
|
end
|
||||||
|
|||||||
@ -318,7 +318,7 @@ class BeerTasting <Test::Unit::TestCase
|
|||||||
|
|
||||||
FOOBAR='foo-bar'
|
FOOBAR='foo-bar'
|
||||||
def test_formula_funcs
|
def test_formula_funcs
|
||||||
classname=Formula.class(FOOBAR)
|
classname=Formula.class_s(FOOBAR)
|
||||||
path=Formula.path(FOOBAR)
|
path=Formula.path(FOOBAR)
|
||||||
|
|
||||||
assert_equal "FooBar", classname
|
assert_equal "FooBar", classname
|
||||||
@ -471,4 +471,10 @@ class BeerTasting <Test::Unit::TestCase
|
|||||||
|
|
||||||
assert_raises(RuntimeError) {Pathname.getwd.install 'non_existant_file'}
|
assert_raises(RuntimeError) {Pathname.getwd.install 'non_existant_file'}
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def test_formula_class_func
|
||||||
|
assert_equal Formula.class_s('s-lang'), 'SLang'
|
||||||
|
assert_equal Formula.class_s('pkg-config'), 'PkgConfig'
|
||||||
|
assert_equal Formula.class_s('foo_bar'), 'FooBar'
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user