anchor.diff:                  fun() ->
                           error_logger:warning_report([{i, like}, pie]),
                           Map = error_logger:warning_map(),
  -                        _ = gen_event:which_handlers(error_logger),
  -                        timer:sleep(100),
  +                        custom_sleep(100),
                           {_, _, Msg} = pop(),
                           Expected = lists:flatten(io_lib:format("[~w] ~w i: like, pie", [Map, self()])),
                           ?assertEqual(Expected, lists:flatten(Msg))
  
positive.code:                 fun() ->
                          lager:set_loglevel(?MODULE, debug),
                          error_logger:info_report(progress, [{supervisor, {local, foo}}, {started, [{mfargs, {foo, bar, 1}}, {pid, baz}]}]),
                          _ = gen_event:which_handlers(error_logger),
                          timer:sleep(100),
                          {_, _, Msg} = pop(),
                          Expected = lists:flatten(io_lib:format("[debug] ~w Supervisor foo started foo:bar/1 at pid baz", [self()])),
                          ?assertEqual(Expected, lists:flatten(Msg))
  
negative.code:             {"string error reports are printed",
                  fun() ->
                          error_logger:error_report("this is less silly"),
                          custom_sleep(100),
                          {_, _, Msg} = pop(),
                          Expected = lists:flatten(io_lib:format("[error] ~w this is less silly", [self()])),
                          ?assertEqual(Expected, lists:flatten(Msg))
  