Example #1
0
    def test_dyld_library(self):
        for k in (
            "DYLD_LIBRARY_PATH",
            "DYLD_FALLBACK_LIBRARY_PATH",
            "DYLD_IMAGE_SUFFIX",
        ):
            if k in os.environ:
                del os.environ[k]

        orig = os.path.exists
        try:
            os.path.exists = lambda fn: l.append(fn)

            l = []
            self.assertRaises(
                ValueError,
                dyld.dyld_library,
                "/usr/lib/libSystem.dylib",
                "libXSystem.dylib",
            )
            self.assertEqual(
                l,
                [
                    "/usr/lib/libSystem.dylib",
                    os.path.expanduser("~/lib/libXSystem.dylib"),
                    "/usr/local/lib/libXSystem.dylib",
                    "/lib/libXSystem.dylib",
                    "/usr/lib/libXSystem.dylib",
                ],
            )

            os.environ["DYLD_IMAGE_SUFFIX"] = "_debug"
            l = []
            self.assertRaises(
                ValueError,
                dyld.dyld_library,
                "/usr/lib/libSystem.dylib",
                "libXSystem.dylib",
            )
            self.assertEqual(
                l,
                [
                    "/usr/lib/libSystem_debug.dylib",
                    "/usr/lib/libSystem.dylib",
                    os.path.expanduser("~/lib/libXSystem_debug.dylib"),
                    os.path.expanduser("~/lib/libXSystem.dylib"),
                    "/usr/local/lib/libXSystem_debug.dylib",
                    "/usr/local/lib/libXSystem.dylib",
                    "/lib/libXSystem_debug.dylib",
                    "/lib/libXSystem.dylib",
                    "/usr/lib/libXSystem_debug.dylib",
                    "/usr/lib/libXSystem.dylib",
                ],
            )

            del os.environ["DYLD_IMAGE_SUFFIX"]

            os.environ["DYLD_LIBRARY_PATH"] = "/slib:/usr/slib"
            l = []
            self.assertRaises(
                ValueError,
                dyld.dyld_library,
                "/usr/lib/libSystem.dylib",
                "libXSystem.dylib",
            )
            self.assertEqual(
                l,
                [
                    "/slib/libXSystem.dylib",
                    "/usr/slib/libXSystem.dylib",
                    "/usr/lib/libSystem.dylib",
                    os.path.expanduser("~/lib/libXSystem.dylib"),
                    "/usr/local/lib/libXSystem.dylib",
                    "/lib/libXSystem.dylib",
                    "/usr/lib/libXSystem.dylib",
                ],
            )
            del os.environ["DYLD_LIBRARY_PATH"]

            os.environ["DYLD_FALLBACK_LIBRARY_PATH"] = "/slib:/usr/slib"
            l = []
            self.assertRaises(
                ValueError,
                dyld.dyld_library,
                "/usr/lib/libSystem.dylib",
                "libXSystem.dylib",
            )
            self.assertEqual(
                l,
                [
                    "/usr/lib/libSystem.dylib",
                    "/slib/libXSystem.dylib",
                    "/usr/slib/libXSystem.dylib",
                ],
            )
            del os.environ["DYLD_FALLBACK_LIBRARY_PATH"]

            os.environ["DYLD_LIBRARY_PATH"] = "/lib2:/lib3"
            os.environ["DYLD_FALLBACK_LIBRARY_PATH"] = "/lib4:/lib5"
            os.environ["DYLD_IMAGE_SUFFIX"] = "_profile"

            l = []
            self.assertRaises(
                ValueError,
                dyld.dyld_library,
                "/usr/lib/libSystem.dylib",
                "libXSystem.dylib",
            )
            self.assertEqual(
                l,
                [
                    "/lib2/libXSystem_profile.dylib",
                    "/lib2/libXSystem.dylib",
                    "/lib3/libXSystem_profile.dylib",
                    "/lib3/libXSystem.dylib",
                    "/usr/lib/libSystem_profile.dylib",
                    "/usr/lib/libSystem.dylib",
                    "/lib4/libXSystem_profile.dylib",
                    "/lib4/libXSystem.dylib",
                    "/lib5/libXSystem_profile.dylib",
                    "/lib5/libXSystem.dylib",
                ],
            )
            del os.environ["DYLD_LIBRARY_PATH"]
            del os.environ["DYLD_FALLBACK_LIBRARY_PATH"]
            del os.environ["DYLD_IMAGE_SUFFIX"]

        finally:
            os.path.exists = orig

        self.assertEqual(
            dyld.dyld_library("/usr/lib/libSystem.dylib", "libXSystem.dylib"),
            "/usr/lib/libSystem.dylib",
        )

        # When the 'command line tools for xcode' are not installed there is no debug version of libsystem in the system wide
        # library directory. In that case we look in the SDK instead.
        if os.path.exists("/usr/lib/libSystem_debug.dylib"):
            os.environ["DYLD_IMAGE_SUFFIX"] = "_debug"
            self.assertEqual(
                dyld.dyld_library("/usr/lib/libSystem.dylib", "libSystem.dylib"),
                "/usr/lib/libSystem_debug.dylib",
            )

        else:
            p = subprocess.check_output(["xcrun", "--show-sdk-path"]).strip()
            os.environ["DYLD_LIBRARY_PATH"] = os.path.join(
                (p.decode("utf-8") if sys.version_info[0] == 3 else p), "usr", "lib"
            )
            os.environ["DYLD_IMAGE_SUFFIX"] = "_debug"

            # The OSX 10.11 SDK no longer contains ".dylib" files, which makes the test useless when running up-to-date
            # tools on OSX 10.10 or later.
            if os_level_key(os_release()) < os_level_key("10.10"):
                self.assertEqual(
                    dyld.dyld_library("/usr/lib/libSystem.dylib", "libSystem.dylib"),
                    os.path.join(
                        os.environ["DYLD_LIBRARY_PATH"], "libSystem_debug.dylib"
                    ),
                )
