Module: MiniTestSpecRails::DSL::ClassMethods

Defined in:
lib/minitest-spec-rails/dsl.rb

Instance Method Summary collapse

Instance Method Details

#after(type = nil, &block) ⇒ Object



17
18
19
# File 'lib/minitest-spec-rails/dsl.rb', line 17

def after(type = nil, &block)
  teardown { self.instance_eval(&block) }
end

#before(type = nil, &block) ⇒ Object



13
14
15
# File 'lib/minitest-spec-rails/dsl.rb', line 13

def before(type = nil, &block)
  setup { self.instance_eval(&block) }
end

#described_classObject



38
39
40
41
42
43
44
# File 'lib/minitest-spec-rails/dsl.rb', line 38

def described_class
  begin
    describing_class.name.gsub(/Test$/, '').constantize
  rescue NameError
    nil
  end
end

#describing_classObject



34
35
36
# File 'lib/minitest-spec-rails/dsl.rb', line 34

def describing_class
  ancestors.detect { |a| Class === a && rails_test_cases.include?(a.superclass) }
end

#rails_test_casesObject



25
26
27
# File 'lib/minitest-spec-rails/dsl.rb', line 25

def rails_test_cases
  RAILS_TEST_CASES
end

#register_rails_test_case(test_case) ⇒ Object



29
30
31
32
# File 'lib/minitest-spec-rails/dsl.rb', line 29

def register_rails_test_case(test_case)
  return if RAILS_TEST_CASES.include?(test_case)
  RAILS_TEST_CASES.unshift(test_case)
end

#test(name, &block) ⇒ Object



21
22
23
# File 'lib/minitest-spec-rails/dsl.rb', line 21

def test(name, &block)
  it { self.instance_eval(&block) }
end