@@ -88,6 +88,8 @@ def test_lshift
8888 def test_aref
8989 assert_send_type "(Integer) -> Integer" ,
9090 [ 1 , 2 , 3 ] , :[] , 0
91+ assert_send_type "(Integer) -> nil" ,
92+ [ 1 , 2 , 3 ] , :[] , 1000
9193 assert_send_type "(Float) -> Integer" ,
9294 [ 1 , 2 , 3 ] , :[] , 0.1
9395 assert_send_type "(ToInt) -> Integer" ,
@@ -155,6 +157,8 @@ def test_at
155157 [ 1 , 2 , 3 ] , :at , 0
156158 assert_send_type "(ToInt) -> Integer" ,
157159 [ 1 , 2 , 3 ] , :at , ToInt . new ( 0 )
160+ assert_send_type "(ToInt) -> nil" ,
161+ [ 1 , 2 , 3 ] , :at , ToInt . new ( -5 )
158162 end
159163
160164 def test_bsearch
@@ -267,8 +271,11 @@ def test_delete
267271 def test_delete_at
268272 assert_send_type "(Integer) -> Integer" ,
269273 [ 1 , 2 , 3 ] , :delete_at , 2
270- assert_send_type "(ToInt) -> Integer" ,
271- [ 1 , 2 , 3 ] , :delete_at , ToInt . new ( 2 )
274+ assert_send_type "(Integer) -> nil" ,
275+ [ 1 , 2 , 3 ] , :delete_at , 100
276+
277+ assert_send_type "(ToInt) -> nil" ,
278+ [ 1 , 2 , 3 ] , :delete_at , ToInt . new ( 300 )
272279 end
273280
274281 def test_delete_if
@@ -422,6 +429,8 @@ def test_find_index
422429 def test_first
423430 assert_send_type "() -> Integer" ,
424431 [ 1 , 2 , 3 ] , :first
432+ assert_send_type "() -> nil" ,
433+ [ ] , :first
425434
426435 assert_send_type "(Integer) -> Array[Integer]" ,
427436 [ 1 , 2 , 3 ] , :first , 2
@@ -522,6 +531,8 @@ def test_keep_if
522531 def test_last
523532 assert_send_type "() -> Integer" ,
524533 [ 1 , 2 , 3 ] , :last
534+ assert_send_type "() -> nil" ,
535+ [ ] , :last
525536
526537 assert_send_type "(Integer) -> Array[Integer]" ,
527538 [ 1 , 2 , 3 ] , :last , 2
@@ -549,6 +560,8 @@ def test_map!
549560 def test_max
550561 assert_send_type "() -> Integer" ,
551562 [ 1 , 2 , 3 ] , :max
563+ assert_send_type "() -> nil" ,
564+ [ ] , :max
552565
553566 assert_send_type "(Integer) -> Array[Integer]" ,
554567 [ 1 , 2 , 3 ] , :max , 1
@@ -557,6 +570,8 @@ def test_max
557570
558571 assert_send_type "() { (Integer, Integer) -> Integer } -> Integer" ,
559572 [ 1 , 2 , 3 ] , :max do |_ , _ | 1 end
573+ assert_send_type "() { (Integer, Integer) -> Integer } -> nil" ,
574+ [ ] , :max do |_ , _ | 0 end
560575
561576 assert_send_type "(ToInt) { (Integer, Integer) -> Integer } -> Array[Integer]" ,
562577 [ 1 , 2 , 3 ] , :max , ToInt . new ( 2 ) do |_ , _ | 0 end
@@ -745,6 +760,8 @@ def test_rotate!
745760 def test_sample
746761 assert_send_type "() -> Integer" ,
747762 [ 1 , 2 , 3 ] , :sample
763+ assert_send_type "() -> nil" ,
764+ [ ] , :sample
748765 assert_send_type "(random: Random) -> Integer" ,
749766 [ 1 , 2 , 3 ] , :sample , random : Random . new ( 1 )
750767 assert_send_type "(random: Rand) -> Integer" ,
@@ -779,6 +796,8 @@ def test_shift
779796 [ 1 , 2 , 3 ] , :shift
780797 assert_send_type "(ToInt) -> Array[Integer]" ,
781798 [ 1 , 2 , 3 ] , :shift , ToInt . new ( 1 )
799+ assert_send_type "() -> nil" ,
800+ [ ] , :shift
782801 end
783802
784803 def test_shuffle
@@ -802,6 +821,8 @@ def test_shuffle!
802821 def test_slice
803822 assert_send_type "(Integer) -> Integer" ,
804823 [ 1 , 2 , 3 ] , :slice , 1
824+ assert_send_type "(ToInt) -> nil" ,
825+ [ 1 , 2 , 3 ] , :slice , ToInt . new ( 11 )
805826
806827 assert_send_type "(Integer, Integer) -> Array[Integer]" ,
807828 [ 1 , 2 , 3 ] , :slice , 1 , 2
@@ -817,6 +838,8 @@ def test_slice
817838 def test_slice!
818839 assert_send_type "(Integer) -> Integer" ,
819840 [ 1 , 2 , 3 ] , :slice! , 1
841+ assert_send_type "(ToInt) -> nil" ,
842+ [ 1 , 2 , 3 ] , :slice! , ToInt . new ( 11 )
820843
821844 assert_send_type "(Integer, Integer) -> Array[Integer]" ,
822845 [ 1 , 2 , 3 ] , :slice! , 1 , 2
0 commit comments