Skip to content

Commit 5e70c94

Browse files
committed
Refactor type_check_test.rb
Split tests for rspec and minitest.
1 parent 9093c46 commit 5e70c94

File tree

1 file changed

+35
-22
lines changed

1 file changed

+35
-22
lines changed

test/rbs/test/type_check_test.rb

Lines changed: 35 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -625,22 +625,11 @@ def test_typecheck_args
625625
end
626626
end
627627

628-
def test_is_double
629-
omit unless has_gem?("rspec")
630-
omit if skip_minitest?
631-
628+
def test_is_double__rspec
632629
require "rspec/mocks/standalone"
633-
require "minitest/mock"
634630

635631
SignatureManager.new do |manager|
636632
manager.build do |env|
637-
minitest_typecheck = Test::TypeCheck.new(
638-
self_class: Integer,
639-
builder: DefinitionBuilder.new(env: env),
640-
sample_size: 100,
641-
unchecked_classes: ['Minitest::Mock']
642-
)
643-
644633
rspec_typecheck = Test::TypeCheck.new(
645634
self_class: Integer,
646635
builder: DefinitionBuilder.new(env: env),
@@ -655,26 +644,50 @@ def test_is_double
655644
unchecked_classes: []
656645
)
657646

658-
minitest_mock = ::Minitest::Mock.new
659647
rspec_mock = RSPEC_MOCK[]
660648

661-
assert minitest_typecheck.is_double? minitest_mock
662649
assert rspec_typecheck.is_double? rspec_mock
663-
664-
refute minitest_typecheck.is_double? rspec_mock
665-
refute rspec_typecheck.is_double? minitest_mock
666-
667-
refute minitest_typecheck.is_double? 1
668-
refute minitest_typecheck.is_double? 'hi'
669-
refute minitest_typecheck.is_double? nil
650+
refute no_mock_typecheck.is_double? rspec_mock
670651

671652
refute rspec_typecheck.is_double? 1
672653
refute rspec_typecheck.is_double? 'hi'
673654
refute rspec_typecheck.is_double? nil
655+
end
656+
end
657+
end
674658

675-
refute no_mock_typecheck.is_double? minitest_mock
659+
def test_is_double__minitest
660+
# Minitest is optional dependency to make ruby-lsp-test-discovery work correctly.
661+
# Omit this test when minitest is unavailable, or `NO_MINITEST` env var is set.
662+
omit unless has_gem?("minitest-mock") && has_gem?("minitest")
663+
omit if skip_minitest?
664+
665+
require "minitest/mock"
666+
667+
SignatureManager.new do |manager|
668+
manager.build do |env|
669+
minitest_typecheck = Test::TypeCheck.new(
670+
self_class: Integer,
671+
builder: DefinitionBuilder.new(env: env),
672+
sample_size: 100,
673+
unchecked_classes: ['Minitest::Mock']
674+
)
675+
676+
no_mock_typecheck = Test::TypeCheck.new(
677+
self_class: Integer,
678+
builder: DefinitionBuilder.new(env: env),
679+
sample_size: 100,
680+
unchecked_classes: []
681+
)
682+
683+
minitest_mock = ::Minitest::Mock.new
684+
685+
assert minitest_typecheck.is_double? minitest_mock
676686
refute no_mock_typecheck.is_double? minitest_mock
677687

688+
refute minitest_typecheck.is_double? 1
689+
refute minitest_typecheck.is_double? 'hi'
690+
refute minitest_typecheck.is_double? nil
678691
end
679692
end
680693
end

0 commit comments

Comments
 (0)