Skip to content

Commit 33ae4ba

Browse files
authored
Merge branch 'aaa-3.10.x' into aaa-3.10.x
2 parents b7dc58a + badcb91 commit 33ae4ba

File tree

4 files changed

+42
-23
lines changed

4 files changed

+42
-23
lines changed

Gemfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,7 @@ gem 'pstore'
5252

5353
group :minitest do
5454
gem "minitest"
55+
gem "minitest-mock"
5556
end
5657

5758
group :typecheck_test do

Gemfile.lock

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,9 @@ GEM
6767
marcel (1.1.0)
6868
memory_profiler (1.1.0)
6969
mini_portile2 (2.8.9)
70-
minitest (5.26.2)
70+
minitest (6.0.0)
71+
prism (~> 1.5)
72+
minitest-mock (5.27.0)
7173
mutex_m (0.3.0)
7274
net-protocol (0.2.2)
7375
timeout
@@ -204,6 +206,7 @@ DEPENDENCIES
204206
json-schema
205207
memory_profiler
206208
minitest
209+
minitest-mock
207210
mutex_m
208211
net-smtp
209212
nkf

test/rbs/test/runtime_test_test.rb

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,7 @@ def world: () -> void
142142
end
143143

144144
def test_minitest
145+
omit unless has_gem?("minitest-mock") && has_gem?("minitest")
145146
omit if skip_minitest?
146147

147148
assert_test_success(other_env: { 'RBS_TEST_TARGET' => 'Foo', 'RBS_TEST_DOUBLE_SUITE' => 'minitest' }, rbs_content: <<RBS, ruby_content: <<RUBY)
@@ -156,6 +157,7 @@ def foo(integer)
156157
end
157158
158159
require "minitest/autorun"
160+
require "minitest/mock"
159161
160162
class FooTest < Minitest::Test
161163
def test_foo_mock

test/rbs/test/type_check_test.rb

Lines changed: 35 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -623,22 +623,11 @@ def test_typecheck_args
623623
end
624624
end
625625

626-
def test_is_double
627-
omit unless has_gem?("rspec")
628-
omit if skip_minitest?
629-
626+
def test_is_double__rspec
630627
require "rspec/mocks/standalone"
631-
require "minitest/mock"
632628

633629
SignatureManager.new do |manager|
634630
manager.build do |env|
635-
minitest_typecheck = Test::TypeCheck.new(
636-
self_class: Integer,
637-
builder: DefinitionBuilder.new(env: env),
638-
sample_size: 100,
639-
unchecked_classes: ['Minitest::Mock']
640-
)
641-
642631
rspec_typecheck = Test::TypeCheck.new(
643632
self_class: Integer,
644633
builder: DefinitionBuilder.new(env: env),
@@ -653,26 +642,50 @@ def test_is_double
653642
unchecked_classes: []
654643
)
655644

656-
minitest_mock = ::Minitest::Mock.new
657645
rspec_mock = RSPEC_MOCK[]
658646

659-
assert minitest_typecheck.is_double? minitest_mock
660647
assert rspec_typecheck.is_double? rspec_mock
661-
662-
refute minitest_typecheck.is_double? rspec_mock
663-
refute rspec_typecheck.is_double? minitest_mock
664-
665-
refute minitest_typecheck.is_double? 1
666-
refute minitest_typecheck.is_double? 'hi'
667-
refute minitest_typecheck.is_double? nil
648+
refute no_mock_typecheck.is_double? rspec_mock
668649

669650
refute rspec_typecheck.is_double? 1
670651
refute rspec_typecheck.is_double? 'hi'
671652
refute rspec_typecheck.is_double? nil
653+
end
654+
end
655+
end
672656

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

686+
refute minitest_typecheck.is_double? 1
687+
refute minitest_typecheck.is_double? 'hi'
688+
refute minitest_typecheck.is_double? nil
676689
end
677690
end
678691
end

0 commit comments

Comments
 (0)