@@ -80,20 +80,6 @@ def test_last
8080 ( 'A' ...'Z' ) . last
8181 end
8282
83- def test_max
84- ( 1 ..10 ) . max
85- ( 1 ..10 ) . max ( 3 )
86- ( 1 ..10 ) . max { |i , j | i <=> j }
87- ( 1 ..10 ) . max ( 3 ) { |i , j | i <=> j }
88- end
89-
90- def test_min
91- ( 1 ..10 ) . min
92- ( 1 ..10 ) . min ( 3 )
93- ( 1 ..10 ) . min { |i , j | i <=> j }
94- ( 1 ..10 ) . min ( 3 ) { |i , j | i <=> j }
95- end
96-
9783 def test_percent
9884 ( 1 ..10 ) . %( 2 )
9985 if_ruby ( ..."3.4.0" , skip : false ) do
@@ -152,4 +138,22 @@ def test_overlap?
152138 ( 2 ..5 ) , :overlap? , ( 3 ..4 )
153139 )
154140 end
141+
142+ def test_min
143+ assert_send_type "() -> ::Integer" , ( 1 ..4 ) , :min
144+ assert_send_type "() -> nil" , ( 4 ..1 ) , :min
145+ assert_send_type "() { (::Integer, ::Integer) -> ::Integer } -> ::Integer" , ( 1 ..4 ) , :min do |a , b | a <=> b end
146+ assert_send_type "() { (::Integer, ::Integer) -> ::Integer } -> nil" , ( 4 ..1 ) , :min do |a , b | a <=> b end
147+ assert_send_type "(::Integer) -> ::Array[::Integer]" , ( 1 ..4 ) , :min , 2
148+ assert_send_type "(::Integer) { (::Integer, ::Integer) -> ::Integer } -> ::Array[::Integer]" , ( 1 ..4 ) , :min , 0 do |a , b | a <=> b end
149+ end
150+
151+ def test_max
152+ assert_send_type "() -> ::Integer" , ( 1 ..4 ) , :max
153+ assert_send_type "() -> nil" , ( 4 ..1 ) , :max
154+ assert_send_type "() { (::Integer, ::Integer) -> ::Integer } -> ::Integer" , ( 1 ..4 ) , :max do |a , b | a <=> b end
155+ assert_send_type "() { (::Integer, ::Integer) -> ::Integer } -> nil" , ( 4 ..1 ) , :max do |a , b | a <=> b end
156+ assert_send_type "(::Integer) -> ::Array[::Integer]" , ( 1 ..4 ) , :max , 2
157+ assert_send_type "(::Integer) { (::Integer, ::Integer) -> ::Integer } -> ::Array[::Integer]" , ( 4 ..1 ) , :max , 0 do |a , b | a <=> b end
158+ end
155159end
0 commit comments