1function gbtest21
2%GBTEST21 test isfinite, isinf, isnan
3
4% SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2021, All Rights Reserved.
5% SPDX-License-Identifier: GPL-3.0-or-later
6
7rng ('default') ;
8for trial = 1:40
9    fprintf ('.') ;
10    for m = 0:5
11        for n = 0:5
12            A = 100 * sprand (m, n, 0.5) ;
13            if (rand < 0.1)
14                A = int32 (full (A)) ;
15            else
16                A (1,1) = nan ; %#ok<*SPRIX>
17                A (2,2) = inf ;
18            end
19            G = GrB (A) ;
20
21            assert (gbtest_eq (isfinite (A), isfinite (G))) ;
22            assert (gbtest_eq (isinf    (A), isinf    (G))) ;
23            assert (gbtest_eq (isnan    (A), isnan    (G))) ;
24
25            assert (isrow    (A) == isrow    (G)) ;
26            assert (iscolumn (A) == iscolumn (G)) ;
27        end
28    end
29end
30
31fprintf ('\ngbtest21: all tests passed\n') ;
32
33