1function gbtest56
2%GBTEST56 test GrB.empty
3
4% SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2021, All Rights Reserved.
5% SPDX-License-Identifier: GPL-3.0-or-later
6
7for m1 = -1:5
8    for n1 = -1:5
9
10        m = max (m1, 0) ;
11        n = max (n1, 0) ;
12
13        if (~ ((m == 0) || (n == 0)))
14            continue
15        end
16
17        C1 = GrB.empty (m1, n1) ;
18        C2 = GrB.empty ([m1, n1]) ;
19        C3 = GrB (m, n) ;
20        C0 = sparse (m, n) ;
21
22        assert (isequal (C0, C1)) ;
23        assert (isequal (C0, C2)) ;
24        assert (isequal (C0, C3)) ;
25    end
26end
27
28C1 = GrB.empty (0) ;
29C2 = GrB.empty (-1) ;
30C3 = GrB (0,0) ;
31C0 = sparse (0,0) ;
32
33assert (isequal (C0, C1)) ;
34assert (isequal (C0, C2)) ;
35assert (isequal (C0, C3)) ;
36
37assert (length (C0) == 0) ; %#ok<*ISMT>
38assert (length (C1) == 0) ;
39assert (length (C2) == 0) ;
40assert (length (C3) == 0) ;
41
42C1 = GrB.empty (0,5) ;
43C2 = GrB.empty (0,5) ;
44C3 = GrB (0,5) ;
45C0 = sparse (0,5) ;
46
47assert (isequal (C0, C1)) ;
48assert (isequal (C0, C2)) ;
49assert (isequal (C0, C3)) ;
50
51assert (length (C0) == 0) ;
52assert (length (C1) == 0) ;
53assert (length (C2) == 0) ;
54assert (length (C3) == 0) ;
55
56C1 = GrB.empty (5,0) ;
57C2 = GrB.empty (5,0) ;
58C3 = GrB (5,0) ;
59C0 = sparse (5,0) ;
60
61assert (isequal (C0, C1)) ;
62assert (isequal (C0, C2)) ;
63assert (isequal (C0, C3)) ;
64
65assert (length (C0) == 0) ;
66assert (length (C1) == 0) ;
67assert (length (C2) == 0) ;
68assert (length (C3) == 0) ;
69
70fprintf ('gbtest56: all tests passed\n') ;
71
72