From 2829d848a04a7400a9cc71a1b1f24841c99018c8 Mon Sep 17 00:00:00 2001 From: Guido Günther Date: Fri, 25 Apr 2014 13:06:02 +0200 Subject: Also look for shared objects without a version While this will add all -dev packages to the checks we need this in order to also pick up dlopen'd objects. --- tests/test_pkg.py | 8 ++++++-- whatmaps/pkg.py | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/tests/test_pkg.py b/tests/test_pkg.py index a8b4182..eca789b 100644 --- a/tests/test_pkg.py +++ b/tests/test_pkg.py @@ -63,14 +63,18 @@ class TestPkg(unittest.TestCase): p = Pkg('doesnotmatter') p._list_contents = '/does/not/matter' PopenMock = mock.return_value - PopenMock.communicate.return_value = [ + PopenMock.communicate.return_value = ['\n'.join([ '/lib/foo.so.1', + '/lib/bar.so', '/not/a/shared/object', - ] + '/not/a/shared/object.soeither', + ])] PopenMock.returncode = 0 result = p.shared_objects self.assertIn('/lib/foo.so.1', result) + self.assertIn('/lib/bar.so', result) self.assertNotIn('/not/a/shred/object', result) + self.assertNotIn('/not/a/shred/object.soeither', result) # We want to check that we don't invoke Popen on # a second call so let it fail. diff --git a/whatmaps/pkg.py b/whatmaps/pkg.py index b69dd27..ab9088d 100644 --- a/whatmaps/pkg.py +++ b/whatmaps/pkg.py @@ -38,7 +38,7 @@ class Pkg(object): type = None services = None - _so_regex = re.compile(r'(?P/.*\.so(\.[^/]*)$)') + _so_regex = re.compile(r'(?P/.*\.so(\.[^/]*)?$)') _list_contents = None def __init__(self, name): -- cgit v1.2.3