Example #2
0
    def test_dyld_library(self):
        for k in ('DYLD_LIBRARY_PATH', 'DYLD_FALLBACK_LIBRARY_PATH', 'DYLD_IMAGE_SUFFIX'):
            if k in os.environ:
                del os.environ[k]

        orig = os.path.exists
        try:
            os.path.exists = lambda fn: l.append(fn)

            l = []
            self.assertRaises(ValueError, dyld.dyld_library, '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem.dylib',
            ])

            os.environ['DYLD_IMAGE_SUFFIX'] = '_debug'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library, '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem_debug.dylib',
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem_debug.dylib'),
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem_debug.dylib',
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem_debug.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem_debug.dylib',
                '/usr/lib/libXSystem.dylib',
            ])

            del os.environ['DYLD_IMAGE_SUFFIX']

            os.environ['DYLD_LIBRARY_PATH'] = '/slib:/usr/slib'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library, '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/slib/libXSystem.dylib',
                '/usr/slib/libXSystem.dylib',
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem.dylib',
            ])
            del os.environ['DYLD_LIBRARY_PATH']

            os.environ['DYLD_FALLBACK_LIBRARY_PATH'] = '/slib:/usr/slib'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library, '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem.dylib',
                '/slib/libXSystem.dylib',
                '/usr/slib/libXSystem.dylib',
            ])
            del os.environ['DYLD_FALLBACK_LIBRARY_PATH']

            os.environ['DYLD_LIBRARY_PATH'] = "/lib2:/lib3"
            os.environ['DYLD_FALLBACK_LIBRARY_PATH'] = "/lib4:/lib5"
            os.environ['DYLD_IMAGE_SUFFIX'] = "_profile"

            l = []
            self.assertRaises(ValueError, dyld.dyld_library, '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/lib2/libXSystem_profile.dylib',
                '/lib2/libXSystem.dylib',
                '/lib3/libXSystem_profile.dylib',
                '/lib3/libXSystem.dylib',
                '/usr/lib/libSystem_profile.dylib',
                '/usr/lib/libSystem.dylib',
                '/lib4/libXSystem_profile.dylib',
                '/lib4/libXSystem.dylib',
                '/lib5/libXSystem_profile.dylib',
                '/lib5/libXSystem.dylib',
            ])
            del os.environ['DYLD_LIBRARY_PATH']
            del os.environ['DYLD_FALLBACK_LIBRARY_PATH']
            del os.environ['DYLD_IMAGE_SUFFIX']

        finally:
            os.path.exists = orig


        self.assertEqual(dyld.dyld_library('/usr/lib/libSystem.dylib', 'libXSystem.dylib'), '/usr/lib/libSystem.dylib')

        os.environ['DYLD_IMAGE_SUFFIX'] = "_debug"
        self.assertEqual(dyld.dyld_library('/usr/lib/libSystem.dylib', 'libSystem.dylib'), '/usr/lib/libSystem_debug.dylib')
