Class: ActiveSupport::TestCase

Inherits:
Minitest::Test
  • Object
show all
Extended by:
ActiveSupport::Testing::Declarative
Includes:
ActiveRecord::TestFixtures, ActiveSupport::Testing::Assertions, ActiveSupport::Testing::Deprecation, ActiveSupport::Testing::SetupAndTeardown, ActiveSupport::Testing::TaggedLogging, ActiveSupport::Testing::TimeHelpers
Defined in:
activesupport/lib/active_support/test_case.rb,
railties/lib/rails/test_help.rb

Constant Summary collapse

Assertion =
Minitest::Assertion

Class Method Summary collapse

Instance Method Summary collapse

Methods included from ActiveSupport::Testing::Declarative

test

Methods included from ActiveRecord::TestFixtures

#after_teardown, #before_setup, #enlist_fixture_connections, #run_in_transaction?, #setup_fixtures, #teardown_fixtures

Methods included from Concern

#append_features, #class_methods, extended, #included

Methods included from ActiveSupport::Testing::TimeHelpers

#travel, #travel_back, #travel_to

Methods included from ActiveSupport::Testing::Deprecation

#assert_deprecated, #assert_not_deprecated, #collect_deprecations

Methods included from ActiveSupport::Testing::Assertions

#assert_difference, #assert_no_difference, #assert_not

Methods included from ActiveSupport::Testing::SetupAndTeardown

#after_teardown, #before_setup

Methods included from ActiveSupport::Testing::TaggedLogging

#before_setup

Class Method Details

.test_orderObject

Returns the order in which test cases are run.

ActiveSupport::TestCase.test_order # => :sorted

Possible values are :random, :parallel, :alpha, :sorted. Defaults to :sorted.


38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'activesupport/lib/active_support/test_case.rb', line 38

def test_order
  test_order = ActiveSupport.test_order

  if test_order.nil?
    ActiveSupport::Deprecation.warn "You did not specify a value for the " \
      "configuration option `active_support.test_order`. In Rails 5, " \
      "the default value of this option will change from `:sorted` to " \
      "`:random`.\n" \
      "To disable this warning and keep the current behavior, you can add " \
      "the following line to your `config/environments/test.rb`:\n" \
      "\n" \
      "  Rails.application.configure do\n" \
      "    config.active_support.test_order = :sorted\n" \
      "  end\n" \
      "\n" \
      "Alternatively, you can opt into the future behavior by setting this " \
      "option to `:random`."

    test_order = :sorted
    self.test_order = test_order
  end

  test_order
end

.test_order=(new_order) ⇒ Object

Sets the order in which test cases are run.

ActiveSupport::TestCase.test_order = :random # => :random

Valid values are:

  • :random (to run tests in random order)

  • :parallel (to run tests in parallel)

  • :sorted (to run tests alphabetically by method name)

  • :alpha (equivalent to :sorted)


28
29
30
# File 'activesupport/lib/active_support/test_case.rb', line 28

def test_order=(new_order)
  ActiveSupport.test_order = new_order
end

Instance Method Details

#assert_nothing_raised(*args) ⇒ Object

Fails if the block raises an exception.

assert_nothing_raised do
  ...
end

96
97
98
# File 'activesupport/lib/active_support/test_case.rb', line 96

def assert_nothing_raised(*args)
  yield
end