Package: diffoscope current version: git HEAD 8dde15f9200094882c26a1cf422556c43ec5d5dc
The test_differences test case fails in the test_dex module when using enjarify 1.0.3. A downgrade of enjarify to 1.0.2 makes the test pass again. As enjarify 1.0.3 itself seems to do what its supposed to do, i think the test diff/output is just too strictly tied to the 1.0.2 output. If the guess above is actually the case, a possible workaround may be to expect enjarify to be 1.0.2 and skip the test otherwise. However we start ending up with too many tests strictly tight to a very specific toolset version, making a more general approach for multiple sets more and more important. cheers, Levente Logs: =================================== FAILURES =================================== _______________________________ test_differences _______________________________ differences = [<Difference test1.jar -- test2.jar [<Difference zipinfo -v {} -- zipinfo -v {} []>, <Difference com/example/MainActiv....class [<Difference javap -verbose -constants -s -l -private {} -- javap -verbose -constants -s -l -private {} []>]>]>] @skip_unless_tools_exist('enjarify', 'zipinfo', 'javap') @skip_unless_tool_is_at_least('javap', javap_version, '1.8') def test_differences(differences): assert differences[0].source1 == 'test1.jar' assert differences[0].source2 == 'test2.jar' zipinfo = differences[0].details[0] classdiff = differences[0].details[1] assert zipinfo.source1 == 'zipinfo -v {}' assert zipinfo.source2 == 'zipinfo -v {}' assert classdiff.source1 == 'com/example/MainActivity.class' assert classdiff.source2 == 'com/example/MainActivity.class' expected_diff = open(data('dex_expected_diffs')).read() found_diff = zipinfo.unified_diff + classdiff.details[0].unified_diff > assert expected_diff == found_diff E assert '@@ -54,15 +5...args_size=1\n' == '@@ -54,15 +54...args_size=1\n' E Skipping 500 identical leading characters in diff, use -v to show E Skipping 1284 identical trailing characters in diff, use -v to show E - fc227a58 E + bc28236e E - + 32-bit CRC value (hex): 19c9f64e E ? ^ ^ ^^^ E + + 32-bit CRC value (hex): 59c3af78 E ? ^ ^^ ^^ E compr tests/comparators/test_dex.py:57: AssertionError