Skip to content

Test failures with OpenSSH 9.8p1

Hi all,

I've noticed two consistent test failures in GNU Guix's diffoscope when building using OpenSSH 9.8p1. Here's the failures:

=================================== FAILURES ===================================
__________________________________ test_diff ___________________________________

differences = []

    @skip_unless_tool_is_at_least("ssh-keygen", openssh_version, "6.9")
    def test_diff(differences):
        expected_diff = get_data("openssh_pub_key_expected_diff")
>       assert differences[0].unified_diff == expected_diff
E       IndexError: list index out of range

tests/comparators/test_openssh_pub_key.py:60: IndexError
__________________________ test_compare_non_existing ___________________________

monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7fffefa9c700>
opensshpubkey1 = <<class 'abc.PublicKeyFile'> /tmp/guix-build-diffoscope-269.drv-0/source/tests/data/test_openssh_pub_key1.pub>

    @skip_unless_tools_exist("ssh-keygen")
    def test_compare_non_existing(monkeypatch, opensshpubkey1):
        monkeypatch.setattr(Config(), "new_file", True)
        difference = opensshpubkey1.compare(
            MissingFile("/nonexisting", opensshpubkey1)
        )
        assert difference.source2 == "/nonexisting"
>       assert len(difference.details) > 0
E       assert 0 > 0
E        +  where 0 = len([])
E        +    where [] = <Difference /tmp/guix-build-diffoscope-269.drv-0/source/tests/data/test_openssh_pub_key1.pub -- /nonexisting []>.details

tests/comparators/test_openssh_pub_key.py:70: AssertionError

It's possible this is a GNU Guix issue (opened here), although I would be surprised as the breaking commit 6522f93ed0 only upgraded OpenSSH from 9.7p1 to 9.8p1. The issue also occurs in diffoscope 271.

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