From 862982b7e65c2fc3ebb5b4f803c20aee91c3d1c8 Mon Sep 17 00:00:00 2001 From: Simon McVittie <smcv@collabora.com> Date: Tue, 16 Jun 2020 16:34:42 +0100 Subject: [PATCH] tests: Work around libldap-2.4.so.2 not loading successfully on Arch Workaround for T21931. Fully fixing this is low-priority, because we have been removing libldap dependencies anyway. Signed-off-by: Simon McVittie <smcv@collabora.com> --- tests/inside-scout.py | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/tests/inside-scout.py b/tests/inside-scout.py index 3b9f48853..b7e19585e 100755 --- a/tests/inside-scout.py +++ b/tests/inside-scout.py @@ -363,13 +363,14 @@ class TestInsideScout(BaseTest): arch=multiarch, ): self.assertTrue(arch_info['can-run']) - self.assertEqual([], arch_info['library-issues-summary']) # Graphics driver support depends on the host system, so we # don't assert that everything is fine, only that we have # the information. self.assertIn('graphics-details', arch_info) self.assertIn('glx/gl', arch_info['graphics-details']) + expect_library_issues = set() + for soname, details in arch_info['library-details'].items(): with self.catch( 'per-library information', @@ -377,6 +378,15 @@ class TestInsideScout(BaseTest): arch=multiarch, soname=soname, ): + if soname == 'libldap-2.4.so.2': + # On Debian, libldap-2.4.so.2 is really an alias + # for libldap_r-2.4.so.2; but on Arch Linux they + # are separate libraries, and this causes trouble + # for our library-loading. Ignore failure to load + # the former. + expect_library_issues |= set(details.get('issues', [])) + continue + self.assertIn('path', details) self.assertEqual( [], @@ -521,6 +531,16 @@ class TestInsideScout(BaseTest): details.get(key), ) + with self.catch( + 'per-architecture information', + diagnostic=arch_info, + arch=multiarch, + ): + self.assertEqual( + expect_library_issues, + set(arch_info['library-issues-summary']), + ) + if __name__ == '__main__': assert sys.version_info >= (3, 5), 'Python 3.5+ is required' -- GitLab