Skip to content

test_matrix_binfile_read_write fail on various architectures #56

@ViviCoder

Description

@ViviCoder

On armhf, ppc64el, ppc64, and riscv64 Debian machines, one gets the following test failure:

============================= test session starts ==============================
platform linux -- Python 3.10.6, pytest-7.1.2, pluggy-1.0.0+repack
rootdir: /<<PKGBUILDDIR>>, configfile: setup.cfg
collected 7 items

suitesparse_graphblas/tests/test_doctest.py .                            [ 14%]
suitesparse_graphblas/tests/test_exceptions.py .                         [ 28%]
suitesparse_graphblas/tests/test_io.py ..F                               [ 71%]
suitesparse_graphblas/tests/test_package.py .                            [ 85%]
suitesparse_graphblas/tests/test_scalar.py .                             [100%]

=================================== FAILURES ===================================
________________________ test_matrix_binfile_read_write ________________________

tmp_path = PosixPath('/tmp/pytest-of-buildd/pytest-0/test_matrix_binfile_read_write0')

    def test_matrix_binfile_read_write(tmp_path):
        for opener in (Path.open, gzip.open, bz2.open, lzma.open):
            for format in (lib.GxB_BY_ROW, lib.GxB_BY_COL):
                for T in grb_types:
                    for sparsity in (lib.GxB_HYPERSPARSE, lib.GxB_SPARSE, lib.GxB_BITMAP, lib.GxB_FULL):
    
                        A = matrix.new(T, 2, 2)
    
                        if T is not lib.GxB_FULL:
                            for args in zip(*_test_elements(T)):
                                f = _element_setters[T]
                                check_status(A, f(A[0], *args))
                        else:
                            Tone = _test_elements(T)[0][0]
                            check_status(
                                A[0],
                                lib.GrB_assign(
                                    A,
                                    NULL,
                                    NULL,
                                    Tone,
                                    lib.GrB_ALL,
                                    0,
                                    lib.GrB_ALL,
                                    0,
                                    NULL,
                                ),
                            )
                        matrix.set_sparsity_control(A, sparsity)
                        matrix.set_format(A, format)
    
                        binfilef = tmp_path / "binfilewrite_test.binfile"
                        binary.binwrite(A, binfilef, opener=opener)
                        B = binary.binread(binfilef, opener=opener)
    
                        assert matrix.type(A) == matrix.type(B)
                        assert matrix.nrows(A) == matrix.nrows(B)
                        assert matrix.ncols(A) == matrix.ncols(B)
>                       assert matrix.hyper_switch(A) == matrix.hyper_switch(B)
E                       AssertionError: assert 0.0625 == 0.0
E                        +  where 0.0625 = <function hyper_switch at 0x7fffa61975b0>(<cdata 'struct GB_Matrix_opaque * *' 0x1000e6b6660>)
E                        +    where <function hyper_switch at 0x7fffa61975b0> = matrix.hyper_switch
E                        +  and   0.0 = <function hyper_switch at 0x7fffa61975b0>(<cdata 'struct GB_Matrix_opaque * *' 0x1000e7118d0>)
E                        +    where <function hyper_switch at 0x7fffa61975b0> = matrix.hyper_switch

suitesparse_graphblas/tests/test_io.py:176: AssertionError
=========================== short test summary info ============================
FAILED suitesparse_graphblas/tests/test_io.py::test_matrix_binfile_read_write
========================= 1 failed, 6 passed in 0.24s ==========================

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions