У меня есть следующая python функция в 'au.py'
:
import os
def resolv_conf_audit():
ALT_PATH = "/etc/monitor/etc/resolv.conf.{}".format(os.uname()[1])
RES_PATH = "/data/bin/resolvconf"
if os.path.isfile(RES_PATH):
return "PASSED", "/data/bin/resolvconf is present"
elif os.path.isfile(ALT_PATH):
return "PASSED", "/etc/monitor/etc/resolv.conf. is present"
else:
return "FAILED"
Мне нужно написать модульный тест с макетом, который может проверить, существует ли путь, или нет, это модульный тест, который я написал
from au import resolv_conf_audit
import unittest
from unittest.mock import patch
class TestResolvConf(unittest.TestCase):
@patch('os.path.isfile.ALT_PATH')
def test_both_source_files_not(self, mock_os_is_file):
mock_os_is_file.return_value = False
assert resolv_conf_audit() == "FAILED"
, но я получаю следующую ошибку:
AttributeError: <function isfile at 0x10bdea6a8> does not have the attribute 'ALT_PATH'
Как мне поиздеваться над проверкой наличия ALT_PATH
и RES_PATH
, чтобы я мог проверить функцию. В будущем этот модульный тест должен иметь возможность имитировать удаление некоторых файлов, прежде чем писать, что я тестирую этот простой