@@ -180,10 +180,17 @@ prod2(itr) = invoke(prod, Tuple{Any}, itr)
180180@test maximum (5 ) == 5
181181@test minimum (5 ) == 5
182182@test extrema (5 ) == (5 , 5 )
183+ @test extrema (abs2, 5 ) == (25 , 25 )
183184
184- @test maximum ([4 , 3 , 5 , 2 ]) == 5
185- @test minimum ([4 , 3 , 5 , 2 ]) == 2
186- @test extrema ([4 , 3 , 5 , 2 ]) == (2 , 5 )
185+ let x = [4 ,3 ,5 ,2 ]
186+ @test maximum (x) == 5
187+ @test minimum (x) == 2
188+ @test extrema (x) == (2 , 5 )
189+
190+ @test maximum (abs2, x) == 25
191+ @test minimum (abs2, x) == 4
192+ @test extrema (abs2, x) == (4 , 25 )
193+ end
187194
188195@test isnan (maximum ([NaN ]))
189196@test isnan (minimum ([NaN ]))
@@ -211,6 +218,7 @@ prod2(itr) = invoke(prod, Tuple{Any}, itr)
211218
212219@test maximum (abs2, 3 : 7 ) == 49
213220@test minimum (abs2, 3 : 7 ) == 9
221+ @test extrema (abs2, 3 : 7 ) == (9 , 49 )
214222
215223@test maximum (Int16[1 ]) === Int16 (1 )
216224@test maximum (Vector (Int16 (1 ): Int16 (100 ))) === Int16 (100 )
@@ -227,6 +235,7 @@ A = circshift(reshape(1:24,2,3,4), (0,1,1))
227235@test size (extrema (A,dims= 1 )) == size (maximum (A,dims= 1 ))
228236@test size (extrema (A,dims= (1 ,2 ))) == size (maximum (A,dims= (1 ,2 )))
229237@test size (extrema (A,dims= (1 ,2 ,3 ))) == size (maximum (A,dims= (1 ,2 ,3 )))
238+ @test extrema (x-> div (x, 2 ), A, dims= (2 ,3 )) == reshape ([(0 ,11 ),(1 ,12 )],2 ,1 ,1 )
230239
231240# any & all
232241
0 commit comments