summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul J. Davis <paul.joseph.davis@gmail.com>2020-02-14 11:17:15 -0600
committerPaul J. Davis <paul.joseph.davis@gmail.com>2020-03-02 12:26:22 -0600
commit193c342d3850487066cda4c6bdaf87fa704f6ca4 (patch)
treed0e0f94bfe726309bda82eb57a5821dc75e5b5cf
parent86d87cdd99e3e98d2466207a0aecb301d52e0afd (diff)
downloadcouchdb-193c342d3850487066cda4c6bdaf87fa704f6ca4.tar.gz
Test coverage: list_dbs and list_dbs_info
-rw-r--r--src/fabric/test/fabric2_db_crud_tests.erl31
1 files changed, 30 insertions, 1 deletions
diff --git a/src/fabric/test/fabric2_db_crud_tests.erl b/src/fabric/test/fabric2_db_crud_tests.erl
index 80525513a..943b55f3f 100644
--- a/src/fabric/test/fabric2_db_crud_tests.erl
+++ b/src/fabric/test/fabric2_db_crud_tests.erl
@@ -30,7 +30,10 @@ crud_test_() ->
?TDEF(open_db),
?TDEF(delete_db),
?TDEF(list_dbs),
- ?TDEF(list_dbs_info)
+ ?TDEF(list_dbs_user_fun),
+ ?TDEF(list_dbs_user_fun_partial),
+ ?TDEF(list_dbs_info),
+ ?TDEF(list_dbs_info_partial)
])
}
}.
@@ -87,6 +90,26 @@ list_dbs(_) ->
?assert(not lists:member(DbName, AllDbs3)).
+list_dbs_user_fun(_) ->
+ ?assertMatch({ok, _}, fabric2_db:create(?tempdb(), [])),
+
+ UserFun = fun(Row, Acc) -> {ok, [Row | Acc]} end,
+ {ok, UserAcc} = fabric2_db:list_dbs(UserFun, [], []),
+
+ Base = lists:foldl(fun(DbName, Acc) ->
+ [{row, [{id, DbName}]} | Acc]
+ end, [{meta, []}], fabric2_db:list_dbs()),
+ Expect = lists:reverse(Base, [complete]),
+
+ ?assertEqual(Expect, lists:reverse(UserAcc)).
+
+
+list_dbs_user_fun_partial(_) ->
+ UserFun = fun(Row, Acc) -> {stop, [Row | Acc]} end,
+ {ok, UserAcc} = fabric2_db:list_dbs(UserFun, [], []),
+ ?assertEqual([{meta, []}], UserAcc).
+
+
list_dbs_info(_) ->
DbName = ?tempdb(),
{ok, AllDbInfos1} = fabric2_db:list_dbs_info(),
@@ -103,6 +126,12 @@ list_dbs_info(_) ->
?assert(not is_db_info_member(DbName, AllDbInfos3)).
+list_dbs_info_partial(_) ->
+ UserFun = fun(Row, Acc) -> {stop, [Row | Acc]} end,
+ {ok, UserAcc} = fabric2_db:list_dbs_info(UserFun, [], []),
+ ?assertEqual([{meta, []}], UserAcc).
+
+
is_db_info_member(_, []) ->
false;