1
文件在我的Python包,我有一个配置模块,读取YAML文件写入时,在明确的位置(在创建实例时),即像惩戒在python
class YamlConfig(object):
def __init__(self):
filename = os.path.join(os.path.expanduser('~'), '.hanzo\\config.yml')
with open(filename) as fs:
self.cfg = yaml.load(fs.read())
现在我该怎么办我的单元测试如果我不想使用明确指定的文件?相反,我想创建一个用于测试的临时config.yml
。
我可以简单地允许在__init__()
中指定的文件名,但我强烈希望强制文件名的位置。即像这样
class YamlConfig(object):
def __init__(self, filename=os.path.join(os.path.expanduser('~'), '.hanzo\\config.yml')):
with open(filename) as fs:
self.cfg = yaml.load(fs.read())
是否有其他方法可以解决我的问题?我想这可能是正确的使用mock
?也可随意对上涨和下跌发表任何评论。
你需要一些具体的内容在该文件中,或者你只是YAML输出需要一个虚拟的临时文件? – lapinkoira
是我在单元测试中指定的一些yaml内容 –