Example #3
0
    def test_dyld_library(self):
        for k in ('DYLD_LIBRARY_PATH', 'DYLD_FALLBACK_LIBRARY_PATH', 'DYLD_IMAGE_SUFFIX'):
            if k in os.environ:
                del os.environ[k]

        orig = os.path.exists
        try:
            os.path.exists = lambda fn: l.append(fn)

            l = []
            self.assertRaises(ValueError, dyld.dyld_library, '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem.dylib',
            ])

            os.environ['DYLD_IMAGE_SUFFIX'] = '_debug'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library, '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem_debug.dylib',
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem_debug.dylib'),
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem_debug.dylib',
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem_debug.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem_debug.dylib',
                '/usr/lib/libXSystem.dylib',
            ])

            del os.environ['DYLD_IMAGE_SUFFIX']

            os.environ['DYLD_LIBRARY_PATH'] = '/slib:/usr/slib'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library, '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/slib/libXSystem.dylib',
                '/usr/slib/libXSystem.dylib',
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem.dylib',
            ])
            del os.environ['DYLD_LIBRARY_PATH']

            os.environ['DYLD_FALLBACK_LIBRARY_PATH'] = '/slib:/usr/slib'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library, '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem.dylib',
                '/slib/libXSystem.dylib',
                '/usr/slib/libXSystem.dylib',
            ])
            del os.environ['DYLD_FALLBACK_LIBRARY_PATH']

            os.environ['DYLD_LIBRARY_PATH'] = "/lib2:/lib3"
            os.environ['DYLD_FALLBACK_LIBRARY_PATH'] = "/lib4:/lib5"
            os.environ['DYLD_IMAGE_SUFFIX'] = "_profile"

            l = []
            self.assertRaises(ValueError, dyld.dyld_library, '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/lib2/libXSystem_profile.dylib',
                '/lib2/libXSystem.dylib',
                '/lib3/libXSystem_profile.dylib',
                '/lib3/libXSystem.dylib',
                '/usr/lib/libSystem_profile.dylib',
                '/usr/lib/libSystem.dylib',
                '/lib4/libXSystem_profile.dylib',
                '/lib4/libXSystem.dylib',
                '/lib5/libXSystem_profile.dylib',
                '/lib5/libXSystem.dylib',
            ])
            del os.environ['DYLD_LIBRARY_PATH']
            del os.environ['DYLD_FALLBACK_LIBRARY_PATH']
            del os.environ['DYLD_IMAGE_SUFFIX']

        finally:
            os.path.exists = orig


        self.assertEqual(dyld.dyld_library('/usr/lib/libSystem.dylib', 'libXSystem.dylib'), '/usr/lib/libSystem.dylib')

        # When the 'command line tools for xcode' are not installed there is no debug version of libsystem in the system wide
        # library directory. In that case we look in the SDK instead.
        if os.path.exists('/usr/lib/libSystem_debug.dylib'):
            os.environ['DYLD_IMAGE_SUFFIX'] = "_debug"
            self.assertEqual(dyld.dyld_library('/usr/lib/libSystem.dylib', 'libSystem.dylib'), '/usr/lib/libSystem_debug.dylib')

        else:
            p = subprocess.check_output(['xcrun', '--show-sdk-path']).strip()
            os.environ['DYLD_LIBRARY_PATH'] = os.path.join(
                    (p.decode('utf-8') if sys.version_info[0] == 3 else p),
                    'usr', 'lib')
            os.environ['DYLD_IMAGE_SUFFIX'] = "_debug"
            self.assertEqual(dyld.dyld_library('/usr/lib/libSystem.dylib', 'libSystem.dylib'),
                    os.path.join(os.environ['DYLD_LIBRARY_PATH'], 'libSystem_debug.dylib'))
