Method: Fakes::ClassSwap#get_modules

Defined in:
lib/fakes/class_swap.rb

#get_modules(fully_qualified_klass) ⇒ Object



25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/fakes/class_swap.rb', line 25

def get_modules(fully_qualified_klass)
  klass_parts = fully_qualified_klass.to_s.split("::")
  root = Object
  modules = {}
  modules[:Object] = root

  klass_parts.each do |part|
    class_or_module = root.const_get(part.to_sym)
    modules[part.to_sym] = class_or_module
    root = class_or_module
  end

  modules
end