test_filefinder2_importlib_loadmodule.py 文件源码

python
阅读 25 收藏 0 点赞 0 评论 0

项目:filefinder2 作者: asmodehn 项目源码 文件源码
def test_importlib_loadmodule_relative_pkg(self):
            """Verify that package is importable relatively"""
            print_importers()
            assert __package__
            if sys.modules.get(__package__ + '.pkg'):
                raise unittest.SkipTest("module previously loaded".format(__package__ + '.pkg'))
            else:
                # load_module returns existing modules from sys.modules by specification
                # see https://docs.python.org/3.3/library/importlib.html#importlib.abc.Loader)
                pkg_loader = importlib.find_loader(__package__ + '.pkg', [os.path.dirname(__file__)])
                pkg = pkg_loader.load_module(__package__ + '.pkg')
                # safely adding to sysmodules to be able to perform relative imports in there
                #sys.modules.setdefault(nspkg.__name__, nspkg)

            self.assertTrue(pkg is not None)
            self.assertTrue(pkg.TestClassInSubPkg is not None)
            self.assertTrue(callable(pkg.TestClassInSubPkg))

            # Note : apparently reload is broken with find_loader (at least on python 3.5)
            # _find_spec in reload() apparently returns None...
            #
            # => not testing reload in that case (this API is obsolete anyway)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号