Python 可以模拟平台以二进制和文本模式读写文件吗?

Python 可以模拟平台以二进制和文本模式读写文件吗?,python,testing,Python,Testing,我想测试系统在多个平台上(至少在linux和windows上)是否正确读取和写入文件(文本模式/二进制模式)。(使用pytest) 看 例如,可以用pyfakefs模拟文件系统。 但是,在linux上运行测试时,我还没有找到一个模拟windows行为的mock,它使用以文本模式打开的文件来模拟windows行为 在linux上运行时,是否可以强制将eol(\r\n转换为\n)转换为文本模式?刚刚无意中发现了这个问题-虽然这是一个老问题,但答案可能会帮助其他人。。。 在pyfakefs中,您可以,

我想测试系统在多个平台上(至少在linux和windows上)是否正确读取和写入文件(文本模式/二进制模式)。(使用pytest)

例如,可以用pyfakefs模拟文件系统。 但是,在linux上运行测试时,我还没有找到一个模拟windows行为的mock,它使用以文本模式打开的文件来模拟windows行为


在linux上运行时,是否可以强制将eol(\r\n转换为\n)转换为文本模式?

刚刚无意中发现了这个问题-虽然这是一个老问题,但答案可能会帮助其他人。。。 在pyfakefs中,您可以,例如(pytest中的示例):

linux(fs)下的def test\u windows\u stuff\u fs.is_windows_fs=True 文件路径='C:/foo/bar/baz' 将打开的(文件路径“w”)作为f: f、 写入('某些内容\n带有换行符\n') ...