Example #4
0
    def test_dyld_library(self):
        for k in ('DYLD_LIBRARY_PATH', 'DYLD_FALLBACK_LIBRARY_PATH',
                  'DYLD_IMAGE_SUFFIX'):
            if k in os.environ:
                del os.environ[k]

        orig = os.path.exists
        try:
            os.path.exists = lambda fn: l.append(fn)

            l = []
            self.assertRaises(ValueError, dyld.dyld_library,
                              '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem.dylib',
            ])

            os.environ['DYLD_IMAGE_SUFFIX'] = '_debug'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library,
                              '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem_debug.dylib',
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem_debug.dylib'),
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem_debug.dylib',
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem_debug.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem_debug.dylib',
                '/usr/lib/libXSystem.dylib',
            ])

            del os.environ['DYLD_IMAGE_SUFFIX']

            os.environ['DYLD_LIBRARY_PATH'] = '/slib:/usr/slib'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library,
                              '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/slib/libXSystem.dylib',
                '/usr/slib/libXSystem.dylib',
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem.dylib',
            ])
            del os.environ['DYLD_LIBRARY_PATH']

            os.environ['DYLD_FALLBACK_LIBRARY_PATH'] = '/slib:/usr/slib'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library,
                              '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem.dylib',
                '/slib/libXSystem.dylib',
                '/usr/slib/libXSystem.dylib',
            ])
            del os.environ['DYLD_FALLBACK_LIBRARY_PATH']

            os.environ['DYLD_LIBRARY_PATH'] = "/lib2:/lib3"
            os.environ['DYLD_FALLBACK_LIBRARY_PATH'] = "/lib4:/lib5"
            os.environ['DYLD_IMAGE_SUFFIX'] = "_profile"

            l = []
            self.assertRaises(ValueError, dyld.dyld_library,
                              '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/lib2/libXSystem_profile.dylib',
                '/lib2/libXSystem.dylib',
                '/lib3/libXSystem_profile.dylib',
                '/lib3/libXSystem.dylib',
                '/usr/lib/libSystem_profile.dylib',
                '/usr/lib/libSystem.dylib',
                '/lib4/libXSystem_profile.dylib',
                '/lib4/libXSystem.dylib',
                '/lib5/libXSystem_profile.dylib',
                '/lib5/libXSystem.dylib',
            ])
            del os.environ['DYLD_LIBRARY_PATH']
            del os.environ['DYLD_FALLBACK_LIBRARY_PATH']
            del os.environ['DYLD_IMAGE_SUFFIX']

        finally:
            os.path.exists = orig

        self.assertEqual(
            dyld.dyld_library('/usr/lib/libSystem.dylib', 'libXSystem.dylib'),
            '/usr/lib/libSystem.dylib')

        os.environ['DYLD_IMAGE_SUFFIX'] = "_debug"
        self.assertEqual(
            dyld.dyld_library('/usr/lib/libSystem.dylib', 'libSystem.dylib'),
            '/usr/lib/libSystem_debug.dylib')
