Ответ 1
В настоящее время я обошел это, вручную загрузив код из моего файла test_helper.exs
:
Code.load_file("test/ssh_server.ex")
Я пишу тесты некоторых кодеков Elixir, которые взаимодействуют с SSH. В моих тестах я хотел бы запустить SSH-сервер, с которым я могу запустить свой код. Я бы предпочел сохранить этот код в собственном файле в тестовом каталоге и импортировать его с помощью различных тестов.
Я не смог заставить это работать слишком хорошо, хотя.
Я пробовал создать файл test/ssh_server.ex
, содержащий модуль SSHServer
, но когда я добавляю import SSHServer
к моим тестам, я получаю:
(CompileError) test/end_to_end_test.exs: 13: модуль SSHServer не загружен и не может быть найден
Я что-то упустил? Есть ли способ заставить mix test
импортировать файл test/ssh_server.ex?
В настоящее время я обошел это, вручную загрузив код из моего файла test_helper.exs
:
Code.load_file("test/ssh_server.ex")
Скомпилируйте модуль, затем он будет доступен.
Это можно сделать либо в iex
iex > c "test/ssh_server.ex"
или с elixirc
elixirc "test/ssh_server.ex"
http://elixir-lang.org/getting-started/modules.html#compilation