From 14f3b46174ecf4df17017177a2de3991bb8a5a05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Pawe=C5=82=20Chrz=C4=85szcz?= Date: Wed, 17 Apr 2024 17:34:31 +0200 Subject: [PATCH] Allow to wait for logs in log_helper --- test/log_helper.hrl | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/test/log_helper.hrl b/test/log_helper.hrl index 3e22aae7bfa..2de4074b838 100644 --- a/test/log_helper.hrl +++ b/test/log_helper.hrl @@ -2,25 +2,34 @@ %% For set-up and tear-down, see log_helper.erl -define(assertNoLog(LevelPattern, MsgPattern), - case ?receiveLog(LevelPattern, MsgPattern) of + ?assertNoLog(LevelPattern, MsgPattern, 0)). + +-define(assertNoLog(LevelPattern, MsgPattern, Timeout), + case ?receiveLog(LevelPattern, MsgPattern, Timeout) of no_log -> ok; _ -> ct:fail("Received unexpected log") end). -define(assertLog(LevelPattern, MsgPattern), - case ?receiveLog(LevelPattern, MsgPattern) of + ?assertLog(LevelPattern, MsgPattern, 0)). + +-define(assertLog(LevelPattern, MsgPattern, Timeout), + case ?receiveLog(LevelPattern, MsgPattern, Timeout) of no_log -> ct:fail("Expected log not received"); _ -> ok end). -define(receiveLog(LevelPattern, MsgPattern), + ?receiveLog(LevelPattern, MsgPattern, 0)). + +-define(receiveLog(LevelPattern, MsgPattern, Timeout), ?wrap(receive {log, #{level := Level = LevelPattern, msg := {report, Msg = MsgPattern}}} -> ct:log("Received ~p log: ~p", [Level, Msg]), {Level, Msg} after - 0 -> no_log + Timeout -> no_log end)). %% Wrap in a fun to avoid unsafe variables