xmpp.chapril.org-ejabberd/test/elixir-config/validation_test.exs

32 lines
853 B
Elixir

defmodule Ejabberd.Config.ValidationTest do
use ExUnit.Case
alias Ejabberd.Config
alias Ejabberd.Config.Store
alias Ejabberd.Config.Validation
setup_all do
pid = Process.whereis(Ejabberd.Config.Store)
unless pid != nil and Process.alive?(pid) do
Store.start_link
File.cd("test/elixir-config/shared")
config_file_path = File.cwd! <> "/ejabberd_for_validation.exs"
Config.init(config_file_path)
end
{:ok, %{}}
end
test "validates correctly the modules" do
[mod_configure, mod_time] = Store.get(:modules)
[{:error, _mod, errors}] = Validation.validate(mod_configure)
assert %{dependency: [mod_adhoc: :not_found]} == errors
[{:error, _mod, errors}] = Validation.validate(mod_time)
assert %{attribute: [{{:attr_not_supported, true}, :attr_not_supported}]} == errors
end
end