Module: Supertype::ClassMethods
- Defined in:
- lib/nose/util.rb
Overview
Add a single method to get a class given the subtype name
Instance Method Summary collapse
-
#subtype_class(name) ⇒ Class
Get the class given the name of a subtype.
Instance Method Details
#subtype_class(name) ⇒ Class
Get the class given the name of a subtype
92 93 94 95 96 97 98 99 100 101 102 103 |
# File 'lib/nose/util.rb', line 92 def subtype_class(name) class_name = self.name.split('::')[0..-2] class_name << name.split('_').map do |name_part| name_part = name_part[0].upcase + name_part[1..-1] name_part.sub 'Id', 'ID' end.join class_name[-1] = class_name[-1] + self.name.split('::').last class_name.reduce(Object) do |mod, name_part| mod.const_get(name_part) end end |