[diffoscope] 05/05: tests: Test Deb{Changes, Buildinfo, Dsc} fallback comparisons.

Chris Lamb chris at chris-lamb.co.uk
Sat Feb 4 03:45:27 CET 2017


This is an automated email from the git hooks/post-receive script.

lamby pushed a commit to branch master
in repository diffoscope.

commit 931b49a22bf653f730eb020040a8518b3220badd
Author: Chris Lamb <lamby at debian.org>
Date:   Sat Feb 4 15:40:17 2017 +1300

    tests: Test Deb{Changes,Buildinfo,Dsc} fallback comparisons.
    
    Signed-off-by: Chris Lamb <lamby at debian.org>
---
 tests/comparators/test_debian.py                | 30 +++++++++++++++++++++++--
 tests/data/dot_buildinfo_fallback_expected_diff | 23 +++++++++++++++++++
 tests/data/dot_changes_fallback_expected_diff   | 29 ++++++++++++++++++++++++
 tests/data/dot_dsc_fallback_expected_diff       | 16 +++++++++++++
 4 files changed, 96 insertions(+), 2 deletions(-)

diff --git a/tests/comparators/test_debian.py b/tests/comparators/test_debian.py
index f3b1c0b..5836d3a 100644
--- a/tests/comparators/test_debian.py
+++ b/tests/comparators/test_debian.py
@@ -242,10 +242,36 @@ def test_dot_buildinfo_internal_diff(dot_buildinfo_differences):
 def test_dot_buildinfo_compare_non_existing(monkeypatch, dot_buildinfo1):
     assert_non_existing(monkeypatch, dot_buildinfo1)
 
-def test_fallback_import(monkeypatch):
-    # Ensure that we can at least import the fallback module
+def test_fallback_comparisons(monkeypatch):
     manager = ComparatorManager()
     monkeypatch.setattr(manager, 'COMPARATORS', (
         ('debian_fallback.DotChangesFile',),
+        ('debian_fallback.DotDscFile',),
+        ('debian_fallback.DotBuildinfoFile',),
     ))
     manager.reload()
