Method: MotionSpec.run

Defined in:
lib/motion-spec/core.rb

.run(arg = nil) ⇒ Object



41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/motion-spec/core.rb', line 41

def self.run(arg = nil)
  unless respond_to?(:handle_specification_begin)
    extend(Outputs[ENV['output']] || DEFAULT_OUTPUT_MODULE)
  end

  @timer ||= Time.now

  if Platform.android?
    @main_activity ||= arg

    @contexts.each { |context| execute_context(context) }
    return handle_summary
  end

  Counter[:context_depth] += 1
  handle_specification_begin(current_context.name)
  current_context.performSelector('run', withObject: nil, afterDelay: 0)
end