diff options
author | Paul J. Davis <paul.joseph.davis@gmail.com> | 2020-02-14 11:17:15 -0600 |
---|---|---|
committer | Paul J. Davis <paul.joseph.davis@gmail.com> | 2020-03-02 12:26:22 -0600 |
commit | 193c342d3850487066cda4c6bdaf87fa704f6ca4 (patch) | |
tree | d0e0f94bfe726309bda82eb57a5821dc75e5b5cf | |
parent | 86d87cdd99e3e98d2466207a0aecb301d52e0afd (diff) | |
download | couchdb-193c342d3850487066cda4c6bdaf87fa704f6ca4.tar.gz |
Test coverage: list_dbs and list_dbs_info
-rw-r--r-- | src/fabric/test/fabric2_db_crud_tests.erl | 31 |
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; |