Module: RspecInContext::InContext::ClassMethods

Defined in:
lib/rspec_in_context/in_context.rb

Instance Method Summary collapse

Instance Method Details

#define_context(context_name, namespace: nil, ns: nil, &block) ⇒ Object



61
62
63
64
65
66
# File 'lib/rspec_in_context/in_context.rb', line 61

def define_context(context_name, namespace: nil, ns: nil, &block)
  namespace ||= ns
  instance_exec do
    InContext.add_context(context_name, hooks.instance_variable_get(:@owner), namespace, &block)
  end
end

#execute_testsObject Also known as: instanciate_context



56
57
58
# File 'lib/rspec_in_context/in_context.rb', line 56

def execute_tests
  instance_exec(&Thread.current[:test_block]) if Thread.current[:test_block]
end

#in_context(context_name, *args, namespace: nil, ns: nil, &block) ⇒ Object



48
49
50
51
52
53
54
# File 'lib/rspec_in_context/in_context.rb', line 48

def in_context(context_name, *args, namespace: nil, ns: nil, &block)
  namespace ||= ns
  Thread.current[:test_block] = block
  context(context_name.to_s) do
    instance_exec(*args, &InContext.find_context(context_name, namespace).block)
  end
end