Files
n8n-openai-adapter/lib/logger/test/test_helper.exs
T
José Valim 318dd5297b Introduce default_formatter and default_handler config for Logger (#12400)
We now fully integrate with Erlang/OTP logger.

  * Logger.Formatter can now instantiate a compatible Erlamg/OTP logger formatter

  * The default_handler configures the default handler

  * The default_formatter configures the default formatter

  * Backends front-end will be moved to logger_backends package,
    but the implementation will still be shipped as part of Elixir
2023-02-15 17:31:18 +01:00

55 lines
1.0 KiB
Elixir

{line_exclude, line_include} =
if line = System.get_env("LINE"), do: {[:test], [line: line]}, else: {[], []}
ExUnit.start(
trace: !!System.get_env("TRACE"),
include: line_include,
exclude: line_exclude
)
defmodule Logger.Case do
use ExUnit.CaseTemplate
import ExUnit.CaptureIO
using _ do
quote do
import Logger.Case
end
end
def msg(msg) do
~r/\d\d\:\d\d\:\d\d\.\d\d\d #{Regex.escape(msg)}/
end
def wait_for_handler(manager, handler) do
unless handler in :gen_event.which_handlers(manager) do
Process.sleep(10)
wait_for_handler(manager, handler)
end
end
def wait_for_logger() do
try do
:gen_event.which_handlers(Logger)
catch
:exit, _ ->
Process.sleep(10)
wait_for_logger()
else
_ ->
:ok
end
end
def capture_log(level \\ :debug, fun) do
Logger.configure(level: level)
capture_io(:user, fn ->
fun.()
Logger.flush()
end)
after
Logger.configure(level: :debug)
end
end