nvals(A + B) == nvals(A) == nvals(B)
| 57 | |
| 58 | // nvals(A + B) == nvals(A) == nvals(B) |
| 59 | void ASSERT_GrB_Matrices_EQ(const GrB_Matrix A, const GrB_Matrix B) |
| 60 | { |
| 61 | GrB_Type t_A = NULL; |
| 62 | GrB_Type t_B = NULL; |
| 63 | GrB_Matrix C = NULL; |
| 64 | GrB_Info info = GrB_SUCCESS; |
| 65 | GrB_Index nvals_A = 0; |
| 66 | GrB_Index nvals_B = 0; |
| 67 | GrB_Index nvals_C = 0; |
| 68 | GrB_Index nrows_A = 0; |
| 69 | GrB_Index ncols_A = 0; |
| 70 | GrB_Index nrows_B = 0; |
| 71 | GrB_Index ncols_B = 0; |
| 72 | |
| 73 | //-------------------------------------------------------------------------- |
| 74 | // type(A) == type(B) |
| 75 | //-------------------------------------------------------------------------- |
| 76 | |
| 77 | info = GxB_Matrix_type(&t_A, A); |
| 78 | TEST_ASSERT(info == GrB_SUCCESS); |
| 79 | |
| 80 | info = GxB_Matrix_type(&t_B, B); |
| 81 | TEST_ASSERT(info == GrB_SUCCESS); |
| 82 | |
| 83 | TEST_ASSERT(t_A == t_B); |
| 84 | |
| 85 | //-------------------------------------------------------------------------- |
| 86 | // dim(A) == dim(B) |
| 87 | //-------------------------------------------------------------------------- |
| 88 | |
| 89 | info = GrB_Matrix_nrows(&nrows_A, A); |
| 90 | TEST_ASSERT(info == GrB_SUCCESS); |
| 91 | |
| 92 | info = GrB_Matrix_ncols(&ncols_A, A); |
| 93 | TEST_ASSERT(info == GrB_SUCCESS); |
| 94 | |
| 95 | info = GrB_Matrix_nrows(&nrows_B, B); |
| 96 | TEST_ASSERT(info == GrB_SUCCESS); |
| 97 | |
| 98 | info = GrB_Matrix_ncols(&ncols_B, B); |
| 99 | TEST_ASSERT(info == GrB_SUCCESS); |
| 100 | |
| 101 | TEST_ASSERT(nrows_A == nrows_B); |
| 102 | TEST_ASSERT(ncols_A == ncols_B); |
| 103 | |
| 104 | //-------------------------------------------------------------------------- |
| 105 | // NNZ(A) == NNZ(B) |
| 106 | //-------------------------------------------------------------------------- |
| 107 | |
| 108 | GrB_Matrix_nvals(&nvals_A, A); |
| 109 | TEST_ASSERT(info == GrB_SUCCESS); |
| 110 | |
| 111 | GrB_Matrix_nvals(&nvals_B, B); |
| 112 | TEST_ASSERT(info == GrB_SUCCESS); |
| 113 | |
| 114 | //-------------------------------------------------------------------------- |
| 115 | // structure(A) == structure(B) |
| 116 | //-------------------------------------------------------------------------- |
no test coverage detected