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



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

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



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

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



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

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