Это результат выполнения doctest в python3 как python3 -m doctest -v test_inventory.txt
File "test_inventory.txt", line 10, in test_inventory.txt
Failed example:
from inventory import process
Expected nothing
Got:
{"project-abc": {"hosts": ["node1.project-abc.dc-1.dev.com", "node2.project-abc.dc-1.dev.com"]}, "dc-1": {"hosts": ["node1.project-abc.dc-1.dev.com", "node2.project-abc.dc-1.dev.com"]}, "dev": {"hosts": ["node1.project-abc.dc-1.dev.com", "node2.project-abc.dc-1.dev.com"]}, "_meta": {"hostvars": {"node1.project-abc.dc-1.dev.com": {"var1": 123, "var2": 456}, "node2.project-abc.dc-1.dev.com": {"var1": 123, "var2": 456}}}}
Это мой текстовый файл теста doctest: -
>>> from inventory import process
>>> process()
'{"project-abc": {"hosts": ["node1.project-abc.dc-1.dev.com", "node2.project-abc.dc-1.dev.com"]}, "dc-1": {"hosts": ["node1.project-abc.dc-1.dev.com", "node2.project-abc.dc-1.dev.com"]}, "dev": {"hosts": ["node1.project-abc.dc-1.dev.com", "node2.project-abc.dc-1.dev.com"]}, "_meta": {"hostvars": {"node1.project-abc.dc-1.dev.com": {"var1": 123, "var2": 456}, "node2.project-abc.dc-1.dev.com": {"var1": 123, "var2": 456}}}}'
Метод, который вызывает мой тест: -
def process():
input_data = parser.generate_data()
groupwise_host_info = build_groupwise_host_info(input_data)
jsonOutput = parser.to_json(groupwise_host_info)
return jsonOutput
Определенно ожидается, что он вернет строку json.Но шаг теста >>> из процесса импорта инвентаря - разве нельзя ожидать, что он ничего не даст вопреки тому, что показано в приведенном выше выводе?
Я доволен вторым этапом теставывод: -
Trying:
process()
Expecting:
'{"project-abc": {"hosts": ["node1.project-abc.dc-1.dev.com", "node2.project-abc.dc-1.dev.com"]}, "dc-1": {"hosts": ["node1.project-abc.dc-1.dev.com", "node2.project-abc.dc-1.dev.com"]}, "dev": {"hosts": ["node1.project-abc.dc-1.dev.com", "node2.project-abc.dc-1.dev.com"]}, "_meta": {"hostvars": {"node1.project-abc.dc-1.dev.com": {"var1": 123, "var2": 456}, "node2.project-abc.dc-1.dev.com": {"var1": 123, "var2": 456}}}}'
ok
Может ли кто-нибудь уточнить, почему тестовый шаг "from..import" возвращает вместо того, чтобы ничего не возвращать?