You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@couchdb.apache.org by da...@apache.org on 2019/12/25 17:45:42 UTC
[couchdb] 39/41: Speedup eunit: mem3_shards
This is an automated email from the ASF dual-hosted git repository.
davisp pushed a commit to branch speedup-test-suite
in repository https://gitbox.apache.org/repos/asf/couchdb.git
commit 940a7e07a3d4bf3c594e21cd7011b2f8274001a5
Author: Paul J. Davis <pa...@gmail.com>
AuthorDate: Wed Dec 25 11:42:34 2019 -0600
Speedup eunit: mem3_shards
---
src/mem3/src/mem3_shards.erl | 54 +++++++++++++++++++++++++++++---------------
1 file changed, 36 insertions(+), 18 deletions(-)
diff --git a/src/mem3/src/mem3_shards.erl b/src/mem3/src/mem3_shards.erl
index dfa40c3..110e227 100644
--- a/src/mem3/src/mem3_shards.erl
+++ b/src/mem3/src/mem3_shards.erl
@@ -525,25 +525,30 @@ filter_shards_by_range(Range, Shards)->
mem3_shards_test_() ->
{
- foreach,
- fun setup/0,
- fun teardown/1,
- [
- t_maybe_spawn_shard_writer_already_exists(),
- t_maybe_spawn_shard_writer_new(),
- t_flush_writer_exists_normal(),
- t_flush_writer_times_out(),
- t_flush_writer_crashes(),
- t_writer_deletes_itself_when_done(),
- t_writer_does_not_delete_other_writers_for_same_shard(),
- t_spawn_writer_in_load_shards_from_db(),
- t_cache_insert_takes_new_update(),
- t_cache_insert_ignores_stale_update_and_kills_worker()
- ]
+ setup,
+ fun setup_all/0,
+ fun teardown_all/1,
+ {
+ foreach,
+ fun setup/0,
+ fun teardown/1,
+ [
+ t_maybe_spawn_shard_writer_already_exists(),
+ t_maybe_spawn_shard_writer_new(),
+ t_flush_writer_exists_normal(),
+ t_flush_writer_times_out(),
+ t_flush_writer_crashes(),
+ t_writer_deletes_itself_when_done(),
+ t_writer_does_not_delete_other_writers_for_same_shard(),
+ t_spawn_writer_in_load_shards_from_db(),
+ t_cache_insert_takes_new_update(),
+ t_cache_insert_ignores_stale_update_and_kills_worker()
+ ]
+ }
}.
-setup() ->
+setup_all() ->
ets:new(?SHARDS, [bag, public, named_table, {keypos, #shard.dbname}]),
ets:new(?OPENERS, [bag, public, named_table]),
ets:new(?DBS, [set, public, named_table]),
@@ -552,7 +557,7 @@ setup() ->
ok.
-teardown(_) ->
+teardown_all(_) ->
meck:unload(),
ets:delete(?ATIMES),
ets:delete(?DBS),
@@ -560,6 +565,17 @@ teardown(_) ->
ets:delete(?SHARDS).
+setup() ->
+ ets:delete_all_objects(?ATIMES),
+ ets:delete_all_objects(?DBS),
+ ets:delete_all_objects(?OPENERS),
+ ets:delete_all_objects(?SHARDS).
+
+
+teardown(_) ->
+ ok.
+
+
t_maybe_spawn_shard_writer_already_exists() ->
?_test(begin
ets:insert(?OPENERS, {?DB, self()}),
@@ -653,7 +669,9 @@ t_spawn_writer_in_load_shards_from_db() ->
?assertMatch({cache_insert, ?DB, Pid, 1} when is_pid(Pid), Cast),
{cache_insert, _, WPid, _} = Cast,
exit(WPid, kill),
- ?assertEqual([{?DB, WPid}], ets:tab2list(?OPENERS))
+ ?assertEqual([{?DB, WPid}], ets:tab2list(?OPENERS)),
+ meck:unload(couch_db),
+ meck:unload(mem3_util)
end).