diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/unit_inbroker_non_parallel_SUITE.erl | 29 |
1 files changed, 21 insertions, 8 deletions
diff --git a/test/unit_inbroker_non_parallel_SUITE.erl b/test/unit_inbroker_non_parallel_SUITE.erl index 69b0efc8fe..120a7fdbd9 100644 --- a/test/unit_inbroker_non_parallel_SUITE.erl +++ b/test/unit_inbroker_non_parallel_SUITE.erl @@ -462,20 +462,31 @@ log_file_initialised_during_startup1(_Config) -> log_file_fails_to_initialise_during_startup(Config) -> - passed = rabbit_ct_broker_helpers:rpc(Config, 0, - ?MODULE, log_file_fails_to_initialise_during_startup1, [Config]). + NonWritableDir = case os:type() of + {win32, _} -> "C:/Windows"; + _ -> "/" + end, + case file:open(filename:join(NonWritableDir, "test.log"), [write]) of + {error, eacces} -> + passed = rabbit_ct_broker_helpers:rpc( + Config, 0, + ?MODULE, log_file_fails_to_initialise_during_startup1, + [Config, NonWritableDir]); + {ok, Fd} -> + %% If the supposedly non-writable directory is writable + %% (e.g. we are running the testsuite on Windows as + %% Administrator), we skip this test. + file:close(Fd), + {skip, "Supposedly non-writable directory is writable"} + end. -log_file_fails_to_initialise_during_startup1(_Config) -> +log_file_fails_to_initialise_during_startup1(_Config, NonWritableDir) -> [LogFile|_] = rabbit:log_locations(), %% start application with logging to directory with no %% write permissions ok = rabbit:stop(), - NonWritableDir = case os:type() of - {win32, _} -> "C:/Windows"; - _ -> "/var/empty" - end, Run1 = fun() -> NoPermission1 = filename:join(NonWritableDir, "test.log"), delete_file(NoPermission1), @@ -497,7 +508,9 @@ log_file_fails_to_initialise_during_startup1(_Config) -> %% start application with logging to a subdirectory which %% parent directory has no write permissions - NoPermission2 = filename:join(NonWritableDir, "non-existent/test.log"), + NoPermission2 = filename:join([NonWritableDir, + "non-existent", + "test.log"]), Run2 = fun() -> delete_file(NoPermission2), |