+
+    for a, b, expected_diff in (
+        (
+            'test1.changes',
+            'test2.changes',
+            'dot_changes_fallback_expected_diff',
+        ),
+        (
+            'test1.dsc',
+            'test2.dsc',
+            'dot_dsc_fallback_expected_diff'
+        ),
+        (
+            'test1.buildinfo',
+            'test2.buildinfo',
+            'dot_buildinfo_fallback_expected_diff',
+        ),
+    ):
+        # Re-specialize after reloading our Comparators
+        file1 = specialize(FilesystemFile(data(a)))
+        file2 = specialize(FilesystemFile(data(b)))
+
+        assert file1.compare(file1) is None
+        assert file2.compare(file2) is None
+        assert file1.compare(file2).unified_diff == get_data(expected_diff)
diff --git a/tests/data/dot_buildinfo_fallback_expected_diff b/tests/data/dot_buildinfo_fallback_expected_diff
new file mode 100644
index 0000000..6269d1c
--- /dev/null
+++ b/tests/data/dot_buildinfo_fallback_expected_diff
@@ -0,0 +1,23 @@
+@@ -1,19 +1,19 @@
+ Format: 1.0
+ Build-Architecture: amd64
+ Source: test
+ Binary: test
+ Architecture: all
+ Version: 1
+ Checksums-Md5:
+- 660ad4713e5d8271df2e7e86bf246dc0 2262 devel optional test_1_all.deb
++ d323c454462407fe3bfde31a74b23eba 2388 test_1_all.deb
+ Checksums-Sha1:
+- b21eeec5004853c4955d5b856a6546068c2d7dc9 2262 test_1_all.deb
++ 70982664db2015334bff6441b429d7e3c58dbecb 2388 test_1_all.deb
+ Checksums-Sha256:
+- d2b2ea8b9cf8ef645a328cdb882586ee465e141fc66a2dbe1ad29b29ac1e7920 2262 test_1_all.deb
++ 2f2e45ee3a5fdacd9b30133ec728121588bf9b97af3b947b3882b2b28a0555da 2388 test_1_all.deb
+ Build-Path: /build/test-1
+ Build-Environment:
+  base-files (= 9.4),
+  base-passwd (= 3.5.38),
+  bash (= 4.3-14),
+  binutils (= 2.25.1-5),
+  bsdmainutils (= 9.0.6),
diff --git a/tests/data/dot_changes_fallback_expected_diff b/tests/data/dot_changes_fallback_expected_diff
new file mode 100644
index 0000000..17673f3
--- /dev/null
+++ b/tests/data/dot_changes_fallback_expected_diff
@@ -0,0 +1,29 @@
+@@ -5,21 +5,21 @@
+ Architecture: source all
+ Version: 1
+ Distribution: unstable
+ Urgency: low
+ Maintainer: Someone Else <user at example.org>
+ Changed-By: Someone Else <user at example.org>
+ Description:
+- test - just a test package
++ test - just a simple test package
+ Changes:
+  test (1) unstable; urgency=low
+  .
+    * Test package.
+ Checksums-Sha1:
+- b21eeec5004853c4955d5b856a6546068c2d7dc9 2262 test_1_all.deb
+- e1cafb5f8db51f4ec477807d105b1e3cccf9a767 3780 test_1.buildinfo
++ 70982664db2015334bff6441b429d7e3c58dbecb 2388 test_1_all.deb
++ 91d2cc6aadddb4a24b0c2f8f24d558ce0e07f9cd 3765 test_2.buildinfo
+ Checksums-Sha256:
+- d2b2ea8b9cf8ef645a328cdb882586ee465e141fc66a2dbe1ad29b29ac1e7920 2262 test_1_all.deb
+- 167d989223978a45a69af30dcd488baa00aec2045b66d0f74d7f03b08fd22365 3780 test_1.buildinfo
++ 2f2e45ee3a5fdacd9b30133ec728121588bf9b97af3b947b3882b2b28a0555da 2388 test_1_all.deb
++ 917d8b5c3ade2bde26fe2b7476481537f32a0c07f10e5e44c0ca7a02c8bfa9d8 3765 test_2.buildinfo
+ Files:
+- 660ad4713e5d8271df2e7e86bf246dc0 2262 devel optional test_1_all.deb
+- 40756b7e8aae2c1fcbcac099670b6db8 3780 web optional test_1.buildinfo
++ d323c454462407fe3bfde31a74b23eba 2388 devel optional test_1_all.deb
++ 9972d7c394228311ba92cbcbfe2d6cd9 3765 web optional test_2.buildinfo
diff --git a/tests/data/dot_dsc_fallback_expected_diff b/tests/data/dot_dsc_fallback_expected_diff
new file mode 100644
index 0000000..e0a019c
--- /dev/null
+++ b/tests/data/dot_dsc_fallback_expected_diff
@@ -0,0 +1,16 @@
+@@ -5,12 +5,12 @@
+ Version: 1
+ Maintainer: Someone Else <user at example.org>
+ Standards-Version: 3.9.6
+ Build-Depends: debhelper (>= 7)
+ Package-List: 
+  test deb misc optional
+ Checksums-Sha1: 
+- 2f66c0cf9788240c8c3321193d4a628157748445 2086 test_1.tar.gz
++ 7453b45105d06be451cbc472c2fa1df13a60eb27 2193 test_1.tar.gz
+ Checksums-Sha256: 
+- 1066cb6c1fca0423eb449b7aac27d5a477c55f4262ab8af438100a6d2ee039b4 2086 test_1.tar.gz
++ ff86b4d705489ee0f2825a935100f9a0981b6c8c4c0eb5e19436c8599da14324 2193 test_1.tar.gz
+ Files: 
+- 42c53394ba8bb4d92aab8d40d33507d7 2086 test_1.tar.gz
++ b75f3bae96326e1c518dba429a81f91c 2193 test_1.tar.gz

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/reproducible/diffoscope.git


More information about the diffoscope mailing list