Improve test setup and teardown
diff --git a/test/couchdb_peruser_test.erl b/test/couchdb_peruser_test.erl
index 57a369b..554f55b 100644
--- a/test/couchdb_peruser_test.erl
+++ b/test/couchdb_peruser_test.erl
@@ -18,15 +18,17 @@
-define(ADMIN_USERNAME, "admin").
-define(ADMIN_PASSWORD, "secret").
-start_couch() ->
- test_util:start_couch([chttpd]).
+setup_all() ->
+ TestCtx = test_util:start_couch([chttpd]),
+ config:set("admins", ?ADMIN_USERNAME, ?ADMIN_PASSWORD),
+ TestCtx.
-stop_couch(TestCtx) ->
+teardown_all(TestCtx) ->
+ config:delete("admins", ?ADMIN_USERNAME),
test_util:stop_couch(TestCtx).
setup() ->
TestAuthDb = ?tempdb(),
- config:set("admins", ?ADMIN_USERNAME, ?ADMIN_PASSWORD),
do_request(put, get_base_url() ++ "/" ++ ?b2l(TestAuthDb)),
set_config("couch_httpd_auth", "authentication_db", ?b2l(TestAuthDb)),
set_config("couchdb_peruser", "enable", "true"),
@@ -39,8 +41,7 @@
do_request(delete, get_base_url() ++ "/" ++ ?b2l(TestAuthDb)),
lists:foreach(fun (DbName) ->
delete_db(DbName)
- end, all_dbs()),
- config:delete("admins", ?ADMIN_USERNAME).
+ end, all_dbs()).
set_config(Section, Key, Value) ->
Url = lists:concat([
@@ -254,7 +255,7 @@
"couchdb_peruser test",
{
setup,
- fun start_couch/0, fun stop_couch/1,
+ fun setup_all/0, fun teardown_all/1,
{
foreach,
fun setup/0, fun teardown/1,