Skip to content

test_libmix_differences fails on i386 without recommends

It seems the new test test_libmix_differences is failed on ubuntu's i386 autopkgtest, in the run done without all the optional packages installed.

See https://objectstorage.prodstack4-5.canonical.com/v1/AUTH_77e2ada1e7a84929a74ba3b87153c0ac/autopkgtest-eoan/eoan/i386/d/diffoscope/20190919_123741_a6337@/log.gz

=================================== FAILURES ===================================
___________________________ test_libmix_differences ____________________________

libmix_differences = [<Difference nm -s {} -- nm -s {} []>, <Difference file list -- file list []>, <Difference Mach-O.o -- Mach-O.o []>, <... [<Difference readelf --wide --decompress --hex-dump=.text {} -- readelf --wide --decompress --hex-dump=.text {} []>]>]

    @skip_unless_tools_exist('xxd')
    @skip_unless_tools_exist('readelf', 'objdump')
    @skip_if_tool_version_is('readelf', readelf_version, '2.29')
    @skip_if_binutils_does_not_support_x86()
    def test_libmix_differences(libmix_differences):
>       assert len(libmix_differences) == 5
E       assert 6 == 5
E        +  where 6 = len([<Difference nm -s {} -- nm -s {} []>, <Difference file list -- file list []>, <Difference Mach-O.o -- Mach-O.o []>, <... [<Difference readelf --wide --decompress --hex-dump=.text {} -- readelf --wide --decompress --hex-dump=.text {} []>]>])

libmix_differences = [<Difference nm -s {} -- nm -s {} []>,
 <Difference file list -- file list []>,
 <Difference Mach-O.o -- Mach-O.o []>,
 <Difference return42_or_3_long_name.o -- return42_or_3_long_name.o [<Difference objdump --line-numbers --disassemble --demangle --reloc --section=.text {} -- objdump --line-numbers --disassemble --demangle --reloc --section=.text {} []>]>,
 <Difference return42_or_3_long_name.c -- return42_or_3_long_name.c []>,
 <Difference return42_or_3_long_name.obj -- return42_or_3_long_name.obj [<Difference readelf --wide --decompress --hex-dump=.text {} -- readelf --wide --decompress --hex-dump=.text {} []>]>]

tests/comparators/test_elf.py:172: AssertionError

Now, it seems all the other architectures skip this test due to binutils not supporting x86 binaries, but i386's binutils does, so the test is tried, and fails right at the start.

Link to all the ubuntu autopkgtests: http://autopkgtest.ubuntu.com/packages/diffoscope

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information