SHA256
1
0
forked from pool/diffoscope

- activate test_differences test, as it is fixed in openSUSE TW.

- use fix-tests-libmix_differences.patch based on upstream patch and activate test_limix_differences tests.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/diffoscope?expand=0&rev=11
This commit is contained in:
Sebastian Wagner 2021-03-15 21:09:23 +00:00 committed by Git OBS Bridge
parent 8d4f2107c4
commit 88f4b01d49
3 changed files with 57 additions and 3 deletions

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Mon Mar 15 21:08:35 UTC 2021 - Sebastian Wagner <sebix+novell.com@sebix.at>
- activate test_differences test, as it is fixed in openSUSE TW.
- use fix-tests-libmix_differences.patch based on upstream patch and activate test_limix_differences tests.
-------------------------------------------------------------------
Fri Mar 12 08:03:39 UTC 2021 - Sebastian Wagner <sebix+novell.com@sebix.at>

View File

@ -26,6 +26,8 @@ URL: https://diffoscope.org/
Source0: https://diffoscope.org/archive/diffoscope-%{version}.tar.bz2
Source1: https://diffoscope.org/archive/diffoscope-%{version}.tar.bz2.asc
Source2: diffoscope.keyring
# PATCH-FIX-UPSTREAM fix-tests-libmix_differences.patch -- fixes test_libmix_differences after https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/244 https://salsa.debian.org/reproducible-builds/diffoscope/-/commit/fda75c731cd20383b15bcfc3326100b5ecd0787f.diff
Patch0: fix-tests-libmix_differences.patch
BuildRequires: fdupes
BuildRequires: python-rpm-macros
BuildRequires: python3-base >= 3.7
@ -112,6 +114,7 @@ debbindiff.
%prep
%setup -q
sed -i '0,/#!\/usr\/bin\/env/ d' diffoscope/main.py
%patch0 -p1
%build
%python3_build
@ -134,10 +137,8 @@ if [ "$1" = 0 ] ; then
fi
%check
# test_difference: https://bugzilla.opensuse.org/show_bug.cgi?id=1183143 (https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/243)
# test_libmix_differences https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/244#note_231513
# test_identification https://salsa.debian.org/reproducible-builds/diffoscope/-/issues/98
py.test-%{python3_bin_suffix} -k 'not test_difference and not test_identification and not test_libmix_differences'
py.test-%{python3_bin_suffix} -k 'not test_identification'
%files
%doc README.rst

View File

@ -0,0 +1,47 @@
diff --git a/tests/comparators/test_elf.py b/tests/comparators/test_elf.py
index 5e3658a5afff98f01f23aa0716b49229840890b4..82396313f450676d21bcd774396376435e24f57d 100644
--- a/tests/comparators/test_elf.py
+++ b/tests/comparators/test_elf.py
@@ -182,15 +182,22 @@ def test_libmix_differences(libmix_differences):
x86_o = x86_o.details[0]
assert x86_o.source1.startswith("objdump ")
assert src_c.source1.endswith(".c")
- x_obj = x_obj.details[0]
- assert x_obj.source1.startswith("readelf ")
# Content
assert "return42_or_3" in file_list.unified_diff
assert_diff(mach_o, "elfmix_mach_o_expected_diff")
assert_diff(x86_o, "elfmix_disassembly_expected_diff")
assert_diff(src_c, "elfmix_src_c_expected_diff")
- assert_diff(x_obj, "elfmix_x_obj_expected_diff")
+
+ x_obj = x_obj.details[0]
+ if x_obj.source1.startswith("readelf "):
+ assert_diff(x_obj, "elfmix_x_obj_expected_diff")
+ elif x_obj.source1.startswith("objdump "):
+ assert_diff(x_obj, "elfmix_x_obj_objdump_expected_diff")
+ else:
+ pytest.fail(
+ f"x_obj is neither readelf or objdump: {repr(x_obj.source1)}"
+ )
TEST_DBGSYM_DEB1_PATH = data("dbgsym/add/test-dbgsym_1_amd64.deb")
diff --git a/tests/data/elfmix_x_obj_objdump_expected_diff b/tests/data/elfmix_x_obj_objdump_expected_diff
new file mode 100644
index 0000000000000000000000000000000000000000..1c0aace4c3be236262808f8d87336fcb68c3ec3e
--- /dev/null
+++ b/tests/data/elfmix_x_obj_objdump_expected_diff
@@ -0,0 +1,11 @@
+@@ -3,9 +3,9 @@
+
+ Disassembly of section .text:
+
+ 00000000 <return42_or_3>:
+ return42_or_3():
+ entry a1, 32
+ mov.n a7, a1
+- movi.n a2, 42
++ movi.n a2, 43
+ retw.n