Example #5
0
    def test_dyld_library(self):
        for k in ('DYLD_LIBRARY_PATH', 'DYLD_FALLBACK_LIBRARY_PATH',
                  'DYLD_IMAGE_SUFFIX'):
            if k in os.environ:
                del os.environ[k]

        orig = os.path.exists
        try:
            os.path.exists = lambda fn: l.append(fn)

            l = []
            self.assertRaises(ValueError, dyld.dyld_library,
                              '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem.dylib',
            ])

            os.environ['DYLD_IMAGE_SUFFIX'] = '_debug'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library,
                              '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem_debug.dylib',
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem_debug.dylib'),
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem_debug.dylib',
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem_debug.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem_debug.dylib',
                '/usr/lib/libXSystem.dylib',
            ])

            del os.environ['DYLD_IMAGE_SUFFIX']

            os.environ['DYLD_LIBRARY_PATH'] = '/slib:/usr/slib'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library,
                              '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/slib/libXSystem.dylib',
                '/usr/slib/libXSystem.dylib',
                '/usr/lib/libSystem.dylib',
                os.path.expanduser('~/lib/libXSystem.dylib'),
                '/usr/local/lib/libXSystem.dylib',
                '/lib/libXSystem.dylib',
                '/usr/lib/libXSystem.dylib',
            ])
            del os.environ['DYLD_LIBRARY_PATH']

            os.environ['DYLD_FALLBACK_LIBRARY_PATH'] = '/slib:/usr/slib'
            l = []
            self.assertRaises(ValueError, dyld.dyld_library,
                              '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/usr/lib/libSystem.dylib',
                '/slib/libXSystem.dylib',
                '/usr/slib/libXSystem.dylib',
            ])
            del os.environ['DYLD_FALLBACK_LIBRARY_PATH']

            os.environ['DYLD_LIBRARY_PATH'] = "/lib2:/lib3"
            os.environ['DYLD_FALLBACK_LIBRARY_PATH'] = "/lib4:/lib5"
            os.environ['DYLD_IMAGE_SUFFIX'] = "_profile"

            l = []
            self.assertRaises(ValueError, dyld.dyld_library,
                              '/usr/lib/libSystem.dylib', 'libXSystem.dylib')
            self.assertEqual(l, [
                '/lib2/libXSystem_profile.dylib',
                '/lib2/libXSystem.dylib',
                '/lib3/libXSystem_profile.dylib',
                '/lib3/libXSystem.dylib',
                '/usr/lib/libSystem_profile.dylib',
                '/usr/lib/libSystem.dylib',
                '/lib4/libXSystem_profile.dylib',
                '/lib4/libXSystem.dylib',
                '/lib5/libXSystem_profile.dylib',
                '/lib5/libXSystem.dylib',
            ])
            del os.environ['DYLD_LIBRARY_PATH']
            del os.environ['DYLD_FALLBACK_LIBRARY_PATH']
            del os.environ['DYLD_IMAGE_SUFFIX']

        finally:
            os.path.exists = orig

        self.assertEqual(
            dyld.dyld_library('/usr/lib/libSystem.dylib', 'libXSystem.dylib'),
            '/usr/lib/libSystem.dylib')

        # When the 'command line tools for xcode' are not installed there is no debug version of libsystem in the system wide
        # library directory. In that case we look in the SDK instead.
        if os.path.exists('/usr/lib/libSystem_debug.dylib'):
            os.environ['DYLD_IMAGE_SUFFIX'] = "_debug"
            self.assertEqual(
                dyld.dyld_library('/usr/lib/libSystem.dylib',
                                  'libSystem.dylib'),
                '/usr/lib/libSystem_debug.dylib')

        else:
            p = subprocess.check_output(['xcrun', '--show-sdk-path']).strip()
            os.environ['DYLD_LIBRARY_PATH'] = os.path.join(
                (p.decode('utf-8') if sys.version_info[0] == 3 else p), 'usr',
                'lib')
            os.environ['DYLD_IMAGE_SUFFIX'] = "_debug"
            self.assertEqual(
                dyld.dyld_library('/usr/lib/libSystem.dylib',
                                  'libSystem.dylib'),
                os.path.join(os.environ['DYLD_LIBRARY_PATH'],
                             'libSystem_debug.dylib'))