Class: ActiveMocker::LoadedMocks

Inherits:
Object
  • Object
show all
Defined in:
lib/active_mocker/loaded_mocks.rb

Class Method Summary collapse

Class Method Details

.add(mocks_to_add) ⇒ Object



7
8
9
# File 'lib/active_mocker/loaded_mocks.rb', line 7

def add(mocks_to_add)
  mocks.merge!({mocks_to_add.name => mocks_to_add})
end

.add_subclass(subclass) ⇒ Object



11
12
13
# File 'lib/active_mocker/loaded_mocks.rb', line 11

def add_subclass(subclass)
  subclasses.merge!({subclass.mocked_class => subclass})
end

.allObject



31
32
33
# File 'lib/active_mocker/loaded_mocks.rb', line 31

def all
  mocks
end

.all_mocks_as_strObject



54
55
56
# File 'lib/active_mocker/loaded_mocks.rb', line 54

def all_mocks_as_str
  mocks.keys + subclasses.keys
end

.class_name_to_mockObject



58
59
60
61
62
63
# File 'lib/active_mocker/loaded_mocks.rb', line 58

def class_name_to_mock
  hash = mocks.values.each_with_object({}) do |mock_constant, hash|
    hash[mock_constant.mocked_class] = mock_constant
  end
  hash.merge(subclasses)
end

.clear_allObject



35
36
37
38
# File 'lib/active_mocker/loaded_mocks.rb', line 35

def clear_all
  all_mocks.each { |m| m.clear_mock }
  clear_subclasses
end

.clear_subclassesObject



19
20
21
# File 'lib/active_mocker/loaded_mocks.rb', line 19

def clear_subclasses
  subclasses.clear
end

.delete_allObject



40
41
42
# File 'lib/active_mocker/loaded_mocks.rb', line 40

def delete_all
  all_mocks.each { |m| m.delete_all }
end

.find(klass) ⇒ Object



27
28
29
# File 'lib/active_mocker/loaded_mocks.rb', line 27

def find(klass)
  class_name_to_mock[klass]
end

.mocksObject



23
24
25
# File 'lib/active_mocker/loaded_mocks.rb', line 23

def mocks
  @mocks ||= {}
end

.reload_allObject



44
45
46
# File 'lib/active_mocker/loaded_mocks.rb', line 44

def reload_all
  all_mocks.each { |m| m.send(:reload) }
end

.subclassesObject



15
16
17
# File 'lib/active_mocker/loaded_mocks.rb', line 15

def subclasses
  @subclasses ||= {}
end

.undefine_allObject



48
49
50
51
52
# File 'lib/active_mocker/loaded_mocks.rb', line 48

def undefine_all
  all_mocks_as_str.each do |n|
    Object.send(:remove_const, n) if Object.const_defined?(n)
  end
end