Bug#877728: test_elf regression with binutils 2.29.0 on x86-64

Juliana Oliveira juliana.orod at gmail.com
Thu Dec 21 13:12:06 UTC 2017


On Wed, 4 Oct 2017 23:27:57 +0200 Levente Polyak
<levente at leventepolyak.net> wrote:
> Package: diffoscope
>
> diffoscope git version: 70cb725deb12a2eddc4613b5e3af69ed13434bf7
> binutils: 2.29.0
> architecture: x86-64
>
> > objdump --info|grep x86
> elf64-x86-64
> elf32-x86-64
> pei-x86-64
> elf64-x86-64 elf32-i386 elf32-iamcu elf32-x86-64 a.out-i386-linux
> i386 elf64-x86-64 elf32-i386 ----------- elf32-x86-64 a.out-i386-linux
> pei-i386 pei-x86-64 elf64-l1om elf64-k1om elf64-little elf64-big
> i386 pei-i386 pei-x86-64 ---------- ---------- elf64-little elf64-big
>
>
>
> ==> Starting check()...
> ============================= test session starts
> ==============================
> platform linux -- Python 3.6.2, pytest-3.2.2, py-1.4.34, pluggy-0.4.0 --
> /usr/bin/python
> cachedir: .cache
> rootdir: /build/diffoscope/src/diffoscope-87, inifile:
> collecting ... collected 376 items
>
> =================================== FAILURES
> ===================================
> ________________________ test_obj_compare_non_existing
> _________________________
>
> monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7f45874ce9e8>
> obj1 = <<class 'abc.ElfFile'>
> /build/diffoscope/src/diffoscope-87/tests/data/test1.o>
>
> @skip_unless_tools_exist('readelf')
> @skip_if_binutils_does_not_support_x86()
> def test_obj_compare_non_existing(monkeypatch, obj1):
> monkeypatch.setattr(Config(), 'new_file', True)
> difference = obj1.compare(MissingFile('/nonexisting', obj1))
> assert difference.source2 == '/nonexisting'
> > assert len(difference.details) > 0
> E assert 0 > 0
> E + where 0 = len([])
> E + where [] = <Difference
> /build/diffoscope/src/diffoscope-87/tests/data/test1.o -- /nonexisting
> []>.details
>
> tests/comparators/test_elf.py:58: AssertionError
> __________________________________ test_diff
> ___________________________________
>
> obj_differences = []
>
> @skip_unless_tools_exist('readelf')
> @skip_if_binutils_does_not_support_x86()
> def test_diff(obj_differences):
> > assert len(obj_differences) == 1
> E assert 0 == 1
> E + where 0 = len([])

Hi Levente,

Thank you for the report. (:
 Closed in
https://anonscm.debian.org/cgit/reproducible/diffoscope.git/commit/?id=9e2013fed0b9652509ad1b60f4be0cbeabe175f8

---

Juliana



More information about the Reproducible-builds mailing list