# typed: true
# DO NOT EDIT MANUALLY
# This is an autogenerated file for types exported from the `minitest` gem.
# Please instead update this file by running `bin/tapioca gem minitest`.
# Kernel extensions for minitest
#
# source://minitest//lib/minitest/spec.rb#46
module Kernel
private
# Describe a series of expectations for a given target +desc+.
#
# Defines a test class subclassing from either Minitest::Spec or
# from the surrounding describe's class. The surrounding class may
# subclass Minitest::Spec manually in order to easily share code:
#
# class MySpec < Minitest::Spec
# # ... shared code ...
# end
#
# class TestStuff < MySpec
# it "does stuff" do
# # shared code available here
# end
# describe "inner stuff" do
# it "still does stuff" do
# # ...and here
# end
# end
# end
#
# For more information on getting started with writing specs, see:
#
# http://www.rubyinside.com/a-minitestspec-tutorial-elegant-spec-style-testing-that-comes-with-ruby-5354.html
#
# For some suggestions on how to improve your specs, try:
#
# https://betterspecs.org
#
# but do note that several items there are debatable or specific to
# rspec.
#
# For more information about expectations, see Minitest::Expectations.
#
# source://minitest//lib/minitest/spec.rb#82
def describe(desc, *additional_desc, &block); end
end
# :include: README.rdoc
#
# source://minitest//lib/minitest/parallel.rb#1
module Minitest
class << self
# Internal run method. Responsible for telling all Runnable
# sub-classes to run.
#
# source://minitest//lib/minitest.rb#176
def __run(reporter, options); end
# A simple hook allowing you to run a block of code after everything
# is done running. Eg:
#
# Minitest.after_run { p $debugging_info }
#
# source://minitest//lib/minitest.rb#97
def after_run(&block); end
# source://minitest//lib/minitest.rb#19
def allow_fork; end
# source://minitest//lib/minitest.rb#19
def allow_fork=(_arg0); end
# Registers Minitest to run at process exit
#
# source://minitest//lib/minitest.rb#69
def autorun; end
# source://minitest//lib/minitest.rb#19
def backtrace_filter; end
# source://minitest//lib/minitest.rb#19
def backtrace_filter=(_arg0); end
# source://minitest//lib/minitest.rb#18
def cattr_accessor(name); end
# source://minitest//lib/minitest.rb#1134
def clock_time; end
# source://minitest//lib/minitest.rb#19
def extensions; end
# source://minitest//lib/minitest.rb#19
def extensions=(_arg0); end
# source://minitest//lib/minitest.rb#271
def filter_backtrace(bt); end
# source://minitest//lib/minitest.rb#19
def info_signal; end
# source://minitest//lib/minitest.rb#19
def info_signal=(_arg0); end
# source://minitest//lib/minitest.rb#101
def init_plugins(options); end
# source://minitest//lib/minitest.rb#108
def load_plugins; end
# source://minitest//lib/minitest.rb#19
def parallel_executor; end
# source://minitest//lib/minitest.rb#19
def parallel_executor=(_arg0); end
# source://minitest//lib/minitest.rb#189
def process_args(args = T.unsafe(nil)); end
# source://minitest//lib/minitest.rb#19
def reporter; end
# source://minitest//lib/minitest.rb#19
def reporter=(_arg0); end
# This is the top-level run method. Everything starts from here. It
# tells each Runnable sub-class to run, and each of those are
# responsible for doing whatever they do.
#
# The overall structure of a run looks like this:
#
# Minitest.autorun
# Minitest.run(args)
# Minitest.__run(reporter, options)
# Runnable.runnables.each
# runnable.run(reporter, options)
# self.runnable_methods.each
# self.run_one_method(self, runnable_method, reporter)
# Minitest.run_one_method(klass, runnable_method)
# klass.new(runnable_method).run
#
# source://minitest//lib/minitest.rb#143
def run(args = T.unsafe(nil)); end
# source://minitest//lib/minitest.rb#1125
def run_one_method(klass, method_name); end
# source://minitest//lib/minitest.rb#19
def seed; end
# source://minitest//lib/minitest.rb#19
def seed=(_arg0); end
end
end
# Defines the API for Reporters. Subclass this and override whatever
# you want. Go nuts.
#
# source://minitest//lib/minitest.rb#627
class Minitest::AbstractReporter
# @return [AbstractReporter] a new instance of AbstractReporter
#
# source://minitest//lib/minitest.rb#629
def initialize; end
# Did this run pass?
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#664
def passed?; end
# About to start running a test. This allows a reporter to show
# that it is starting or that we are in the middle of a test run.
#
# source://minitest//lib/minitest.rb#643
def prerecord(klass, name); end
# Output and record the result of the test. Call
# {result#result_code}[rdoc-ref:Runnable#result_code] to get the
# result character string. Stores the result of the run if the run
# did not pass.
#
# source://minitest//lib/minitest.rb#652
def record(result); end
# Outputs the summary of the run.
#
# source://minitest//lib/minitest.rb#658
def report; end
# Starts reporting on the run.
#
# source://minitest//lib/minitest.rb#636
def start; end
# source://minitest//lib/minitest.rb#668
def synchronize(&block); end
end
# Represents run failures.
#
# source://minitest//lib/minitest.rb#951
class Minitest::Assertion < ::Exception
# source://minitest//lib/minitest.rb#954
def error; end
# Where was this run before an assertion was raised?
#
# source://minitest//lib/minitest.rb#961
def location; end
# source://minitest//lib/minitest.rb#968
def result_code; end
# source://minitest//lib/minitest.rb#972
def result_label; end
end
# source://minitest//lib/minitest.rb#952
Minitest::Assertion::RE = T.let(T.unsafe(nil), Regexp)
# Minitest Assertions. All assertion methods accept a +msg+ which is
# printed if the assertion fails.
#
# Protocol: Nearly everything here boils up to +assert+, which
# expects to be able to increment an instance accessor named
# +assertions+. This is not provided by Assertions and must be
# provided by the thing including Assertions. See Minitest::Runnable
# for an example.
#
# source://minitest//lib/minitest/assertions.rb#18
module Minitest::Assertions
# source://minitest//lib/minitest/assertions.rb#188
def _synchronize; end
# source://minitest//lib/minitest/assertions.rb#201
def _where; end
# Fails unless +test+ is truthy.
#
# source://minitest//lib/minitest/assertions.rb#178
def assert(test, msg = T.unsafe(nil)); end
# Fails unless +obj+ is empty.
#
# source://minitest//lib/minitest/assertions.rb#195
def assert_empty(obj, msg = T.unsafe(nil)); end
# Fails unless exp == act printing the difference between
# the two, if possible.
#
# If there is no visible difference but the assertion fails, you
# should suspect that your #== is buggy, or your inspect output is
# missing crucial details. For nicer structural diffing, set
# Minitest::Test.make_my_diffs_pretty!
#
# For floats use assert_in_delta.
#
# See also: Minitest::Assertions.diff
#
# source://minitest//lib/minitest/assertions.rb#221
def assert_equal(exp, act, msg = T.unsafe(nil)); end
# For comparing Floats. Fails unless +exp+ and +act+ are within +delta+
# of each other.
#
# assert_in_delta Math::PI, (22.0 / 7.0), 0.01
#
# source://minitest//lib/minitest/assertions.rb#242
def assert_in_delta(exp, act, delta = T.unsafe(nil), msg = T.unsafe(nil)); end
# For comparing Floats. Fails unless +exp+ and +act+ have a relative
# error less than +epsilon+.
#
# source://minitest//lib/minitest/assertions.rb#254
def assert_in_epsilon(exp, act, epsilon = T.unsafe(nil), msg = T.unsafe(nil)); end
# Fails unless +collection+ includes +obj+.
#
# source://minitest//lib/minitest/assertions.rb#261
def assert_includes(collection, obj, msg = T.unsafe(nil)); end
# Fails unless +obj+ is an instance of +cls+.
#
# source://minitest//lib/minitest/assertions.rb#272
def assert_instance_of(cls, obj, msg = T.unsafe(nil)); end
# Fails unless +obj+ is a kind of +cls+.
#
# source://minitest//lib/minitest/assertions.rb#283
def assert_kind_of(cls, obj, msg = T.unsafe(nil)); end
# Fails unless +matcher+ =~ +obj+.
#
# source://minitest//lib/minitest/assertions.rb#293
def assert_match(matcher, obj, msg = T.unsafe(nil)); end
# Assert that the mock verifies correctly.
#
# source://minitest//lib/minitest/mock.rb#250
def assert_mock(mock); end
# Fails unless +obj+ is nil
#
# source://minitest//lib/minitest/assertions.rb#305
def assert_nil(obj, msg = T.unsafe(nil)); end
# For testing with binary operators. Eg:
#
# assert_operator 5, :<=, 4
#
# source://minitest//lib/minitest/assertions.rb#315
def assert_operator(o1, op, o2 = T.unsafe(nil), msg = T.unsafe(nil)); end
# Fails if stdout or stderr do not output the expected results.
# Pass in nil if you don't care about that streams output. Pass in
# "" if you require it to be silent. Pass in a regexp if you want
# to pattern match.
#
# assert_output(/hey/) { method_with_output }
#
# NOTE: this uses #capture_io, not #capture_subprocess_io.
#
# See also: #assert_silent
#
# source://minitest//lib/minitest/assertions.rb#333
def assert_output(stdout = T.unsafe(nil), stderr = T.unsafe(nil)); end
# Fails unless +path+ exists.
#
# source://minitest//lib/minitest/assertions.rb#357
def assert_path_exists(path, msg = T.unsafe(nil)); end
# For testing with pattern matching (only supported with Ruby 3.0 and later)
#
# # pass
# assert_pattern { [1,2,3] => [Integer, Integer, Integer] }
#
# # fail "length mismatch (given 3, expected 1)"
# assert_pattern { [1,2,3] => [Integer] }
#
# The bare => pattern will raise a NoMatchingPatternError on failure, which would
# normally be counted as a test error. This assertion rescues NoMatchingPatternError and
# generates a test failure. Any other exception will be raised as normal and generate a test
# error.
#
# @raise [NotImplementedError]
#
# source://minitest//lib/minitest/assertions.rb#376
def assert_pattern; end
# For testing with predicates. Eg:
#
# assert_predicate str, :empty?
#
# This is really meant for specs and is front-ended by assert_operator:
#
# str.must_be :empty?
#
# source://minitest//lib/minitest/assertions.rb#397
def assert_predicate(o1, op, msg = T.unsafe(nil)); end
# Fails unless the block raises one of +exp+. Returns the
# exception matched so you can check the message, attributes, etc.
#
# +exp+ takes an optional message on the end to help explain
# failures and defaults to StandardError if no exception class is
# passed. Eg:
#
# assert_raises(CustomError) { method_with_custom_error }
#
# With custom error message:
#
# assert_raises(CustomError, 'This should have raised CustomError') { method_with_custom_error }
#
# Using the returned object:
#
# error = assert_raises(CustomError) do
# raise CustomError, 'This is really bad'
# end
#
# assert_equal 'This is really bad', error.message
#
# source://minitest//lib/minitest/assertions.rb#424
def assert_raises(*exp); end
# Fails unless +obj+ responds to +meth+.
# include_all defaults to false to match Object#respond_to?
#
# source://minitest//lib/minitest/assertions.rb#456
def assert_respond_to(obj, meth, msg = T.unsafe(nil), include_all: T.unsafe(nil)); end
# Fails unless +exp+ and +act+ are #equal?
#
# source://minitest//lib/minitest/assertions.rb#466
def assert_same(exp, act, msg = T.unsafe(nil)); end
# +send_ary+ is a receiver, message and arguments.
#
# Fails unless the call returns a true value
#
# source://minitest//lib/minitest/assertions.rb#479
def assert_send(send_ary, m = T.unsafe(nil)); end
# Fails if the block outputs anything to stderr or stdout.
#
# See also: #assert_output
#
# source://minitest//lib/minitest/assertions.rb#493
def assert_silent; end
# Fails unless the block throws +sym+
#
# source://minitest//lib/minitest/assertions.rb#502
def assert_throws(sym, msg = T.unsafe(nil)); end
# Captures $stdout and $stderr into strings:
#
# out, err = capture_io do
# puts "Some info"
# warn "You did a bad thing"
# end
#
# assert_match %r%info%, out
# assert_match %r%bad%, err
#
# NOTE: For efficiency, this method uses StringIO and does not
# capture IO for subprocesses. Use #capture_subprocess_io for
# that.
#
# source://minitest//lib/minitest/assertions.rb#543
def capture_io; end
# Captures $stdout and $stderr into strings, using Tempfile to
# ensure that subprocess IO is captured as well.
#
# out, err = capture_subprocess_io do
# system "echo Some info"
# system "echo You did a bad thing 1>&2"
# end
#
# assert_match %r%info%, out
# assert_match %r%bad%, err
#
# NOTE: This method is approximately 10x slower than #capture_io so
# only use it when you need to test the output of a subprocess.
#
# source://minitest//lib/minitest/assertions.rb#576
def capture_subprocess_io; end
# Returns a diff between +exp+ and +act+. If there is no known
# diff command or if it doesn't make sense to diff the output
# (single line, short output), then it simply returns a basic
# comparison between the two.
#
# See +things_to_diff+ for more info.
#
# source://minitest//lib/minitest/assertions.rb#59
def diff(exp, act); end
# Returns details for exception +e+
#
# source://minitest//lib/minitest/assertions.rb#608
def exception_details(e, msg); end
# Fails after a given date (in the local time zone). This allows
# you to put time-bombs in your tests if you need to keep
# something around until a later date lest you forget about it.
#
# source://minitest//lib/minitest/assertions.rb#624
def fail_after(y, m, d, msg); end
# Fails with +msg+.
#
# source://minitest//lib/minitest/assertions.rb#631
def flunk(msg = T.unsafe(nil)); end
# Returns a proc that will output +msg+ along with the default message.
#
# source://minitest//lib/minitest/assertions.rb#639
def message(msg = T.unsafe(nil), ending = T.unsafe(nil), &default); end
# This returns a human-readable version of +obj+. By default
# #inspect is called. You can override this to use #pretty_inspect
# if you want.
#
# See Minitest::Test.make_my_diffs_pretty!
#
# source://minitest//lib/minitest/assertions.rb#129
def mu_pp(obj); end
# This returns a diff-able more human-readable version of +obj+.
# This differs from the regular mu_pp because it expands escaped
# newlines and makes hex-values (like object_ids) generic. This
# uses mu_pp to do the first pass and then cleans it up.
#
# source://minitest//lib/minitest/assertions.rb#152
def mu_pp_for_diff(obj); end
# used for counting assertions
#
# source://minitest//lib/minitest/assertions.rb#650
def pass(_msg = T.unsafe(nil)); end
# Fails if +test+ is truthy.
#
# source://minitest//lib/minitest/assertions.rb#657
def refute(test, msg = T.unsafe(nil)); end
# Fails if +obj+ is empty.
#
# source://minitest//lib/minitest/assertions.rb#665
def refute_empty(obj, msg = T.unsafe(nil)); end
# Fails if exp == act.
#
# For floats use refute_in_delta.
#
# source://minitest//lib/minitest/assertions.rb#676
def refute_equal(exp, act, msg = T.unsafe(nil)); end
# For comparing Floats. Fails if +exp+ is within +delta+ of +act+.
#
# refute_in_delta Math::PI, (22.0 / 7.0)
#
# source://minitest//lib/minitest/assertions.rb#688
def refute_in_delta(exp, act, delta = T.unsafe(nil), msg = T.unsafe(nil)); end
# For comparing Floats. Fails if +exp+ and +act+ have a relative error
# less than +epsilon+.
#
# source://minitest//lib/minitest/assertions.rb#700
def refute_in_epsilon(a, b, epsilon = T.unsafe(nil), msg = T.unsafe(nil)); end
# Fails if +collection+ includes +obj+.
#
# source://minitest//lib/minitest/assertions.rb#707
def refute_includes(collection, obj, msg = T.unsafe(nil)); end
# Fails if +obj+ is an instance of +cls+.
#
# source://minitest//lib/minitest/assertions.rb#718
def refute_instance_of(cls, obj, msg = T.unsafe(nil)); end
# Fails if +obj+ is a kind of +cls+.
#
# source://minitest//lib/minitest/assertions.rb#728
def refute_kind_of(cls, obj, msg = T.unsafe(nil)); end
# Fails if +matcher+ =~ +obj+.
#
# source://minitest//lib/minitest/assertions.rb#736
def refute_match(matcher, obj, msg = T.unsafe(nil)); end
# Fails if +obj+ is nil.
#
# source://minitest//lib/minitest/assertions.rb#746
def refute_nil(obj, msg = T.unsafe(nil)); end
# Fails if +o1+ is not +op+ +o2+. Eg:
#
# refute_operator 1, :>, 2 #=> pass
# refute_operator 1, :<, 2 #=> fail
#
# source://minitest//lib/minitest/assertions.rb#781
def refute_operator(o1, op, o2 = T.unsafe(nil), msg = T.unsafe(nil)); end
# Fails if +path+ exists.
#
# source://minitest//lib/minitest/assertions.rb#790
def refute_path_exists(path, msg = T.unsafe(nil)); end
# For testing with pattern matching (only supported with Ruby 3.0 and later)
#
# # pass
# refute_pattern { [1,2,3] => [String] }
#
# # fail "NoMatchingPatternError expected, but nothing was raised."
# refute_pattern { [1,2,3] => [Integer, Integer, Integer] }
#
# This assertion expects a NoMatchingPatternError exception, and will fail if none is raised. Any
# other exceptions will be raised as normal and generate a test error.
#
# @raise [NotImplementedError]
#
# source://minitest//lib/minitest/assertions.rb#763
def refute_pattern; end
# For testing with predicates.
#
# refute_predicate str, :empty?
#
# This is really meant for specs and is front-ended by refute_operator:
#
# str.wont_be :empty?
#
# source://minitest//lib/minitest/assertions.rb#804
def refute_predicate(o1, op, msg = T.unsafe(nil)); end
# Fails if +obj+ responds to the message +meth+.
# include_all defaults to false to match Object#respond_to?
#
# source://minitest//lib/minitest/assertions.rb#813
def refute_respond_to(obj, meth, msg = T.unsafe(nil), include_all: T.unsafe(nil)); end
# Fails if +exp+ is the same (by object identity) as +act+.
#
# source://minitest//lib/minitest/assertions.rb#822
def refute_same(exp, act, msg = T.unsafe(nil)); end
# Skips the current run. If run in verbose-mode, the skipped run
# gets listed at the end of the run but doesn't cause a failure
# exit code.
#
# @raise [Minitest::Skip]
#
# source://minitest//lib/minitest/assertions.rb#835
def skip(msg = T.unsafe(nil), _ignored = T.unsafe(nil)); end
# Skips the current run until a given date (in the local time
# zone). This allows you to put some fixes on hold until a later
# date, but still holds you accountable and prevents you from
# forgetting it.
#
# source://minitest//lib/minitest/assertions.rb#847
def skip_until(y, m, d, msg); end
# Was this testcase skipped? Meant for #teardown.
#
# @return [Boolean]
#
# source://minitest//lib/minitest/assertions.rb#856
def skipped?; end
# Returns things to diff [expect, butwas], or [nil, nil] if nothing to diff.
#
# Criterion:
#
# 1. Strings include newlines or escaped newlines, but not both.
# 2. or: String lengths are > 30 characters.
# 3. or: Strings are equal to each other (but maybe different encodings?).
# 4. and: we found a diff executable.
#
# source://minitest//lib/minitest/assertions.rb#104
def things_to_diff(exp, act); end
class << self
# Returns the diff command to use in #diff. Tries to intelligently
# figure out what diff to use.
#
# source://minitest//lib/minitest/assertions.rb#29
def diff; end
# Set the diff command to use in #diff.
#
# source://minitest//lib/minitest/assertions.rb#47
def diff=(o); end
end
end
# source://minitest//lib/minitest/assertions.rb#206
Minitest::Assertions::E = T.let(T.unsafe(nil), String)
# source://minitest//lib/minitest/assertions.rb#19
Minitest::Assertions::UNDEFINED = T.let(T.unsafe(nil), Object)
# The standard backtrace filter for minitest.
#
# See Minitest.backtrace_filter=.
#
# source://minitest//lib/minitest.rb#1096
class Minitest::BacktraceFilter
# @return [BacktraceFilter] a new instance of BacktraceFilter
#
# source://minitest//lib/minitest.rb#1102
def initialize(regexp = T.unsafe(nil)); end
# Filter +bt+ to something useful. Returns the whole thing if
# $DEBUG (ruby) or $MT_DEBUG (env).
#
# source://minitest//lib/minitest.rb#1110
def filter(bt); end
# Returns the value of attribute regexp.
#
# source://minitest//lib/minitest.rb#1100
def regexp; end
# Sets the attribute regexp
#
# @param value the value to set the attribute regexp to.
#
# source://minitest//lib/minitest.rb#1100
def regexp=(_arg0); end
end
# source://minitest//lib/minitest.rb#1098
Minitest::BacktraceFilter::MT_RE = T.let(T.unsafe(nil), Regexp)
# Dispatch to multiple reporters as one.
#
# source://minitest//lib/minitest.rb#900
class Minitest::CompositeReporter < ::Minitest::AbstractReporter
# @return [CompositeReporter] a new instance of CompositeReporter
#
# source://minitest//lib/minitest.rb#906
def initialize(*reporters); end
# Add another reporter to the mix.
#
# source://minitest//lib/minitest.rb#918
def <<(reporter); end
# source://minitest//lib/minitest.rb#911
def io; end
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#922
def passed?; end
# source://minitest//lib/minitest.rb#930
def prerecord(klass, name); end
# source://minitest//lib/minitest.rb#937
def record(result); end
# source://minitest//lib/minitest.rb#943
def report; end
# The list of reporters to dispatch to.
#
# source://minitest//lib/minitest.rb#904
def reporters; end
# The list of reporters to dispatch to.
#
# source://minitest//lib/minitest.rb#904
def reporters=(_arg0); end
# source://minitest//lib/minitest.rb#926
def start; end
end
# Compresses backtraces.
#
# source://minitest//lib/minitest/compress.rb#5
module Minitest::Compress
# Takes a backtrace (array of strings) and compresses repeating
# cycles in it to make it more readable.
#
# source://minitest//lib/minitest/compress.rb#11
def compress(orig); end
end
# source://minitest//lib/minitest/spec.rb#41
class Minitest::Expectation < ::Struct
def ctx; end
def ctx=(_); end
# source://minitest//lib/minitest/spec.rb#25
def must_be(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_be_close_to(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_be_empty(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_be_instance_of(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_be_kind_of(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_be_nil(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_be_same_as(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_be_silent(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_be_within_delta(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_be_within_epsilon(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_equal(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_include(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_match(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_output(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_pattern_match(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_raise(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_respond_to(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def must_throw(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def path_must_exist(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def path_wont_exist(*args, **_arg1); end
def target; end
def target=(_); end
# source://minitest//lib/minitest/spec.rb#25
def wont_be(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_be_close_to(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_be_empty(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_be_instance_of(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_be_kind_of(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_be_nil(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_be_same_as(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_be_within_delta(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_be_within_epsilon(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_equal(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_include(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_match(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_pattern_match(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#25
def wont_respond_to(*args, **_arg1); end
class << self
def [](*_arg0); end
def inspect; end
def keyword_init?; end
def members; end
def new(*_arg0); end
end
end
# It's where you hide your "assertions".
#
# Please note, because of the way that expectations are implemented,
# all expectations (eg must_equal) are dependent upon a thread local
# variable +:current_spec+. If your specs rely on mixing threads into
# the specs themselves, you're better off using assertions or the new
# _(value) wrapper. For example:
#
# it "should still work in threads" do
# my_threaded_thingy do
# (1+1).must_equal 2 # bad
# assert_equal 2, 1+1 # good
# _(1 + 1).must_equal 2 # good
# value(1 + 1).must_equal 2 # good, also #expect
# _ { 1 + "1" }.must_raise TypeError # good
# end
# end
#
# source://minitest//lib/minitest/expectations.rb#20
module Minitest::Expectations
# source://minitest//lib/minitest/spec.rb#15
def must_be(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_be_close_to(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_be_empty(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_be_instance_of(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_be_kind_of(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_be_nil(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_be_same_as(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_be_silent(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_be_within_delta(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_be_within_epsilon(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_equal(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_include(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_match(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_output(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_pattern_match(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_raise(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_respond_to(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def must_throw(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def path_must_exist(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def path_wont_exist(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_be(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_be_close_to(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_be_empty(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_be_instance_of(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_be_kind_of(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_be_nil(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_be_same_as(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_be_within_delta(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_be_within_epsilon(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_equal(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_include(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_match(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_pattern_match(*args, **_arg1); end
# source://minitest//lib/minitest/spec.rb#15
def wont_respond_to(*args, **_arg1); end
end
# Provides a simple set of guards that you can use in your tests
# to skip execution if it is not applicable. These methods are
# mixed into Test as both instance and class methods so you
# can use them inside or outside of the test methods.
#
# def test_something_for_mri
# skip "bug 1234" if jruby?
# # ...
# end
#
# if windows? then
# # ... lots of test methods ...
# end
#
# source://minitest//lib/minitest.rb#1040
module Minitest::Guard
# Is this running on jruby?
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#1045
def jruby?(platform = T.unsafe(nil)); end
# Is this running on maglev?
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#1052
def maglev?(platform = T.unsafe(nil)); end
# Is this running on mri?
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#1062
def mri?(platform = T.unsafe(nil)); end
# Is this running on macOS?
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#1069
def osx?(platform = T.unsafe(nil)); end
# Is this running on rubinius?
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#1076
def rubinius?(platform = T.unsafe(nil)); end
# Is this running on windows?
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#1086
def windows?(platform = T.unsafe(nil)); end
end
# A simple and clean mock object framework.
#
# All mock objects are an instance of Mock
#
# source://minitest//lib/minitest/mock.rb#10
class Minitest::Mock
# @return [Mock] a new instance of Mock
#
# source://minitest//lib/minitest/mock.rb#50
def initialize(delegator = T.unsafe(nil)); end
# source://minitest//lib/minitest/mock.rb#33
def ===(*args, **kwargs, &b); end
# source://minitest//lib/minitest/mock.rb#122
def __call(name, data); end
def __respond_to?(*_arg0); end
# source://minitest//lib/minitest/mock.rb#33
def class(*args, **kwargs, &b); end
# Expect that method +name+ is called, optionally with +args+ (and
# +kwargs+ or a +blk+), and returns +retval+.
#
# @mock.expect(:meaning_of_life, 42)
# @mock.meaning_of_life # => 42
#
# @mock.expect(:do_something_with, true, [some_obj, true])
# @mock.do_something_with(some_obj, true) # => true
#
# @mock.expect(:do_something_else, true) do |a1, a2|
# a1 == "buggs" && a2 == :bunny
# end
#
# +args+ is compared to the expected args using case equality (ie, the
# '===' operator), allowing for less specific expectations.
#
# @mock.expect(:uses_any_string, true, [String])
# @mock.uses_any_string("foo") # => true
# @mock.verify # => true
#
# @mock.expect(:uses_one_string, true, ["foo"])
# @mock.uses_one_string("bar") # => raises MockExpectationError
#
# If a method will be called multiple times, specify a new expect for each one.
# They will be used in the order you define them.
#
# @mock.expect(:ordinal_increment, 'first')
# @mock.expect(:ordinal_increment, 'second')
#
# @mock.ordinal_increment # => 'first'
# @mock.ordinal_increment # => 'second'
# @mock.ordinal_increment # => raises MockExpectationError "No more expects available for :ordinal_increment"
#
# source://minitest//lib/minitest/mock.rb#93
def expect(name, retval, args = T.unsafe(nil), **kwargs, &blk); end
# source://minitest//lib/minitest/mock.rb#33
def inspect(*args, **kwargs, &b); end
# source://minitest//lib/minitest/mock.rb#33
def instance_eval(*args, **kwargs, &b); end
# source://minitest//lib/minitest/mock.rb#33
def instance_variables(*args, **kwargs, &b); end
# source://minitest//lib/minitest/mock.rb#152
def method_missing(sym, *args, **kwargs, &block); end
# source://minitest//lib/minitest/mock.rb#33
def object_id(*args, **kwargs, &b); end
# source://minitest//lib/minitest/mock.rb#33
def public_send(*args, **kwargs, &b); end
# @return [Boolean]
#
# source://minitest//lib/minitest/mock.rb#238
def respond_to?(sym, include_private = T.unsafe(nil)); end
# source://minitest//lib/minitest/mock.rb#33
def send(*args, **kwargs, &b); end
# source://minitest//lib/minitest/mock.rb#33
def to_s(*args, **kwargs, &b); end
# Verify that all methods were called as expected. Raises
# +MockExpectationError+ if the mock object was not called as
# expected.
#
# source://minitest//lib/minitest/mock.rb#142
def verify; end
private
# source://minitest//lib/minitest/mock.rb#33
def respond_to_missing?(*args, **kwargs, &b); end
end
# source://minitest//lib/minitest/parallel.rb#2
module Minitest::Parallel; end
# The engine used to run multiple tests in parallel.
#
# source://minitest//lib/minitest/parallel.rb#7
class Minitest::Parallel::Executor
# Create a parallel test executor of with +size+ workers.
#
# @return [Executor] a new instance of Executor
#
# source://minitest//lib/minitest/parallel.rb#17
def initialize(size); end
# Add a job to the queue
#
# source://minitest//lib/minitest/parallel.rb#43
def <<(work); end
# Shuts down the pool of workers by signalling them to quit and
# waiting for them all to finish what they're currently working
# on.
#
# source://minitest//lib/minitest/parallel.rb#50
def shutdown; end
# The size of the pool of workers.
#
# source://minitest//lib/minitest/parallel.rb#12
def size; end
# Start the executor
#
# source://minitest//lib/minitest/parallel.rb#26
def start; end
end
# source://minitest//lib/minitest/parallel.rb#56
module Minitest::Parallel::Test
# source://minitest//lib/minitest/parallel.rb#57
def _synchronize; end
end
# source://minitest//lib/minitest/parallel.rb#59
module Minitest::Parallel::Test::ClassMethods
# source://minitest//lib/minitest/parallel.rb#60
def run_one_method(klass, method_name, reporter); end
# source://minitest//lib/minitest/parallel.rb#64
def test_order; end
end
# A very simple reporter that prints the "dots" during the run.
#
# This is added to the top-level CompositeReporter at the start of
# the run. If you want to change the output of minitest via a
# plugin, pull this out of the composite and replace it with your
# own.
#
# source://minitest//lib/minitest.rb#699
class Minitest::ProgressReporter < ::Minitest::Reporter
# source://minitest//lib/minitest.rb#700
def prerecord(klass, name); end
# source://minitest//lib/minitest.rb#707
def record(result); end
end
# Shared code for anything that can get passed to a Reporter. See
# Minitest::Test & Minitest::Result.
#
# source://minitest//lib/minitest.rb#521
module Minitest::Reportable
# @raise [NotImplementedError]
#
# source://minitest//lib/minitest.rb#543
def class_name; end
# Did this run error?
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#564
def error?; end
# The location identifier of this test. Depends on a method
# existing called class_name.
#
# source://minitest//lib/minitest.rb#538
def location; end
# Did this run pass?
#
# Note: skipped runs are not considered passing, but they don't
# cause the process to exit non-zero.
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#528
def passed?; end
# Returns ".", "F", or "E" based on the result of the run.
#
# source://minitest//lib/minitest.rb#550
def result_code; end
# Was this run skipped?
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#557
def skipped?; end
end
# source://minitest//lib/minitest.rb#532
Minitest::Reportable::BASE_DIR = T.let(T.unsafe(nil), String)
# source://minitest//lib/minitest.rb#675
class Minitest::Reporter < ::Minitest::AbstractReporter
# @return [Reporter] a new instance of Reporter
#
# source://minitest//lib/minitest.rb#684
def initialize(io = T.unsafe(nil), options = T.unsafe(nil)); end
# The IO used to report.
#
# source://minitest//lib/minitest.rb#677
def io; end
# The IO used to report.
#
# source://minitest//lib/minitest.rb#677
def io=(_arg0); end
# Command-line options for this run.
#
# source://minitest//lib/minitest.rb#682
def options; end
# Command-line options for this run.
#
# source://minitest//lib/minitest.rb#682
def options=(_arg0); end
end
# This represents a test result in a clean way that can be
# marshalled over a wire. Tests can do anything they want to the
# test instance and can create conditions that cause Marshal.dump to
# blow up. By using Result.from(a_test) you can be reasonably sure
# that the test result can be marshalled.
#
# source://minitest//lib/minitest.rb#576
class Minitest::Result < ::Minitest::Runnable
include ::Minitest::Reportable
# source://minitest//lib/minitest.rb#610
def class_name; end
# The class name of the test result.
#
# source://minitest//lib/minitest.rb#585
def klass; end
# The class name of the test result.
#
# source://minitest//lib/minitest.rb#585
def klass=(_arg0); end
# The location of the test method.
#
# source://minitest//lib/minitest.rb#590
def source_location; end
# The location of the test method.
#
# source://minitest//lib/minitest.rb#590
def source_location=(_arg0); end
# source://minitest//lib/minitest.rb#614
def to_s; end
class << self
# Create a new test result from a Runnable instance.
#
# source://minitest//lib/minitest.rb#595
def from(runnable); end
end
end
# re-open
#
# source://minitest//lib/minitest.rb#284
class Minitest::Runnable
# @return [Runnable] a new instance of Runnable
#
# source://minitest//lib/minitest.rb#452
def initialize(name); end
# Number of assertions executed in this run.
#
# source://minitest//lib/minitest.rb#288
def assertions; end
# Number of assertions executed in this run.
#
# source://minitest//lib/minitest.rb#288
def assertions=(_arg0); end
# source://minitest//lib/minitest.rb#448
def failure; end
# An assertion raised during the run, if any.
#
# source://minitest//lib/minitest.rb#293
def failures; end
# An assertion raised during the run, if any.
#
# source://minitest//lib/minitest.rb#293
def failures=(_arg0); end
# source://minitest//lib/minitest.rb#434
def marshal_dump; end
# source://minitest//lib/minitest.rb#444
def marshal_load(ary); end
# Metadata you attach to the test results that get sent to the reporter.
#
# Lazily initializes to a hash, to keep memory down.
#
# NOTE: this data *must* be plain (read: marshal-able) data!
# Hashes! Arrays! Strings!
#
# source://minitest//lib/minitest.rb#467
def metadata; end
# Sets metadata, mainly used for +Result.from+.
#
# source://minitest//lib/minitest.rb#474
def metadata=(_arg0); end
# Returns true if metadata exists.
#
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#479
def metadata?; end
# Name of the run.
#
# source://minitest//lib/minitest.rb#311
def name; end
# Set the name of the run.
#
# source://minitest//lib/minitest.rb#318
def name=(o); end
# Did this run pass?
#
# Note: skipped runs are not considered passing, but they don't
# cause the process to exit non-zero.
#
# @raise [NotImplementedError]
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#496
def passed?; end
# Returns a single character string to print based on the result
# of the run. One of ".", "F",
# "E" or "S".
#
# @raise [NotImplementedError]
#
# source://minitest//lib/minitest.rb#505
def result_code; end
# Runs a single method. Needs to return self.
#
# @raise [NotImplementedError]
#
# source://minitest//lib/minitest.rb#486
def run; end
# Was this run skipped? See #passed? for more information.
#
# @raise [NotImplementedError]
# @return [Boolean]
#
# source://minitest//lib/minitest.rb#512
def skipped?; end
# The time it took to run.
#
# source://minitest//lib/minitest.rb#298
def time; end
# The time it took to run.
#
# source://minitest//lib/minitest.rb#298
def time=(_arg0); end
# source://minitest//lib/minitest.rb#300
def time_it; end
class << self
# source://minitest//lib/minitest.rb#1144
def inherited(klass); end
# Returns all instance methods matching the pattern +re+.
#
# source://minitest//lib/minitest.rb#325
def methods_matching(re); end
# source://minitest//lib/minitest.rb#404
def on_signal(name, action); end
# source://minitest//lib/minitest.rb#329
def reset; end
# Responsible for running all runnable methods in a given class,
# each in its own instance. Each instance is passed to the
# reporter to record.
#
# source://minitest//lib/minitest.rb#340
def run(reporter, options = T.unsafe(nil)); end
# Runs a single method and has the reporter record the result.
# This was considered internal API but is factored out of run so
# that subclasses can specialize the running of an individual
# test. See Minitest::ParallelTest::ClassMethods for an example.
#
# source://minitest//lib/minitest.rb#376
def run_one_method(klass, method_name, reporter); end
# Each subclass of Runnable is responsible for overriding this
# method to return all runnable methods. See #methods_matching.
#
# @raise [NotImplementedError]
#
# source://minitest//lib/minitest.rb#421
def runnable_methods; end
# Returns all subclasses of Runnable.
#
# source://minitest//lib/minitest.rb#428
def runnables; end
# Defines the order to run tests (:random by default). Override
# this or use a convenience method to change it for your tests.
#
# source://minitest//lib/minitest.rb#385
def test_order; end
# source://minitest//lib/minitest.rb#389
def with_info_handler(reporter, &block); end
end
end
# source://minitest//lib/minitest.rb#402
Minitest::Runnable::SIGNALS = T.let(T.unsafe(nil), Hash)
# Assertion raised when skipping a run.
#
# source://minitest//lib/minitest.rb#980
class Minitest::Skip < ::Minitest::Assertion
# source://minitest//lib/minitest.rb#981
def result_label; end
end
# Minitest::Spec -- The faster, better, less-magical spec framework!
#
# For a list of expectations, see Minitest::Expectations.
#
# source://minitest//lib/minitest/spec.rb#106
class Minitest::Spec < ::Minitest::Test
include ::Minitest::Spec::DSL::InstanceMethods
extend ::Minitest::Spec::DSL
# @return [Spec] a new instance of Spec
#
# source://minitest//lib/minitest/spec.rb#112
def initialize(name); end
class << self
# source://minitest//lib/minitest/spec.rb#108
def current; end
end
end
# Oh look! A Minitest::Spec::DSL module! Eat your heart out DHH.
#
# source://minitest//lib/minitest/spec.rb#120
module Minitest::Spec::DSL
# Define an 'after' action. Inherits the way normal methods should.
#
# NOTE: +type+ is ignored and is only there to make porting easier.
#
# Equivalent to Minitest::Test#teardown.
#
# source://minitest//lib/minitest/spec.rb#205
def after(_type = T.unsafe(nil), &block); end
# Define a 'before' action. Inherits the way normal methods should.
#
# NOTE: +type+ is ignored and is only there to make porting easier.
#
# Equivalent to Minitest::Test#setup.
#
# source://minitest//lib/minitest/spec.rb#191
def before(_type = T.unsafe(nil), &block); end
# source://minitest//lib/minitest/spec.rb#174
def children; end
# source://minitest//lib/minitest/spec.rb#270
def create(name, desc); end
# source://minitest//lib/minitest/spec.rb#291
def desc; end
# source://minitest//lib/minitest/spec.rb#170
def describe_stack; end
# Define an expectation with name +desc+. Name gets morphed to a
# proper test method name. For some freakish reason, people who
# write specs don't like class inheritance, so this goes way out of
# its way to make sure that expectations aren't inherited.
#
# This is also aliased to #specify and doesn't require a +desc+ arg.
#
# Hint: If you _do_ want inheritance, use minitest/test. You can mix
# and match between assertions and expectations as much as you want.
#
# source://minitest//lib/minitest/spec.rb#223
def it(desc = T.unsafe(nil), &block); end
# Essentially, define an accessor for +name+ with +block+.
#
# Why use let instead of def? I honestly don't know.
#
# @raise [ArgumentError]
#
# source://minitest//lib/minitest/spec.rb#247
def let(name, &block); end
# source://minitest//lib/minitest/spec.rb#283
def name; end
# source://minitest//lib/minitest/spec.rb#178
def nuke_test_methods!; end
# Register a new type of spec that matches the spec's description.
# This method can take either a Regexp and a spec class or a spec
# class and a block that takes the description and returns true if
# it matches.
#
# Eg:
#
# register_spec_type(/Controller$/, Minitest::Spec::Rails)
#
# or:
#
# register_spec_type(Minitest::Spec::RailsModel) do |desc|
# desc.superclass == ActiveRecord::Base
# end
#
# source://minitest//lib/minitest/spec.rb#146
def register_spec_type(*args, &block); end
# Figure out the spec class to use based on a spec's description. Eg:
#
# spec_type("BlahController") # => Minitest::Spec::Rails
#
# source://minitest//lib/minitest/spec.rb#160
def spec_type(desc, *additional); end
# Define an expectation with name +desc+. Name gets morphed to a
# proper test method name. For some freakish reason, people who
# write specs don't like class inheritance, so this goes way out of
# its way to make sure that expectations aren't inherited.
#
# This is also aliased to #specify and doesn't require a +desc+ arg.
#
# Hint: If you _do_ want inheritance, use minitest/test. You can mix
# and match between assertions and expectations as much as you want.
#
# source://minitest//lib/minitest/spec.rb#223
def specify(desc = T.unsafe(nil), &block); end
# Another lazy man's accessor generator. Made even more lazy by
# setting the name for you to +subject+.
#
# source://minitest//lib/minitest/spec.rb#266
def subject(&block); end
# source://minitest//lib/minitest/spec.rb#287
def to_s; end
class << self
# source://minitest//lib/minitest/spec.rb#335
def extended(obj); end
end
end
# Rdoc... why are you so dumb?
#
# source://minitest//lib/minitest/spec.rb#297
module Minitest::Spec::DSL::InstanceMethods
# Takes a value or a block and returns a value monad that has
# all of Expectations methods available to it.
#
# _(1 + 1).must_equal 2
#
# And for blocks:
#
# _ { 1 + "1" }.must_raise TypeError
#
# This method of expectation-based testing is preferable to
# straight-expectation methods (on Object) because it stores its
# test context, bypassing our hacky use of thread-local variables.
#
# NOTE: At some point, the methods on Object will be deprecated
# and then removed.
#
# It is also aliased to #value and #expect for your aesthetic
# pleasure:
#
# _(1 + 1).must_equal 2
# value(1 + 1).must_equal 2
# expect(1 + 1).must_equal 2
#
# source://minitest//lib/minitest/spec.rb#322
def _(value = T.unsafe(nil), &block); end
# source://minitest//lib/minitest/spec.rb#329
def before_setup; end
# Takes a value or a block and returns a value monad that has
# all of Expectations methods available to it.
#
# _(1 + 1).must_equal 2
#
# And for blocks:
#
# _ { 1 + "1" }.must_raise TypeError
#
# This method of expectation-based testing is preferable to
# straight-expectation methods (on Object) because it stores its
# test context, bypassing our hacky use of thread-local variables.
#
# NOTE: At some point, the methods on Object will be deprecated
# and then removed.
#
# It is also aliased to #value and #expect for your aesthetic
# pleasure:
#
# _(1 + 1).must_equal 2
# value(1 + 1).must_equal 2
# expect(1 + 1).must_equal 2
#
# source://minitest//lib/minitest/spec.rb#322
def expect(value = T.unsafe(nil), &block); end
# Takes a value or a block and returns a value monad that has
# all of Expectations methods available to it.
#
# _(1 + 1).must_equal 2
#
# And for blocks:
#
# _ { 1 + "1" }.must_raise TypeError
#
# This method of expectation-based testing is preferable to
# straight-expectation methods (on Object) because it stores its
# test context, bypassing our hacky use of thread-local variables.
#
# NOTE: At some point, the methods on Object will be deprecated
# and then removed.
#
# It is also aliased to #value and #expect for your aesthetic
# pleasure:
#
# _(1 + 1).must_equal 2
# value(1 + 1).must_equal 2
# expect(1 + 1).must_equal 2
#
# source://minitest//lib/minitest/spec.rb#322
def value(value = T.unsafe(nil), &block); end
end
# Contains pairs of matchers and Spec classes to be used to
# calculate the superclass of a top-level describe. This allows for
# automatically customizable spec types.
#
# See: register_spec_type and spec_type
#
# source://minitest//lib/minitest/spec.rb#128
Minitest::Spec::DSL::TYPES = T.let(T.unsafe(nil), Array)
# source://minitest//lib/minitest/spec.rb#342
Minitest::Spec::TYPES = T.let(T.unsafe(nil), Array)
# A reporter that gathers statistics about a test run. Does not do
# any IO because meant to be used as a parent class for a reporter
# that does.
#
# If you want to create an entirely different type of output (eg,
# CI, HTML, etc), this is the place to start.
#
# Example:
#
# class JenkinsCIReporter < StatisticsReporter
# def report
# super # Needed to calculate some statistics
#
# print "