diff options
Diffstat (limited to 'src/mem3/test/eunit/mem3_bdu_test.erl')
-rw-r--r-- | src/mem3/test/eunit/mem3_bdu_test.erl | 35 |
1 files changed, 6 insertions, 29 deletions
diff --git a/src/mem3/test/eunit/mem3_bdu_test.erl b/src/mem3/test/eunit/mem3_bdu_test.erl index ad047f6e9..849295691 100644 --- a/src/mem3/test/eunit/mem3_bdu_test.erl +++ b/src/mem3/test/eunit/mem3_bdu_test.erl @@ -12,11 +12,9 @@ -module(mem3_bdu_test). - -include_lib("couch/include/couch_eunit.hrl"). -include_lib("couch/include/couch_db.hrl"). - -define(TDEF_FE(Name), fun(Arg) -> {atom_to_list(Name), ?_test(Name(Arg))} end). -define(USER, "mem3_bdu_test_admin"). @@ -24,10 +22,9 @@ -define(AUTH, {basic_auth, {?USER, ?PASS}}). -define(JSON, {"Content-Type", "application/json"}). - setup() -> Hashed = couch_passwords:hash_admin_password(?PASS), - ok = config:set("admins", ?USER, ?b2l(Hashed), _Persist=false), + ok = config:set("admins", ?USER, ?b2l(Hashed), _Persist = false), Addr = config:get("chttpd", "bind_address", "127.0.0.1"), Db = ?tempdb(), Port = mochiweb_socket_server:get(chttpd, port), @@ -35,29 +32,27 @@ setup() -> ShardsDb = "_node/_local/" ++ config:get("mem3", "shards_db", "_dbs"), {Url, Db, ShardsDb}. - teardown({Url, Db, _}) -> sync_delete_db(Url, Db), - ok = config:delete("admins", ?USER, _Persist=false). - + ok = config:delete("admins", ?USER, _Persist = false). start_couch() -> test_util:start_couch([mem3, chttpd]). - stop_couch(Ctx) -> test_util:stop_couch(Ctx). - mem3_bdu_shard_doc_test_() -> { "mem3 bdu shard doc tests", { setup, - fun start_couch/0, fun stop_couch/1, + fun start_couch/0, + fun stop_couch/1, { foreach, - fun setup/0, fun teardown/1, + fun setup/0, + fun teardown/1, [ ?TDEF_FE(t_can_insert_shard_map_doc), ?TDEF_FE(t_missing_by_node_section), @@ -77,7 +72,6 @@ mem3_bdu_shard_doc_test_() -> } }. - t_can_insert_shard_map_doc({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -91,7 +85,6 @@ t_can_insert_shard_map_doc({Top, Db, ShardsDb}) -> ?assertEqual(201, Code), ?assertMatch(#{<<"ok">> := true}, Res). - t_missing_by_node_section({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -101,7 +94,6 @@ t_missing_by_node_section({Top, Db, ShardsDb}) -> }, ?assertMatch({403, _}, req(post, Top ++ ShardsDb, ShardMap)). - t_by_node_not_a_map({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -112,7 +104,6 @@ t_by_node_not_a_map({Top, Db, ShardsDb}) -> }, ?assertMatch({403, _}, req(post, Top ++ ShardsDb, ShardMap)). - t_missing_by_range_section({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -122,7 +113,6 @@ t_missing_by_range_section({Top, Db, ShardsDb}) -> }, ?assertMatch({403, _}, req(post, Top ++ ShardsDb, ShardMap)). - t_by_range_not_a_map({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -133,7 +123,6 @@ t_by_range_not_a_map({Top, Db, ShardsDb}) -> }, ?assertMatch({403, _}, req(post, Top ++ ShardsDb, ShardMap)). - t_missing_range_in_by_range({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -144,7 +133,6 @@ t_missing_range_in_by_range({Top, Db, ShardsDb}) -> }, ?assertMatch({403, _}, req(post, Top ++ ShardsDb, ShardMap)). - t_missing_node_in_by_range_node_list({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -155,7 +143,6 @@ t_missing_node_in_by_range_node_list({Top, Db, ShardsDb}) -> }, ?assertMatch({403, _}, req(post, Top ++ ShardsDb, ShardMap)). - t_missing_node_in_by_node({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -166,7 +153,6 @@ t_missing_node_in_by_node({Top, Db, ShardsDb}) -> }, ?assertMatch({403, _}, req(post, Top ++ ShardsDb, ShardMap)). - t_missing_range_in_by_node_range_list({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -177,7 +163,6 @@ t_missing_range_in_by_node_range_list({Top, Db, ShardsDb}) -> }, ?assertMatch({403, _}, req(post, Top ++ ShardsDb, ShardMap)). - t_by_node_val_not_array({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -188,7 +173,6 @@ t_by_node_val_not_array({Top, Db, ShardsDb}) -> }, ?assertMatch({403, _}, req(post, Top ++ ShardsDb, ShardMap)). - t_by_range_val_not_array({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -199,7 +183,6 @@ t_by_range_val_not_array({Top, Db, ShardsDb}) -> }, ?assertMatch({403, _}, req(post, Top ++ ShardsDb, ShardMap)). - t_design_docs_are_not_validated({Top, _, ShardsDb}) -> Suffix = integer_to_list(erlang:system_time() + rand:uniform(1000)), DDocId = list_to_binary("_design/ddoc_bdu_test-" ++ Suffix), @@ -214,7 +197,6 @@ t_design_docs_are_not_validated({Top, _, ShardsDb}) -> }, ?assertMatch({200, _}, req(post, Top ++ ShardsDb, Deleted)). - t_replicated_changes_not_validated({Top, Db, ShardsDb}) -> Node = atom_to_binary(node(), utf8), Range = <<"00000000-ffffffff">>, @@ -244,7 +226,6 @@ t_replicated_changes_not_validated({Top, Db, ShardsDb}) -> }, ?assertMatch({200, _}, req(post, Top ++ ShardsDb, Deleted)). - delete_db(Top, Db) when is_binary(Db) -> Url = Top ++ binary_to_list(Db), case test_request:get(Url, [?AUTH]) of @@ -255,7 +236,6 @@ delete_db(Top, Db) when is_binary(Db) -> ok end. - sync_delete_db(Top, Db) when is_binary(Db) -> delete_db(Top, Db), try @@ -268,15 +248,12 @@ sync_delete_db(Top, Db) when is_binary(Db) -> ok end. - req(Method, Url, #{} = Body) -> req(Method, Url, jiffy:encode(Body)); - req(Method, Url, Body) -> Headers = [?JSON, ?AUTH], {ok, Code, _, Res} = test_request:request(Method, Url, Headers, Body), {Code, jiffy:decode(Res, [return_maps])}. - suffix() -> integer_to_list(erlang:system_time(second)). |