mock.py 文件源码

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

项目:puresec-cli 作者: puresec 项目源码 文件源码
def mock(self, module, name, return_value=None):
        if (module, name) not in self.mocks:
            self.mocks[(module, name)] = getattr(module or self.module, name, None)

        original_value = self.mocks[(module, name)]

        if original_value is None or callable(original_value):
            self = weakref.proxy(self)
            module_name = module.__name__ if hasattr(module, '__name__') else type(module).__name__
            call_name = "{}.{}".format(module_name, name) if module else name
            def _mock(*attrs, **kwargs):
                self.calls[call_name].append((attrs, kwargs))
                return return_value(*attrs, **kwargs) if callable(return_value) else return_value

            setattr(module or self.module, name, _mock)
        else:
            setattr(module or self.module, name, return_value)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号