summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJay Doane <jay.s.doane@gmail.com>2018-12-27 12:49:47 -0800
committerJay Doane <jay.s.doane@gmail.com>2018-12-27 13:07:57 -0800
commit4e75964898bd49218087de1e02391300da024e6c (patch)
treedd66a5a8299546aef5b0b046a23ce6b1284837ee
parent899b49c572847d9b05d457c1919b883d4a0c0305 (diff)
downloadcouchdb-4e75964898bd49218087de1e02391300da024e6c.tar.gz
Suppress export-related compiler warnings
- For export_all warnings: either replace with explicit exports, add nowarn_export_all compiler directives when appropriate, or in the case of couch_epi_sup, move the test to dedicated test file and export the function needed for testing. - For "function already exported" warning in couch_key_tree_prop_tests, remove include_lib attribute for eunit.hrl since it already gets imported in triq.hrl
-rw-r--r--src/couch/src/couch.erl6
-rw-r--r--src/couch/test/couch_key_tree_prop_tests.erl1
-rw-r--r--src/couch_epi/src/couch_epi_sup.erl107
-rw-r--r--src/couch_epi/test/couch_epi_basic_test.erl137
-rw-r--r--src/couch_log/src/couch_log_writer_file.erl4
-rw-r--r--src/couch_log/src/couch_log_writer_syslog.erl5
-rw-r--r--src/couch_log/test/couch_log_test_util.erl11
-rw-r--r--src/couch_mrview/src/couch_mrview_test_util.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_attachments.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_compaction.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_fold_changes.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_fold_docs.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_fold_purge_infos.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_get_set_props.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_open_close_delete.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_purge_docs.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_purge_seqs.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_read_write_docs.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_test_ref_counting.erl1
-rw-r--r--src/couch_pse_tests/src/cpse_util.erl1
-rw-r--r--src/ddoc_cache/test/ddoc_cache_tutil.erl11
-rw-r--r--src/fabric/src/fabric_dict.erl1
22 files changed, 188 insertions, 108 deletions
diff --git a/src/couch/src/couch.erl b/src/couch/src/couch.erl
index fd5c9e101..60a8b6626 100644
--- a/src/couch/src/couch.erl
+++ b/src/couch/src/couch.erl
@@ -12,7 +12,11 @@
-module(couch).
--compile(export_all).
+-export([
+ start/0,
+ stop/0,
+ restart/0
+]).
deps() ->
diff --git a/src/couch/test/couch_key_tree_prop_tests.erl b/src/couch/test/couch_key_tree_prop_tests.erl
index 604a8285a..f8146926a 100644
--- a/src/couch/test/couch_key_tree_prop_tests.erl
+++ b/src/couch/test/couch_key_tree_prop_tests.erl
@@ -14,7 +14,6 @@
-include_lib("triq/include/triq.hrl").
-triq(eunit).
--include_lib("eunit/include/eunit.hrl").
-define(SIZE_REDUCTION, 3). % How much to reduce size with tree depth.
-define(MAX_BRANCHES, 4). % Maximum number of branches.
diff --git a/src/couch_epi/src/couch_epi_sup.erl b/src/couch_epi/src/couch_epi_sup.erl
index 509f5a1c2..218db5445 100644
--- a/src/couch_epi/src/couch_epi_sup.erl
+++ b/src/couch_epi/src/couch_epi_sup.erl
@@ -37,6 +37,11 @@
%% Supervisor callbacks
-export([init/1]).
+%% For testing
+-export([
+ plugin_childspecs/3
+]).
+
%% Helper macro for declaring children of supervisor
-define(CHILD(I, Type), {I, {I, start_link, []}, permanent, 5000, Type, [I]}).
@@ -132,105 +137,3 @@ merge([], Children) ->
Children;
merge([{Id, _, _, _, _, _} = Spec | Rest], Children) ->
merge(Rest, lists:keystore(Id, 1, Children, Spec)).
-
-
-%% ------------------------------------------------------------------
-%% Tests
-%% ------------------------------------------------------------------
-
--ifdef(TEST).
--include_lib("eunit/include/eunit.hrl").
-
-%% ----
-%% BEGIN couch_epi_plugin behaviour callbacks
-
--compile([export_all]).
-
-app() -> test_app.
-providers() ->
- [
- {my_service, provider1},
- {my_service, provider2}
- ].
-
-services() ->
- [
- {my_service, ?MODULE}
- ].
-
-data_providers() ->
- [
- {{test_app, descriptions}, {static_module, ?MODULE}, [{interval, 100}]}
- ].
-
-data_subscriptions() ->
- [
- {test_app, descriptions}
- ].
-
-processes() ->
- [
- {?MODULE, [?CHILD(extra_process, worker)]},
- {?MODULE, [{to_replace, {new, start_link, [bar]},
- permanent, 5000, worker, [bar]}]}
- ].
-
-notify(_Key, _OldData, _NewData) ->
- ok.
-
-%% END couch_epi_plugin behaviour callbacks
-%% ----
-
-parse_child_id(Id) when is_atom(Id) ->
- Id;
-parse_child_id(Id) ->
- ["couch_epi_codechange_monitor", ServiceName, KindStr] = string:tokens(Id, "|"),
- Kind = list_to_atom(KindStr),
- case string:tokens(ServiceName, ":") of
- [ServiceId, Key] ->
- {{list_to_atom(ServiceId), list_to_atom(Key)}, Kind};
- [Key] ->
- {list_to_atom(Key), Kind}
- end.
-
-basic_test() ->
- Expected = lists:sort([
- {extra_process, [], [extra_process]},
- {to_replace, [bar], [bar]},
- {{my_service, providers},
- [couch_epi_functions_gen_my_service],
- [couch_epi_codechange_monitor, couch_epi_functions_gen_my_service,
- provider1, provider2]},
- {{my_service, services},
- [couch_epi_functions_gen_my_service],
- [couch_epi_codechange_monitor, couch_epi_functions_gen_my_service,
- couch_epi_sup]},
- {{{test_app, descriptions}, data_subscriptions},
- [couch_epi_data_gen_test_app_descriptions],
- [couch_epi_codechange_monitor,
- couch_epi_data_gen_test_app_descriptions, couch_epi_sup]},
- {{{test_app, descriptions}, data_providers},
- [couch_epi_data_gen_test_app_descriptions],
- [couch_epi_codechange_monitor, couch_epi_data_gen_test_app_descriptions,
- couch_epi_sup]}
- ]),
-
- ToReplace = {to_replace, {old, start_link, [foo]}, permanent, 5000, worker, [foo]},
- Children = lists:sort(plugin_childspecs(?MODULE, [?MODULE], [ToReplace])),
- Results = [
- {parse_child_id(Id), Args, lists:sort(Modules)}
- || {Id, {_M, _F, Args}, _, _, _, Modules} <- Children
- ],
-
- Tests = lists:zip(Expected, Results),
- [?assertEqual(Expect, Result) || {Expect, Result} <- Tests],
-
- ExpectedChild = {to_replace, {new, start_link, [bar]},
- permanent, 5000, worker, [bar]},
- ?assertEqual(
- ExpectedChild,
- lists:keyfind(to_replace, 1, Children)),
-
- ok.
-
--endif.
diff --git a/src/couch_epi/test/couch_epi_basic_test.erl b/src/couch_epi/test/couch_epi_basic_test.erl
new file mode 100644
index 000000000..587d1564e
--- /dev/null
+++ b/src/couch_epi/test/couch_epi_basic_test.erl
@@ -0,0 +1,137 @@
+% 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(couch_epi_basic_test).
+
+-export([
+ start_link/0
+]).
+
+-export([
+ app/0,
+ providers/0,
+ services/0,
+ data_providers/0,
+ data_subscriptions/0,
+ processes/0,
+ notify/3
+]).
+
+-define(CHILD(I, Type), {I, {I, start_link, []}, permanent, 5000, Type, [I]}).
+
+
+start_link() -> ok.
+
+
+%% BEGIN couch_epi_plugin behaviour callbacks
+
+
+app() -> test_app.
+
+
+providers() ->
+ [
+ {my_service, provider1},
+ {my_service, provider2}
+ ].
+
+
+services() ->
+ [
+ {my_service, ?MODULE}
+ ].
+
+
+data_providers() ->
+ [
+ {{test_app, descriptions}, {static_module, ?MODULE}, [{interval, 100}]}
+ ].
+
+
+data_subscriptions() ->
+ [
+ {test_app, descriptions}
+ ].
+
+
+processes() ->
+ [
+ {?MODULE, [?CHILD(extra_process, worker)]},
+ {?MODULE, [{to_replace, {new, start_link, [bar]},
+ permanent, 5000, worker, [bar]}]}
+ ].
+
+
+notify(_Key, _OldData, _NewData) ->
+ ok.
+
+
+%% END couch_epi_plugin behaviour callbacks
+
+
+parse_child_id(Id) when is_atom(Id) ->
+ Id;
+parse_child_id(Id) ->
+ ["couch_epi_codechange_monitor", ServiceName, KindStr]
+ = string:tokens(Id, "|"),
+ Kind = list_to_atom(KindStr),
+ case string:tokens(ServiceName, ":") of
+ [ServiceId, Key] ->
+ {{list_to_atom(ServiceId), list_to_atom(Key)}, Kind};
+ [Key] ->
+ {list_to_atom(Key), Kind}
+ end.
+
+
+-include_lib("eunit/include/eunit.hrl").
+
+basic_test() ->
+ Expected = lists:sort([
+ {extra_process, [], [extra_process]},
+ {to_replace, [bar], [bar]},
+ {{my_service, providers},
+ [couch_epi_functions_gen_my_service],
+ [couch_epi_codechange_monitor, couch_epi_functions_gen_my_service,
+ provider1, provider2]},
+ {{my_service, services},
+ [couch_epi_functions_gen_my_service],
+ lists:sort([couch_epi_codechange_monitor,
+ couch_epi_functions_gen_my_service, ?MODULE])},
+ {{{test_app, descriptions}, data_subscriptions},
+ [couch_epi_data_gen_test_app_descriptions],
+ lists:sort([couch_epi_codechange_monitor,
+ couch_epi_data_gen_test_app_descriptions, ?MODULE])},
+ {{{test_app, descriptions}, data_providers},
+ [couch_epi_data_gen_test_app_descriptions],
+ lists:sort([couch_epi_codechange_monitor,
+ couch_epi_data_gen_test_app_descriptions, ?MODULE])}
+ ]),
+
+ ToReplace = {to_replace,
+ {old, start_link, [foo]}, permanent, 5000, worker, [foo]},
+ Children = lists:sort(couch_epi_sup:plugin_childspecs(
+ ?MODULE, [?MODULE], [ToReplace])),
+ Results = [
+ {parse_child_id(Id), Args, lists:sort(Modules)}
+ || {Id, {_M, _F, Args}, _, _, _, Modules} <- Children
+ ],
+
+ Tests = lists:zip(Expected, Results),
+ [?assertEqual(Expect, Result) || {Expect, Result} <- Tests],
+
+ ExpectedChild = {to_replace, {new, start_link, [bar]},
+ permanent, 5000, worker, [bar]},
+ ?assertEqual(
+ ExpectedChild,
+ lists:keyfind(to_replace, 1, Children)),
+
+ ok.
diff --git a/src/couch_log/src/couch_log_writer_file.erl b/src/couch_log/src/couch_log_writer_file.erl
index fb01363fd..1fe35a8ab 100644
--- a/src/couch_log/src/couch_log_writer_file.erl
+++ b/src/couch_log/src/couch_log_writer_file.erl
@@ -37,7 +37,9 @@
-ifdef(TEST).
--compile(export_all).
+-export([
+ maybe_reopen/1
+]).
-endif.
diff --git a/src/couch_log/src/couch_log_writer_syslog.erl b/src/couch_log/src/couch_log_writer_syslog.erl
index d918bb783..e3a6fc4b6 100644
--- a/src/couch_log/src/couch_log_writer_syslog.erl
+++ b/src/couch_log/src/couch_log_writer_syslog.erl
@@ -39,7 +39,10 @@
-ifdef(TEST).
--compile(export_all).
+-export([
+ get_facility/1,
+ get_level/1
+]).
-endif.
diff --git a/src/couch_log/test/couch_log_test_util.erl b/src/couch_log/test/couch_log_test_util.erl
index c7fd34f2d..00f3981fc 100644
--- a/src/couch_log/test/couch_log_test_util.erl
+++ b/src/couch_log/test/couch_log_test_util.erl
@@ -11,8 +11,17 @@
% the License.
-module(couch_log_test_util).
--compile(export_all).
+-export([
+ start/0,
+ stop/1,
+ last_log/0,
+ last_log_key/0,
+ wait_for_config/0,
+ with_config_listener/1,
+ with_level/2,
+ with_meck/2
+]).
-include("couch_log.hrl").
diff --git a/src/couch_mrview/src/couch_mrview_test_util.erl b/src/couch_mrview/src/couch_mrview_test_util.erl
index ac298263d..a6242cde7 100644
--- a/src/couch_mrview/src/couch_mrview_test_util.erl
+++ b/src/couch_mrview/src/couch_mrview_test_util.erl
@@ -13,6 +13,7 @@
-module(couch_mrview_test_util).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("couch/include/couch_db.hrl").
-include_lib("couch/include/couch_eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_attachments.erl b/src/couch_pse_tests/src/cpse_test_attachments.erl
index 61ada38c4..8c454ecb6 100644
--- a/src/couch_pse_tests/src/cpse_test_attachments.erl
+++ b/src/couch_pse_tests/src/cpse_test_attachments.erl
@@ -12,6 +12,7 @@
-module(cpse_test_attachments).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_compaction.erl b/src/couch_pse_tests/src/cpse_test_compaction.erl
index d00611101..c8a2c1a7d 100644
--- a/src/couch_pse_tests/src/cpse_test_compaction.erl
+++ b/src/couch_pse_tests/src/cpse_test_compaction.erl
@@ -12,6 +12,7 @@
-module(cpse_test_compaction).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_fold_changes.erl b/src/couch_pse_tests/src/cpse_test_fold_changes.erl
index 00a402cb9..436396276 100644
--- a/src/couch_pse_tests/src/cpse_test_fold_changes.erl
+++ b/src/couch_pse_tests/src/cpse_test_fold_changes.erl
@@ -12,6 +12,7 @@
-module(cpse_test_fold_changes).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_fold_docs.erl b/src/couch_pse_tests/src/cpse_test_fold_docs.erl
index 09fbd26d0..d43930c4a 100644
--- a/src/couch_pse_tests/src/cpse_test_fold_docs.erl
+++ b/src/couch_pse_tests/src/cpse_test_fold_docs.erl
@@ -12,6 +12,7 @@
-module(cpse_test_fold_docs).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_fold_purge_infos.erl b/src/couch_pse_tests/src/cpse_test_fold_purge_infos.erl
index 42bc536d2..4826c5d9c 100644
--- a/src/couch_pse_tests/src/cpse_test_fold_purge_infos.erl
+++ b/src/couch_pse_tests/src/cpse_test_fold_purge_infos.erl
@@ -12,6 +12,7 @@
-module(cpse_test_fold_purge_infos).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_get_set_props.erl b/src/couch_pse_tests/src/cpse_test_get_set_props.erl
index 1f8684475..02f0eb531 100644
--- a/src/couch_pse_tests/src/cpse_test_get_set_props.erl
+++ b/src/couch_pse_tests/src/cpse_test_get_set_props.erl
@@ -12,6 +12,7 @@
-module(cpse_test_get_set_props).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_open_close_delete.erl b/src/couch_pse_tests/src/cpse_test_open_close_delete.erl
index c19d0ee4c..d9b589fd6 100644
--- a/src/couch_pse_tests/src/cpse_test_open_close_delete.erl
+++ b/src/couch_pse_tests/src/cpse_test_open_close_delete.erl
@@ -12,6 +12,7 @@
-module(cpse_test_open_close_delete).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_purge_docs.erl b/src/couch_pse_tests/src/cpse_test_purge_docs.erl
index 34bd34df6..1788eecd1 100644
--- a/src/couch_pse_tests/src/cpse_test_purge_docs.erl
+++ b/src/couch_pse_tests/src/cpse_test_purge_docs.erl
@@ -12,6 +12,7 @@
-module(cpse_test_purge_docs).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_purge_seqs.erl b/src/couch_pse_tests/src/cpse_test_purge_seqs.erl
index a943fc487..057d6da33 100644
--- a/src/couch_pse_tests/src/cpse_test_purge_seqs.erl
+++ b/src/couch_pse_tests/src/cpse_test_purge_seqs.erl
@@ -12,6 +12,7 @@
-module(cpse_test_purge_seqs).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_read_write_docs.erl b/src/couch_pse_tests/src/cpse_test_read_write_docs.erl
index 84bf9f323..fd830d812 100644
--- a/src/couch_pse_tests/src/cpse_test_read_write_docs.erl
+++ b/src/couch_pse_tests/src/cpse_test_read_write_docs.erl
@@ -12,6 +12,7 @@
-module(cpse_test_read_write_docs).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_test_ref_counting.erl b/src/couch_pse_tests/src/cpse_test_ref_counting.erl
index 2a0e4c202..cb115a785 100644
--- a/src/couch_pse_tests/src/cpse_test_ref_counting.erl
+++ b/src/couch_pse_tests/src/cpse_test_ref_counting.erl
@@ -12,6 +12,7 @@
-module(cpse_test_ref_counting).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/couch_pse_tests/src/cpse_util.erl b/src/couch_pse_tests/src/cpse_util.erl
index d3e125924..7556d234b 100644
--- a/src/couch_pse_tests/src/cpse_util.erl
+++ b/src/couch_pse_tests/src/cpse_util.erl
@@ -12,6 +12,7 @@
-module(cpse_util).
-compile(export_all).
+-compile(nowarn_export_all).
-include_lib("eunit/include/eunit.hrl").
diff --git a/src/ddoc_cache/test/ddoc_cache_tutil.erl b/src/ddoc_cache/test/ddoc_cache_tutil.erl
index ec5d2db1e..b34d4b163 100644
--- a/src/ddoc_cache/test/ddoc_cache_tutil.erl
+++ b/src/ddoc_cache/test/ddoc_cache_tutil.erl
@@ -13,7 +13,16 @@
-module(ddoc_cache_tutil).
--compile(export_all).
+-export([
+ start_couch/0,
+ start_couch/1,
+ stop_couch/1,
+ clear/0,
+ get_rev/2,
+ ddocs/0,
+ purge_modules/0,
+ with/1
+]).
-include_lib("couch/include/couch_db.hrl").
diff --git a/src/fabric/src/fabric_dict.erl b/src/fabric/src/fabric_dict.erl
index ec2e25cfc..a336b47b0 100644
--- a/src/fabric/src/fabric_dict.erl
+++ b/src/fabric/src/fabric_dict.erl
@@ -12,6 +12,7 @@
-module(fabric_dict).
-compile(export_all).
+-compile(nowarn_export_all).
% Instead of ets, let's use an ordered keylist. We'll need to revisit if we
% have >> 100 shards, so a private interface is a good idea. - APK June 2010