From d45849a54598dc116a68c0f59af5286817605841 Mon Sep 17 00:00:00 2001 From: Luke Bakken Date: Fri, 2 Aug 2019 10:08:49 -0700 Subject: [PATCH] Fix lager_rotator_default tests on win32 --- src/lager_crash_log.erl | 2 +- src/lager_file_backend.erl | 4 ++-- src/lager_rotator_default.erl | 10 +++++----- src/lager_util.erl | 6 +++--- test/lager_rotate.erl | 12 ++++++------ 5 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/lager_crash_log.erl b/src/lager_crash_log.erl index 8b97255..4bff771 100644 --- a/src/lager_crash_log.erl +++ b/src/lager_crash_log.erl @@ -243,7 +243,7 @@ do_log({log, Event}, #state{name=Name, fd=FD, inode=Inode, ctime=Ctime, flap=Fla filesystem_test_() -> {foreach, fun() -> - {ok, TestDir} = lager_util:get_test_dir(), + {ok, TestDir} = lager_util:create_test_dir(), CrashLog = filename:join(TestDir, "crash_test.log"), ok = lager_test_util:safe_write_file(CrashLog, []), ok = error_logger:tty(false), diff --git a/src/lager_file_backend.erl b/src/lager_file_backend.erl index e60d25d..b86b7c3 100644 --- a/src/lager_file_backend.erl +++ b/src/lager_file_backend.erl @@ -496,7 +496,7 @@ rotation_test_() -> SyncInterval = ?DEFAULT_SYNC_INTERVAL, Rotator = ?DEFAULT_ROTATION_MOD, CheckInterval = 0, %% hard to test delayed mode - {ok, TestDir} = lager_util:get_test_dir(), + {ok, TestDir} = lager_util:create_test_dir(), TestLog = filename:join(TestDir, "test.log"), #state{name=TestLog, level=?DEBUG, sync_on=SyncLevel, sync_size=SyncSize, sync_interval=SyncInterval, check_interval=CheckInterval, @@ -598,7 +598,7 @@ filesystem_test_() -> ok = application:set_env(lager, handlers, [{lager_test_backend, info}]), ok = application:set_env(lager, error_logger_redirect, false), ok = application:set_env(lager, async_threshold, undefined), - ok = lager_util:create_test_dir(), + {ok, _TestDir} = lager_util:create_test_dir(), ok = lager:start(), %% race condition where lager logs its own start up %% makes several tests fail. See test/lager_test_backend diff --git a/src/lager_rotator_default.erl b/src/lager_rotator_default.erl index f910c73..1620c22 100644 --- a/src/lager_rotator_default.erl +++ b/src/lager_rotator_default.erl @@ -110,10 +110,10 @@ do_update_ctime(_, _Name, FInfo) -> rotate_file_test() -> RotCount = 10, - TestDir = lager_util:create_test_dir(), + {ok, TestDir} = lager_util:create_test_dir(), TestLog = filename:join(TestDir, "rotation.log"), Outer = fun(N) -> - ?assertEqual(ok, file:write_file(TestLog, erlang:integer_to_list(N))), + ?assertEqual(ok, lager_test_util:safe_write_file(TestLog, erlang:integer_to_list(N))), Inner = fun(M) -> File = lists:flatten([TestLog, $., erlang:integer_to_list(M)]), ?assert(filelib:is_regular(File)), @@ -134,7 +134,7 @@ rotate_file_test() -> rotate_file_zero_count_test() -> %% Test that a rotation count of 0 simply truncates the file - TestDir = lager_util:create_test_dir(), + {ok, TestDir} = lager_util:create_test_dir(), TestLog = filename:join(TestDir, "rotation.log"), ?assertMatch(ok, rotate_logfile(TestLog, 0)), ?assertNot(filelib:is_regular(TestLog ++ ".0")), @@ -150,14 +150,14 @@ rotate_file_zero_count_test() -> lager_util:delete_test_dir(TestDir). rotate_file_fail_test() -> - TestDir = lager_util:create_test_dir(), + {ok, TestDir} = lager_util:create_test_dir(), TestLog = filename:join(TestDir, "rotation.log"), %% set known permissions on it ok = lager_util:set_dir_permissions("u+rwx", TestDir), %% write a file - file:write_file(TestLog, "hello"), + ?assertEqual(ok, lager_test_util:safe_write_file(TestLog, "hello")), case os:type() of {win32, _} -> ok; diff --git a/src/lager_util.erl b/src/lager_util.erl index 5755a13..75f639b 100644 --- a/src/lager_util.erl +++ b/src/lager_util.erl @@ -863,13 +863,13 @@ create_test_dir() -> ?assertEqual({error, eexist}, Err), create_test_dir() end, - ok = application:set_env(lager, test_dir, TestDir). + ok = application:set_env(lager, test_dir, TestDir), + {ok, TestDir}. get_test_dir() -> case application:get_env(lager, test_dir) of undefined -> - ok = create_test_dir(), - get_test_dir(); + create_test_dir(); {ok, _}=Res -> Res end. diff --git a/test/lager_rotate.erl b/test/lager_rotate.erl index 95077ee..5c6c1e3 100644 --- a/test/lager_rotate.erl +++ b/test/lager_rotate.erl @@ -37,7 +37,7 @@ rotate_test_() -> {foreach, fun() -> - Dir = lager_util:create_test_dir(), + {ok, Dir} = lager_util:create_test_dir(), Log1 = filename:join(Dir, "test1.log"), Log2 = filename:join(Dir, "test2.log"), Sink = filename:join(Dir, "sink.log"), @@ -70,11 +70,11 @@ rotate_test_() -> timer:sleep(1000), State end, - fun(#state{dir = Dir}) -> - application:stop(lager), - application:stop(goldrush), - lager_util:delete_test_dir(Dir), - error_logger:tty(true) + fun(#state{}) -> + ok = application:stop(lager), + ok = application:stop(goldrush), + ok = lager_util:delete_test_dir(), + ok = error_logger:tty(true) end, [ fun(State) -> {"Rotate single file",