formulary: use FormulaClassUnavailableError
Present a more helpful error message if a formula file was loaded, but the class(es) therein didn't match the expected formula class name.
This commit is contained in:
parent
1ded40a744
commit
c3076f0b69
@ -23,8 +23,12 @@ class Formulary
|
||||
|
||||
begin
|
||||
mod.const_get(class_name)
|
||||
rescue NameError => e
|
||||
raise FormulaUnavailableError, name, e.backtrace
|
||||
rescue NameError => original_exception
|
||||
class_list = mod.constants.
|
||||
map { |const_name| mod.const_get(const_name) }.
|
||||
select { |const| const.is_a?(Class) }
|
||||
e = FormulaClassUnavailableError.new(name, path, class_name, class_list)
|
||||
raise e, "", original_exception.backtrace
|
||||
end
|
||||
end
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user