diff options
-rwxr-xr-x | run_unittests.py | 58 |
1 files changed, 12 insertions, 46 deletions
diff --git a/run_unittests.py b/run_unittests.py index d85711b..3d5a237 100755 --- a/run_unittests.py +++ b/run_unittests.py @@ -292,88 +292,54 @@ class LinuxlikeTests(unittest.TestCase): return line.split('[')[1].split(']')[0] raise RuntimeError('Readelf gave no SONAME.') - def test_soname(self): + def _test_soname_impl(self, libpath, install): testdir = os.path.join(self.unit_test_dir, '1 soname') self.init(testdir) self.build() + if install: + self.install() # File without aliases set. - nover = os.path.join(self.builddir, 'libnover.so') + nover = os.path.join(libpath, 'libnover.so') self.assertTrue(os.path.exists(nover)) self.assertFalse(os.path.islink(nover)) self.assertEqual(self.get_soname(nover), 'libnover.so') self.assertEqual(len(glob(nover[:-3] + '*')), 1) # File with version set - verset = os.path.join(self.builddir, 'libverset.so') + verset = os.path.join(libpath, 'libverset.so') self.assertTrue(os.path.exists(verset + '.4.5.6')) self.assertEqual(os.readlink(verset), 'libverset.so.4') self.assertEqual(self.get_soname(verset), 'libverset.so.4') self.assertEqual(len(glob(verset[:-3] + '*')), 3) # File with soversion set - soverset = os.path.join(self.builddir, 'libsoverset.so') + soverset = os.path.join(libpath, 'libsoverset.so') self.assertTrue(os.path.exists(soverset + '.1.2.3')) self.assertEqual(os.readlink(soverset), 'libsoverset.so.1.2.3') self.assertEqual(self.get_soname(soverset), 'libsoverset.so.1.2.3') self.assertEqual(len(glob(soverset[:-3] + '*')), 2) # File with version and soversion set to same values - settosame = os.path.join(self.builddir, 'libsettosame.so') + settosame = os.path.join(libpath, 'libsettosame.so') self.assertTrue(os.path.exists(settosame + '.7.8.9')) self.assertEqual(os.readlink(settosame), 'libsettosame.so.7.8.9') self.assertEqual(self.get_soname(settosame), 'libsettosame.so.7.8.9') self.assertEqual(len(glob(settosame[:-3] + '*')), 2) # File with version and soversion set to different values - bothset = os.path.join(self.builddir, 'libbothset.so') + bothset = os.path.join(libpath, 'libbothset.so') self.assertTrue(os.path.exists(bothset + '.1.2.3')) self.assertEqual(os.readlink(bothset), 'libbothset.so.1.2.3') self.assertEqual(os.readlink(bothset + '.1.2.3'), 'libbothset.so.4.5.6') self.assertEqual(self.get_soname(bothset), 'libbothset.so.1.2.3') self.assertEqual(len(glob(bothset[:-3] + '*')), 3) - def test_installed_soname(self): - testdir = os.path.join(self.unit_test_dir, '1 soname') - self.init(testdir) - self.build() - self.install() - - # File without aliases set. - nover = self.installdir + os.path.join(self.libdir, 'libnover.so') - self.assertTrue(os.path.exists(nover)) - self.assertFalse(os.path.islink(nover)) - self.assertEqual(self.get_soname(nover), 'libnover.so') - self.assertEqual(len(glob(nover[:-3] + '*')), 1) - - # File with version set - verset = self.installdir + os.path.join(self.libdir, 'libverset.so') - self.assertTrue(os.path.exists(verset + '.4.5.6')) - self.assertEqual(os.readlink(verset), 'libverset.so.4') - self.assertEqual(self.get_soname(verset), 'libverset.so.4') - self.assertEqual(len(glob(verset[:-3] + '*')), 3) - - # File with soversion set - soverset = self.installdir + os.path.join(self.libdir, 'libsoverset.so') - self.assertTrue(os.path.exists(soverset + '.1.2.3')) - self.assertEqual(os.readlink(soverset), 'libsoverset.so.1.2.3') - self.assertEqual(self.get_soname(soverset), 'libsoverset.so.1.2.3') - self.assertEqual(len(glob(soverset[:-3] + '*')), 2) - - # File with version and soversion set to same values - settosame = self.installdir + os.path.join(self.libdir, 'libsettosame.so') - self.assertTrue(os.path.exists(settosame + '.7.8.9')) - self.assertEqual(os.readlink(settosame), 'libsettosame.so.7.8.9') - self.assertEqual(self.get_soname(settosame), 'libsettosame.so.7.8.9') - self.assertEqual(len(glob(settosame[:-3] + '*')), 2) + def test_soname(self): + self._test_soname_impl(self.builddir, False) - # File with version and soversion set to different values - bothset = self.installdir + os.path.join(self.libdir, 'libbothset.so') - self.assertTrue(os.path.exists(bothset + '.1.2.3')) - self.assertEqual(os.readlink(bothset), 'libbothset.so.1.2.3') - self.assertEqual(os.readlink(bothset + '.1.2.3'), 'libbothset.so.4.5.6') - self.assertEqual(self.get_soname(bothset), 'libbothset.so.1.2.3') - self.assertEqual(len(glob(bothset[:-3] + '*')), 3) + def test_installed_soname(self): + self._test_soname_impl(self.installdir + self.libdir, True) def test_compiler_check_flags_order(self): ''' |