blob: c0e2b626b3a330725e4a7fcf860441b1678c1f7c [file] [log] [blame]
% Licensed under the Apache License, Version 2.0 (the "License"); you may not
% use this file except in compliance with the License. You may obtain a copy of
% the License at
%
% http://www.apache.org/licenses/LICENSE-2.0
%
% Unless required by applicable law or agreed to in writing, software
% distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
% WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
% License for the specific language governing permissions and limitations under
% the License.
-module(fabric_tests).
-include_lib("couch/include/couch_eunit.hrl").
cleanup_index_files_test_() ->
{
setup,
fun setup/0,
fun teardown/1,
fun(Ctx) ->
[
t_cleanup_index_files(),
t_cleanup_index_files_with_existing_db(Ctx),
t_cleanup_index_files_with_deleted_db(Ctx)
]
end
}.
setup() ->
Ctx = test_util:start_couch([fabric]),
% TempDb is deleted in the test "t_cleanup_index_files_with_deleted_db".
TempDb = ?tempdb(),
fabric:create_db(TempDb),
{Ctx, TempDb}.
teardown({Ctx, _TempDb}) ->
test_util:stop_couch(Ctx).
t_cleanup_index_files() ->
?_assert(
lists:all(fun(Res) -> Res =:= ok end, fabric:cleanup_index_files())
).
t_cleanup_index_files_with_existing_db({_Ctx, TempDb}) ->
?_assertEqual(ok, fabric:cleanup_index_files(TempDb)).
t_cleanup_index_files_with_deleted_db({_Ctx, TempDb}) ->
?_test(
begin
fabric:delete_db(TempDb, []),
?assertError(
database_does_not_exist,
fabric:inactive_index_files(TempDb)
),
?assertEqual(ok, fabric:cleanup_index_files(TempDb))
end
).