Module: Testspace::Modules

Defined in:
lib/testspace/modules.rb

Constant Summary collapse

@@number =
0
@@mutex_to_next_number =
::Mutex.new

Class Method Summary collapse

Class Method Details

.createObject



12
13
14
15
16
17
18
# File 'lib/testspace/modules.rb', line 12

def self.create
  m = ::Module.new
  const_set "M#{next_number}", m
  m.name # fix module's name
  m.singleton_class.include ::Testspace::Module
  m
end

.next_numberObject



6
7
8
9
10
# File 'lib/testspace/modules.rb', line 6

def self.next_number
  @@mutex_to_next_number.synchronize do
    @@number += 1
  end
end