You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by rn...@apache.org on 2015/09/18 15:48:21 UTC
[3/3] couchdb-couch-log-lager git commit: Add tests and specs
Add tests and specs
Project: http://git-wip-us.apache.org/repos/asf/couchdb-couch-log-lager/repo
Commit: http://git-wip-us.apache.org/repos/asf/couchdb-couch-log-lager/commit/64cd100c
Tree: http://git-wip-us.apache.org/repos/asf/couchdb-couch-log-lager/tree/64cd100c
Diff: http://git-wip-us.apache.org/repos/asf/couchdb-couch-log-lager/diff/64cd100c
Branch: refs/heads/master
Commit: 64cd100cb566ce93af9ef168fa86f9f70424b77b
Parents: 50dc85f
Author: Eric Avdey <ei...@eiri.ca>
Authored: Thu Sep 17 18:57:59 2015 -0300
Committer: Robert Newson <rn...@apache.org>
Committed: Fri Sep 18 14:47:48 2015 +0100
----------------------------------------------------------------------
src/couch_log_lager.erl | 51 +++++++++++++++++++++++++++++++++++++++++++-
1 file changed, 50 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/couchdb-couch-log-lager/blob/64cd100c/src/couch_log_lager.erl
----------------------------------------------------------------------
diff --git a/src/couch_log_lager.erl b/src/couch_log_lager.erl
index 1938365..b9364ea 100644
--- a/src/couch_log_lager.erl
+++ b/src/couch_log_lager.erl
@@ -14,6 +14,10 @@
-behaviour(couch_log).
+-ifdef(TEST).
+-include_lib("eunit/include/eunit.hrl").
+-endif.
+
-export([
debug/2,
info/2,
@@ -26,30 +30,75 @@
set_level/1
]).
+-spec debug(string(), list()) -> ok.
debug(Fmt, Args) ->
lager:debug(Fmt, Args).
+-spec info(string(), list()) -> ok.
info(Fmt, Args) ->
lager:info(Fmt, Args).
+-spec notice(string(), list()) -> ok.
notice(Fmt, Args) ->
lager:notice(Fmt, Args).
+-spec warning(string(), list()) -> ok.
warning(Fmt, Args) ->
lager:warning(Fmt, Args).
+-spec error(string(), list()) -> ok.
error(Fmt, Args) ->
lager:error(Fmt, Args).
+-spec critical(string(), list()) -> ok.
critical(Fmt, Args) ->
lager:critical(Fmt, Args).
+-spec alert(string(), list()) -> ok.
alert(Fmt, Args) ->
lager:alert(Fmt, Args).
+-spec emergency(string(), list()) -> ok.
emergency(Fmt, Args) ->
lager:emergency(Fmt, Args).
+-spec set_level(atom()) -> ok.
set_level(Level) ->
{ok, Handlers} = application:get_env(lager, handlers),
- [lager:set_loglevel(Handler, Level) || {Handler, _} <- Handlers].
+ lists:foreach(fun({Handler, _}) ->
+ lager:set_loglevel(Handler, Level)
+ end, Handlers).
+
+
+-ifdef(TEST).
+
+callbacks_test_() ->
+ {setup,
+ fun setup/0,
+ fun cleanup/1,
+ [
+ ?_assertEqual(info, lager:get_loglevel(lager_console_backend)),
+ ?_assertEqual(ok, set_level(debug)),
+ ?_assertEqual(debug, lager:get_loglevel(lager_console_backend)),
+ ?_assertEqual(ok, set_level(alert)),
+ ?_assertEqual(alert, lager:get_loglevel(lager_console_backend))
+ ]
+ }.
+
+setup() ->
+ setup_lager().
+
+setup_lager() ->
+ error_logger:tty(false),
+ application:load(lager),
+ application:set_env(lager, handlers, [{lager_console_backend, info}]),
+ application:set_env(lager, error_logger_redirect, false),
+ application:set_env(lager, async_threshold, undefined),
+ lager:start().
+
+cleanup(_) ->
+ application:stop(lager),
+ application:stop(goldrush),
+ error_logger:tty(true).
+
+-endif.