diff options
-rw-r--r-- | lib/dialyzer/test/Makefile | 69 | ||||
-rw-r--r-- | lib/dialyzer/test/README | 26 | ||||
-rw-r--r-- | lib/dialyzer/test/callgraph_tests_SUITE.erl | 52 | ||||
-rw-r--r-- | lib/dialyzer/test/dialyzer_common.erl | 10 | ||||
-rw-r--r-- | lib/dialyzer/test/opaque_tests_SUITE.erl | 184 | ||||
-rw-r--r-- | lib/dialyzer/test/options1_tests_SUITE.erl | 54 | ||||
-rw-r--r-- | lib/dialyzer/test/options2_tests_SUITE.erl | 52 | ||||
-rw-r--r-- | lib/dialyzer/test/plt_tests_SUITE.erl | 2 | ||||
-rw-r--r-- | lib/dialyzer/test/r9c_tests_SUITE.erl | 64 | ||||
-rw-r--r-- | lib/dialyzer/test/race_tests_SUITE.erl | 799 | ||||
-rwxr-xr-x | lib/dialyzer/test/remake | 9 | ||||
-rw-r--r-- | lib/dialyzer/test/small_tests_SUITE.erl | 489 | ||||
-rw-r--r-- | lib/dialyzer/test/user_tests_SUITE.erl | 78 |
13 files changed, 30 insertions, 1858 deletions
diff --git a/lib/dialyzer/test/Makefile b/lib/dialyzer/test/Makefile index a8549278a5..69a8fd742e 100644 --- a/lib/dialyzer/test/Makefile +++ b/lib/dialyzer/test/Makefile @@ -2,74 +2,33 @@ include $(ERL_TOP)/make/target.mk include $(ERL_TOP)/make/$(TARGET)/otp.mk # ---------------------------------------------------- -# Target Specs +# Files # ---------------------------------------------------- -MODULES= \ - callgraph_tests_SUITE \ - opaque_tests_SUITE \ - options1_tests_SUITE \ - options2_tests_SUITE \ - plt_tests_SUITE \ - r9c_tests_SUITE \ - race_tests_SUITE \ - small_tests_SUITE \ - user_tests_SUITE \ - dialyzer_common\ - file_utils - -ERL_FILES= $(MODULES:%=%.erl) - -TARGET_FILES= $(MODULES:%=$(EBIN)/%.$(EMULATOR)) - -INSTALL_PROGS= $(TARGET_FILES) +AUXILIARY_FILES=\ + dialyzer.spec\ + dialyzer_test_constants.hrl\ + dialyzer_common.erl\ + file_utils.erl\ + plt_SUITE.erl # ---------------------------------------------------- # Release directory specification # ---------------------------------------------------- -RELSYSDIR = $(RELEASE_PATH)/dialyzer_test - -# ---------------------------------------------------- -# FLAGS -# ---------------------------------------------------- - -ERL_MAKE_FLAGS += -ERL_COMPILE_FLAGS += -I$(ERL_TOP)/lib/test_server/include - -EBIN = . - -EMAKEFILE=Emakefile - -# ---------------------------------------------------- -# Targets -# ---------------------------------------------------- - -make_emakefile: - $(ERL_TOP)/make/make_emakefile $(ERL_COMPILE_FLAGS) -o$(EBIN) $(MODULES) \ - > $(EMAKEFILE) - -tests debug opt: make_emakefile - erl $(ERL_MAKE_FLAGS) -make -clean: - rm -f $(EMAKEFILE) - rm -f $(TARGET_FILES) $(GEN_FILES) - rm -f core - -docs: +RELSYSDIR = $(RELEASE_PATH)/dialyzer_test # ---------------------------------------------------- # Release Target # ---------------------------------------------------- -include $(ERL_TOP)/make/otp_release_targets.mk -release_spec: opt +include $(ERL_TOP)/make/otp_release_targets.mk -release_tests_spec: make_emakefile +release_tests_spec: $(INSTALL_DIR) $(RELSYSDIR) - $(INSTALL_DATA) $(EMAKEFILE) $(ERL_FILES) $(RELSYSDIR) - $(INSTALL_DATA) dialyzer.spec dialyzer_test_constants.hrl $(RELSYSDIR) chmod -f -R u+w $(RELSYSDIR) + $(INSTALL_DATA) $(AUXILIARY_FILES) $(RELSYSDIR) @tar cf - *_SUITE_data | (cd $(RELSYSDIR); tar xf -) - -release_docs_spec: + cd $(RELSYSDIR);\ + erl -make;\ + erl -noshell -run dialyzer_common create_all_suites -s erlang halt diff --git a/lib/dialyzer/test/README b/lib/dialyzer/test/README index 07340c7266..41f282a131 100644 --- a/lib/dialyzer/test/README +++ b/lib/dialyzer/test/README @@ -2,22 +2,18 @@ To add test cases in any suite: ------------------------------- - 1) If the test requires dialyzer to analyze a single file place it in the - suite's 'src' directory. If analysis of more files is needed place them - all in a new directory in suite's 'src' directory. + 1) If the test requires Dialyzer to analyze a single file (TEST.erl) place it + in the suite's 'src' directory. If analysis of more files is needed place + them all in a new directory (TEST) in suite's 'src' directory. - 2) Create a file with the same name as the test (if single file, omit the - extension else directory name) containing the expected result in suite's - 'result' directory. - - 3) Run './remake <suite>', where <suite> is the suite's name omitting - "_tests_SUITE". + 2) Create a file named TEST containing the expected result in suite's 'result' + directory. ---------------------- To create a new suite: ---------------------- - 1) Create a directory with the suffix 'tests_SUITE_data'. The name should + 1) Create a directory with the suffix '_SUITE_data'. The name should describe the suite. 2) In the suite's directory create subdirectories 'src' and 'results' as @@ -28,17 +24,15 @@ To create a new suite: where: - List = a list of dialyzer options. Common case will be something + List = a list of Dialyzer options. Common case will be something like [{warnings, Warnings}], where Warnings is a list of valid '-W' prefixed dialyzer options without the 'W' prefix (e.g. '-Wfoo' would be declared as [{warnings, [foo]}]. - Limit = the amount of time each test case is allowed to run. Must be - bigger than the time it takes the most time-consuming test to - finish. + Limit = the amount of time (in minutes) each test case is allowed to + run. Must be greater than the time required to complete the most + time-consuming test in the suite. Any of these lines may be missing. Default options list is empty and default time limit is 1 minute. 3) Add tests as described in previous section. - - 4) Add the resulting suite's name in the Makefile's MODULES variable. diff --git a/lib/dialyzer/test/callgraph_tests_SUITE.erl b/lib/dialyzer/test/callgraph_tests_SUITE.erl deleted file mode 100644 index 6148adf971..0000000000 --- a/lib/dialyzer/test/callgraph_tests_SUITE.erl +++ /dev/null @@ -1,52 +0,0 @@ -%% ATTENTION! -%% This is an automatically generated file. Do not edit. -%% Use './remake' script to refresh it if needed. -%% All Dialyzer options should be defined in dialyzer_options -%% file. - --module(callgraph_tests_SUITE). - --include("ct.hrl"). --include("dialyzer_test_constants.hrl"). - --export([suite/0, init_per_suite/0, init_per_suite/1, - end_per_suite/1, all/0]). --export([callgraph_tests_SUITE_consistency/1, test_missing_functions/1]). - -suite() -> - [{timetrap, {minutes, 1}}]. - -init_per_suite() -> - [{timetrap, ?plt_timeout}]. -init_per_suite(Config) -> - OutDir = ?config(priv_dir, Config), - case dialyzer_common:check_plt(OutDir) of - fail -> {skip, "Plt creation/check failed."}; - ok -> [{dialyzer_options, []}|Config] - end. - -end_per_suite(_Config) -> - ok. - -all() -> - [callgraph_tests_SUITE_consistency,test_missing_functions]. - -dialyze(Config, TestCase) -> - Opts = ?config(dialyzer_options, Config), - Dir = ?config(data_dir, Config), - OutDir = ?config(priv_dir, Config), - dialyzer_common:check(TestCase, Opts, Dir, OutDir). - -callgraph_tests_SUITE_consistency(Config) -> - Dir = ?config(data_dir, Config), - case dialyzer_common:new_tests(Dir, all()) of - [] -> ok; - New -> ct:fail({missing_tests,New}) - end. - -test_missing_functions(Config) -> - case dialyze(Config, test_missing_functions) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - diff --git a/lib/dialyzer/test/dialyzer_common.erl b/lib/dialyzer/test/dialyzer_common.erl index 5577405483..a24ac96bd7 100644 --- a/lib/dialyzer/test/dialyzer_common.erl +++ b/lib/dialyzer/test/dialyzer_common.erl @@ -7,13 +7,13 @@ -module(dialyzer_common). --export([check_plt/1, check/4, create_suite/1, - create_all_suites/0, new_tests/2]). +-export([check_plt/1, check/4, create_all_suites/0, new_tests/2]). -include_lib("kernel/include/file.hrl"). -define(suite_suffix, "_tests_SUITE"). -define(data_folder, "_data"). +-define(suite_data, ?suite_suffix ++ ?data_folder). -define(erlang_extension, ".erl"). -define(output_file_mode, write). -define(dialyzer_option_file, "dialyzer_options"). @@ -209,7 +209,7 @@ get_suites(Dir) -> {error, _} -> []; {ok, Filenames} -> FullFilenames = [filename:join(Dir, F) || F <-Filenames ], - Dirs = [suffix(filename:basename(F), "_tests_SUITE_data") || + Dirs = [suffix(filename:basename(F), ?suite_data) || F <- FullFilenames, file_utils:file_type(F) =:= {ok, 'directory'}], [S || {yes, S} <- Dirs] @@ -232,7 +232,7 @@ create_suite(SuiteName) -> generate_suite(SuiteName, OutputFile, OptionsFileN, InputDirN). generate_suite_dir_from_name(Cwd, SuiteName) -> - filename:join(Cwd, SuiteName ++ ?suite_suffix ++ ?data_folder). + filename:join(Cwd, SuiteName ++ ?suite_data). generate_suite_file(Cwd, SuiteName) -> OutputFilename = @@ -305,7 +305,7 @@ write_header(#suite{suitename = SuiteName, outputfile = OutputFile, "%% All Dialyzer options should be defined in dialyzer_options\n" "%% file.\n\n" "-module(~s).\n\n" - "-include(\"ct.hrl\").\n" + "-include_lib(\"common_test/include/ct.hrl\").\n" "-include(\"dialyzer_test_constants.hrl\").\n\n" "-export([suite/0, init_per_suite/0, init_per_suite/1,\n" " end_per_suite/1, all/0]).\n" diff --git a/lib/dialyzer/test/opaque_tests_SUITE.erl b/lib/dialyzer/test/opaque_tests_SUITE.erl deleted file mode 100644 index 6b90e7a646..0000000000 --- a/lib/dialyzer/test/opaque_tests_SUITE.erl +++ /dev/null @@ -1,184 +0,0 @@ -%% ATTENTION! -%% This is an automatically generated file. Do not edit. -%% Use './remake' script to refresh it if needed. -%% All Dialyzer options should be defined in dialyzer_options -%% file. - --module(opaque_tests_SUITE). - --include("ct.hrl"). --include("dialyzer_test_constants.hrl"). - --export([suite/0, init_per_suite/0, init_per_suite/1, - end_per_suite/1, all/0]). --export([opaque_tests_SUITE_consistency/1, array/1, crash/1, dict/1, - ets/1, gb_sets/1, inf_loop1/1, int/1, mixed_opaque/1, - my_digraph/1, my_queue/1, opaque/1, queue/1, rec/1, timer/1, - union/1, wings/1, zoltan_kis1/1, zoltan_kis2/1, zoltan_kis3/1, - zoltan_kis4/1, zoltan_kis5/1, zoltan_kis6/1]). - -suite() -> - [{timetrap, {minutes, 1}}]. - -init_per_suite() -> - [{timetrap, ?plt_timeout}]. -init_per_suite(Config) -> - OutDir = ?config(priv_dir, Config), - case dialyzer_common:check_plt(OutDir) of - fail -> {skip, "Plt creation/check failed."}; - ok -> [{dialyzer_options, [{warnings,[no_unused,no_return]}]}|Config] - end. - -end_per_suite(_Config) -> - ok. - -all() -> - [opaque_tests_SUITE_consistency,array,crash,dict,ets,gb_sets,inf_loop1,int, - mixed_opaque,my_digraph,my_queue,opaque,queue,rec,timer,union,wings, - zoltan_kis1,zoltan_kis2,zoltan_kis3,zoltan_kis4,zoltan_kis5,zoltan_kis6]. - -dialyze(Config, TestCase) -> - Opts = ?config(dialyzer_options, Config), - Dir = ?config(data_dir, Config), - OutDir = ?config(priv_dir, Config), - dialyzer_common:check(TestCase, Opts, Dir, OutDir). - -opaque_tests_SUITE_consistency(Config) -> - Dir = ?config(data_dir, Config), - case dialyzer_common:new_tests(Dir, all()) of - [] -> ok; - New -> ct:fail({missing_tests,New}) - end. - -array(Config) -> - case dialyze(Config, array) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -crash(Config) -> - case dialyze(Config, crash) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -dict(Config) -> - case dialyze(Config, dict) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets(Config) -> - case dialyze(Config, ets) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -gb_sets(Config) -> - case dialyze(Config, gb_sets) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -inf_loop1(Config) -> - case dialyze(Config, inf_loop1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -int(Config) -> - case dialyze(Config, int) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mixed_opaque(Config) -> - case dialyze(Config, mixed_opaque) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -my_digraph(Config) -> - case dialyze(Config, my_digraph) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -my_queue(Config) -> - case dialyze(Config, my_queue) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -opaque(Config) -> - case dialyze(Config, opaque) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -queue(Config) -> - case dialyze(Config, queue) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -rec(Config) -> - case dialyze(Config, rec) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -timer(Config) -> - case dialyze(Config, timer) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -union(Config) -> - case dialyze(Config, union) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -wings(Config) -> - case dialyze(Config, wings) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -zoltan_kis1(Config) -> - case dialyze(Config, zoltan_kis1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -zoltan_kis2(Config) -> - case dialyze(Config, zoltan_kis2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -zoltan_kis3(Config) -> - case dialyze(Config, zoltan_kis3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -zoltan_kis4(Config) -> - case dialyze(Config, zoltan_kis4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -zoltan_kis5(Config) -> - case dialyze(Config, zoltan_kis5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -zoltan_kis6(Config) -> - case dialyze(Config, zoltan_kis6) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - diff --git a/lib/dialyzer/test/options1_tests_SUITE.erl b/lib/dialyzer/test/options1_tests_SUITE.erl deleted file mode 100644 index 02cafe6c5f..0000000000 --- a/lib/dialyzer/test/options1_tests_SUITE.erl +++ /dev/null @@ -1,54 +0,0 @@ -%% ATTENTION! -%% This is an automatically generated file. Do not edit. -%% Use './remake' script to refresh it if needed. -%% All Dialyzer options should be defined in dialyzer_options -%% file. - --module(options1_tests_SUITE). - --include("ct.hrl"). --include("dialyzer_test_constants.hrl"). - --export([suite/0, init_per_suite/0, init_per_suite/1, - end_per_suite/1, all/0]). --export([options1_tests_SUITE_consistency/1, compiler/1]). - -suite() -> - [{timetrap, {minutes, 30}}]. - -init_per_suite() -> - [{timetrap, ?plt_timeout}]. -init_per_suite(Config) -> - OutDir = ?config(priv_dir, Config), - case dialyzer_common:check_plt(OutDir) of - fail -> {skip, "Plt creation/check failed."}; - ok -> [{dialyzer_options, [{include_dirs,["my_include"]}, - {defines,[{'COMPILER_VSN',42}]}, - {warnings,[no_improper_lists]}]}|Config] - end. - -end_per_suite(_Config) -> - ok. - -all() -> - [options1_tests_SUITE_consistency,compiler]. - -dialyze(Config, TestCase) -> - Opts = ?config(dialyzer_options, Config), - Dir = ?config(data_dir, Config), - OutDir = ?config(priv_dir, Config), - dialyzer_common:check(TestCase, Opts, Dir, OutDir). - -options1_tests_SUITE_consistency(Config) -> - Dir = ?config(data_dir, Config), - case dialyzer_common:new_tests(Dir, all()) of - [] -> ok; - New -> ct:fail({missing_tests,New}) - end. - -compiler(Config) -> - case dialyze(Config, compiler) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - diff --git a/lib/dialyzer/test/options2_tests_SUITE.erl b/lib/dialyzer/test/options2_tests_SUITE.erl deleted file mode 100644 index 43b5207744..0000000000 --- a/lib/dialyzer/test/options2_tests_SUITE.erl +++ /dev/null @@ -1,52 +0,0 @@ -%% ATTENTION! -%% This is an automatically generated file. Do not edit. -%% Use './remake' script to refresh it if needed. -%% All Dialyzer options should be defined in dialyzer_options -%% file. - --module(options2_tests_SUITE). - --include("ct.hrl"). --include("dialyzer_test_constants.hrl"). - --export([suite/0, init_per_suite/0, init_per_suite/1, - end_per_suite/1, all/0]). --export([options2_tests_SUITE_consistency/1, kernel/1]). - -suite() -> - [{timetrap, {minutes, 1}}]. - -init_per_suite() -> - [{timetrap, ?plt_timeout}]. -init_per_suite(Config) -> - OutDir = ?config(priv_dir, Config), - case dialyzer_common:check_plt(OutDir) of - fail -> {skip, "Plt creation/check failed."}; - ok -> [{dialyzer_options, [{defines,[{vsn,4}]},{warnings,[no_return]}]}|Config] - end. - -end_per_suite(_Config) -> - ok. - -all() -> - [options2_tests_SUITE_consistency,kernel]. - -dialyze(Config, TestCase) -> - Opts = ?config(dialyzer_options, Config), - Dir = ?config(data_dir, Config), - OutDir = ?config(priv_dir, Config), - dialyzer_common:check(TestCase, Opts, Dir, OutDir). - -options2_tests_SUITE_consistency(Config) -> - Dir = ?config(data_dir, Config), - case dialyzer_common:new_tests(Dir, all()) of - [] -> ok; - New -> ct:fail({missing_tests,New}) - end. - -kernel(Config) -> - case dialyze(Config, kernel) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - diff --git a/lib/dialyzer/test/plt_tests_SUITE.erl b/lib/dialyzer/test/plt_tests_SUITE.erl index bf45020340..d5881dc3aa 100644 --- a/lib/dialyzer/test/plt_tests_SUITE.erl +++ b/lib/dialyzer/test/plt_tests_SUITE.erl @@ -3,7 +3,7 @@ -module(plt_tests_SUITE). --include("ct.hrl"). +-include_lib("common_test/include/ct.hrl"). -include("dialyzer_test_constants.hrl"). -export([suite/0, all/0, build_plt/1]). diff --git a/lib/dialyzer/test/r9c_tests_SUITE.erl b/lib/dialyzer/test/r9c_tests_SUITE.erl deleted file mode 100644 index cd5bd5ec61..0000000000 --- a/lib/dialyzer/test/r9c_tests_SUITE.erl +++ /dev/null @@ -1,64 +0,0 @@ -%% ATTENTION! -%% This is an automatically generated file. Do not edit. -%% Use './remake' script to refresh it if needed. -%% All Dialyzer options should be defined in dialyzer_options -%% file. - --module(r9c_tests_SUITE). - --include("ct.hrl"). --include("dialyzer_test_constants.hrl"). - --export([suite/0, init_per_suite/0, init_per_suite/1, - end_per_suite/1, all/0]). --export([r9c_tests_SUITE_consistency/1, asn1/1, inets/1, mnesia/1]). - -suite() -> - [{timetrap, {minutes, 20}}]. - -init_per_suite() -> - [{timetrap, ?plt_timeout}]. -init_per_suite(Config) -> - OutDir = ?config(priv_dir, Config), - case dialyzer_common:check_plt(OutDir) of - fail -> {skip, "Plt creation/check failed."}; - ok -> [{dialyzer_options, [{defines,[{vsn,42}]}]}|Config] - end. - -end_per_suite(_Config) -> - ok. - -all() -> - [r9c_tests_SUITE_consistency,asn1,inets,mnesia]. - -dialyze(Config, TestCase) -> - Opts = ?config(dialyzer_options, Config), - Dir = ?config(data_dir, Config), - OutDir = ?config(priv_dir, Config), - dialyzer_common:check(TestCase, Opts, Dir, OutDir). - -r9c_tests_SUITE_consistency(Config) -> - Dir = ?config(data_dir, Config), - case dialyzer_common:new_tests(Dir, all()) of - [] -> ok; - New -> ct:fail({missing_tests,New}) - end. - -asn1(Config) -> - case dialyze(Config, asn1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -inets(Config) -> - case dialyze(Config, inets) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia(Config) -> - case dialyze(Config, mnesia) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - diff --git a/lib/dialyzer/test/race_tests_SUITE.erl b/lib/dialyzer/test/race_tests_SUITE.erl deleted file mode 100644 index cfc898d464..0000000000 --- a/lib/dialyzer/test/race_tests_SUITE.erl +++ /dev/null @@ -1,799 +0,0 @@ -%% ATTENTION! -%% This is an automatically generated file. Do not edit. -%% Use './remake' script to refresh it if needed. -%% All Dialyzer options should be defined in dialyzer_options -%% file. - --module(race_tests_SUITE). - --include("ct.hrl"). --include("dialyzer_test_constants.hrl"). - --export([suite/0, init_per_suite/0, init_per_suite/1, - end_per_suite/1, all/0]). --export([race_tests_SUITE_consistency/1, ets_insert_args1/1, - ets_insert_args2/1, ets_insert_args3/1, ets_insert_args4/1, - ets_insert_args5/1, ets_insert_args6/1, ets_insert_args7/1, - ets_insert_args8/1, ets_insert_control_flow1/1, - ets_insert_control_flow2/1, ets_insert_control_flow3/1, - ets_insert_control_flow4/1, ets_insert_control_flow5/1, - ets_insert_diff_atoms_race1/1, ets_insert_diff_atoms_race2/1, - ets_insert_diff_atoms_race3/1, ets_insert_diff_atoms_race4/1, - ets_insert_diff_atoms_race5/1, ets_insert_diff_atoms_race6/1, - ets_insert_double1/1, ets_insert_double2/1, ets_insert_funs1/1, - ets_insert_funs2/1, ets_insert_new/1, ets_insert_param/1, - extract_translations/1, mnesia_diff_atoms_race1/1, - mnesia_diff_atoms_race2/1, mnesia_dirty_read_one_write_two/1, - mnesia_dirty_read_two_write_one/1, - mnesia_dirty_read_write_double1/1, - mnesia_dirty_read_write_double2/1, - mnesia_dirty_read_write_double3/1, - mnesia_dirty_read_write_double4/1, mnesia_dirty_read_write_one/1, - mnesia_dirty_read_write_two/1, whereis_control_flow1/1, - whereis_control_flow2/1, whereis_control_flow3/1, - whereis_control_flow4/1, whereis_control_flow5/1, - whereis_control_flow6/1, whereis_diff_atoms_no_race/1, - whereis_diff_atoms_race/1, whereis_diff_functions1/1, - whereis_diff_functions1_nested/1, - whereis_diff_functions1_pathsens/1, - whereis_diff_functions1_twice/1, whereis_diff_functions2/1, - whereis_diff_functions2_nested/1, - whereis_diff_functions2_pathsens/1, - whereis_diff_functions2_twice/1, whereis_diff_functions3/1, - whereis_diff_functions3_nested/1, - whereis_diff_functions3_pathsens/1, whereis_diff_functions4/1, - whereis_diff_functions5/1, whereis_diff_functions6/1, - whereis_diff_modules1/1, whereis_diff_modules1_pathsens/1, - whereis_diff_modules1_rec/1, whereis_diff_modules2/1, - whereis_diff_modules2_pathsens/1, whereis_diff_modules2_rec/1, - whereis_diff_modules3/1, whereis_diff_modules_nested/1, - whereis_diff_modules_twice/1, whereis_diff_vars_no_race/1, - whereis_diff_vars_race/1, whereis_intra_inter_module1/1, - whereis_intra_inter_module2/1, whereis_intra_inter_module3/1, - whereis_intra_inter_module4/1, whereis_intra_inter_module5/1, - whereis_intra_inter_module6/1, whereis_intra_inter_module7/1, - whereis_intra_inter_module8/1, whereis_param/1, - whereis_param_inter_module/1, whereis_rec_function1/1, - whereis_rec_function2/1, whereis_rec_function3/1, - whereis_rec_function4/1, whereis_rec_function5/1, - whereis_rec_function6/1, whereis_rec_function7/1, - whereis_rec_function8/1, whereis_try_catch/1, whereis_vars1/1, - whereis_vars10/1, whereis_vars11/1, whereis_vars12/1, - whereis_vars13/1, whereis_vars14/1, whereis_vars15/1, - whereis_vars16/1, whereis_vars17/1, whereis_vars18/1, - whereis_vars19/1, whereis_vars2/1, whereis_vars20/1, - whereis_vars21/1, whereis_vars22/1, whereis_vars3/1, - whereis_vars4/1, whereis_vars5/1, whereis_vars6/1, - whereis_vars7/1, whereis_vars8/1, whereis_vars9/1]). - -suite() -> - [{timetrap, {minutes, 1}}]. - -init_per_suite() -> - [{timetrap, ?plt_timeout}]. -init_per_suite(Config) -> - OutDir = ?config(priv_dir, Config), - case dialyzer_common:check_plt(OutDir) of - fail -> {skip, "Plt creation/check failed."}; - ok -> [{dialyzer_options, [{warnings,[race_conditions]}]}|Config] - end. - -end_per_suite(_Config) -> - ok. - -all() -> - [race_tests_SUITE_consistency,ets_insert_args1,ets_insert_args2, - ets_insert_args3,ets_insert_args4,ets_insert_args5,ets_insert_args6, - ets_insert_args7,ets_insert_args8,ets_insert_control_flow1, - ets_insert_control_flow2,ets_insert_control_flow3,ets_insert_control_flow4, - ets_insert_control_flow5,ets_insert_diff_atoms_race1, - ets_insert_diff_atoms_race2,ets_insert_diff_atoms_race3, - ets_insert_diff_atoms_race4,ets_insert_diff_atoms_race5, - ets_insert_diff_atoms_race6,ets_insert_double1,ets_insert_double2, - ets_insert_funs1,ets_insert_funs2,ets_insert_new,ets_insert_param, - extract_translations,mnesia_diff_atoms_race1,mnesia_diff_atoms_race2, - mnesia_dirty_read_one_write_two,mnesia_dirty_read_two_write_one, - mnesia_dirty_read_write_double1,mnesia_dirty_read_write_double2, - mnesia_dirty_read_write_double3,mnesia_dirty_read_write_double4, - mnesia_dirty_read_write_one,mnesia_dirty_read_write_two, - whereis_control_flow1,whereis_control_flow2,whereis_control_flow3, - whereis_control_flow4,whereis_control_flow5,whereis_control_flow6, - whereis_diff_atoms_no_race,whereis_diff_atoms_race,whereis_diff_functions1, - whereis_diff_functions1_nested,whereis_diff_functions1_pathsens, - whereis_diff_functions1_twice,whereis_diff_functions2, - whereis_diff_functions2_nested,whereis_diff_functions2_pathsens, - whereis_diff_functions2_twice,whereis_diff_functions3, - whereis_diff_functions3_nested,whereis_diff_functions3_pathsens, - whereis_diff_functions4,whereis_diff_functions5,whereis_diff_functions6, - whereis_diff_modules1,whereis_diff_modules1_pathsens, - whereis_diff_modules1_rec,whereis_diff_modules2, - whereis_diff_modules2_pathsens,whereis_diff_modules2_rec, - whereis_diff_modules3,whereis_diff_modules_nested, - whereis_diff_modules_twice,whereis_diff_vars_no_race, - whereis_diff_vars_race,whereis_intra_inter_module1, - whereis_intra_inter_module2,whereis_intra_inter_module3, - whereis_intra_inter_module4,whereis_intra_inter_module5, - whereis_intra_inter_module6,whereis_intra_inter_module7, - whereis_intra_inter_module8,whereis_param,whereis_param_inter_module, - whereis_rec_function1,whereis_rec_function2,whereis_rec_function3, - whereis_rec_function4,whereis_rec_function5,whereis_rec_function6, - whereis_rec_function7,whereis_rec_function8,whereis_try_catch, - whereis_vars1,whereis_vars10,whereis_vars11,whereis_vars12,whereis_vars13, - whereis_vars14,whereis_vars15,whereis_vars16,whereis_vars17,whereis_vars18, - whereis_vars19,whereis_vars2,whereis_vars20,whereis_vars21,whereis_vars22, - whereis_vars3,whereis_vars4,whereis_vars5,whereis_vars6,whereis_vars7, - whereis_vars8,whereis_vars9]. - -dialyze(Config, TestCase) -> - Opts = ?config(dialyzer_options, Config), - Dir = ?config(data_dir, Config), - OutDir = ?config(priv_dir, Config), - dialyzer_common:check(TestCase, Opts, Dir, OutDir). - -race_tests_SUITE_consistency(Config) -> - Dir = ?config(data_dir, Config), - case dialyzer_common:new_tests(Dir, all()) of - [] -> ok; - New -> ct:fail({missing_tests,New}) - end. - -ets_insert_args1(Config) -> - case dialyze(Config, ets_insert_args1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_args2(Config) -> - case dialyze(Config, ets_insert_args2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_args3(Config) -> - case dialyze(Config, ets_insert_args3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_args4(Config) -> - case dialyze(Config, ets_insert_args4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_args5(Config) -> - case dialyze(Config, ets_insert_args5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_args6(Config) -> - case dialyze(Config, ets_insert_args6) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_args7(Config) -> - case dialyze(Config, ets_insert_args7) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_args8(Config) -> - case dialyze(Config, ets_insert_args8) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_control_flow1(Config) -> - case dialyze(Config, ets_insert_control_flow1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_control_flow2(Config) -> - case dialyze(Config, ets_insert_control_flow2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_control_flow3(Config) -> - case dialyze(Config, ets_insert_control_flow3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_control_flow4(Config) -> - case dialyze(Config, ets_insert_control_flow4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_control_flow5(Config) -> - case dialyze(Config, ets_insert_control_flow5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_diff_atoms_race1(Config) -> - case dialyze(Config, ets_insert_diff_atoms_race1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_diff_atoms_race2(Config) -> - case dialyze(Config, ets_insert_diff_atoms_race2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_diff_atoms_race3(Config) -> - case dialyze(Config, ets_insert_diff_atoms_race3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_diff_atoms_race4(Config) -> - case dialyze(Config, ets_insert_diff_atoms_race4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_diff_atoms_race5(Config) -> - case dialyze(Config, ets_insert_diff_atoms_race5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_diff_atoms_race6(Config) -> - case dialyze(Config, ets_insert_diff_atoms_race6) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_double1(Config) -> - case dialyze(Config, ets_insert_double1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_double2(Config) -> - case dialyze(Config, ets_insert_double2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_funs1(Config) -> - case dialyze(Config, ets_insert_funs1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_funs2(Config) -> - case dialyze(Config, ets_insert_funs2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_new(Config) -> - case dialyze(Config, ets_insert_new) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_insert_param(Config) -> - case dialyze(Config, ets_insert_param) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -extract_translations(Config) -> - case dialyze(Config, extract_translations) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia_diff_atoms_race1(Config) -> - case dialyze(Config, mnesia_diff_atoms_race1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia_diff_atoms_race2(Config) -> - case dialyze(Config, mnesia_diff_atoms_race2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia_dirty_read_one_write_two(Config) -> - case dialyze(Config, mnesia_dirty_read_one_write_two) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia_dirty_read_two_write_one(Config) -> - case dialyze(Config, mnesia_dirty_read_two_write_one) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia_dirty_read_write_double1(Config) -> - case dialyze(Config, mnesia_dirty_read_write_double1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia_dirty_read_write_double2(Config) -> - case dialyze(Config, mnesia_dirty_read_write_double2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia_dirty_read_write_double3(Config) -> - case dialyze(Config, mnesia_dirty_read_write_double3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia_dirty_read_write_double4(Config) -> - case dialyze(Config, mnesia_dirty_read_write_double4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia_dirty_read_write_one(Config) -> - case dialyze(Config, mnesia_dirty_read_write_one) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mnesia_dirty_read_write_two(Config) -> - case dialyze(Config, mnesia_dirty_read_write_two) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_control_flow1(Config) -> - case dialyze(Config, whereis_control_flow1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_control_flow2(Config) -> - case dialyze(Config, whereis_control_flow2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_control_flow3(Config) -> - case dialyze(Config, whereis_control_flow3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_control_flow4(Config) -> - case dialyze(Config, whereis_control_flow4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_control_flow5(Config) -> - case dialyze(Config, whereis_control_flow5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_control_flow6(Config) -> - case dialyze(Config, whereis_control_flow6) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_atoms_no_race(Config) -> - case dialyze(Config, whereis_diff_atoms_no_race) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_atoms_race(Config) -> - case dialyze(Config, whereis_diff_atoms_race) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions1(Config) -> - case dialyze(Config, whereis_diff_functions1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions1_nested(Config) -> - case dialyze(Config, whereis_diff_functions1_nested) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions1_pathsens(Config) -> - case dialyze(Config, whereis_diff_functions1_pathsens) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions1_twice(Config) -> - case dialyze(Config, whereis_diff_functions1_twice) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions2(Config) -> - case dialyze(Config, whereis_diff_functions2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions2_nested(Config) -> - case dialyze(Config, whereis_diff_functions2_nested) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions2_pathsens(Config) -> - case dialyze(Config, whereis_diff_functions2_pathsens) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions2_twice(Config) -> - case dialyze(Config, whereis_diff_functions2_twice) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions3(Config) -> - case dialyze(Config, whereis_diff_functions3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions3_nested(Config) -> - case dialyze(Config, whereis_diff_functions3_nested) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions3_pathsens(Config) -> - case dialyze(Config, whereis_diff_functions3_pathsens) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions4(Config) -> - case dialyze(Config, whereis_diff_functions4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions5(Config) -> - case dialyze(Config, whereis_diff_functions5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_functions6(Config) -> - case dialyze(Config, whereis_diff_functions6) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_modules1(Config) -> - case dialyze(Config, whereis_diff_modules1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_modules1_pathsens(Config) -> - case dialyze(Config, whereis_diff_modules1_pathsens) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_modules1_rec(Config) -> - case dialyze(Config, whereis_diff_modules1_rec) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_modules2(Config) -> - case dialyze(Config, whereis_diff_modules2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_modules2_pathsens(Config) -> - case dialyze(Config, whereis_diff_modules2_pathsens) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_modules2_rec(Config) -> - case dialyze(Config, whereis_diff_modules2_rec) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_modules3(Config) -> - case dialyze(Config, whereis_diff_modules3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_modules_nested(Config) -> - case dialyze(Config, whereis_diff_modules_nested) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_modules_twice(Config) -> - case dialyze(Config, whereis_diff_modules_twice) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_vars_no_race(Config) -> - case dialyze(Config, whereis_diff_vars_no_race) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_diff_vars_race(Config) -> - case dialyze(Config, whereis_diff_vars_race) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_intra_inter_module1(Config) -> - case dialyze(Config, whereis_intra_inter_module1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_intra_inter_module2(Config) -> - case dialyze(Config, whereis_intra_inter_module2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_intra_inter_module3(Config) -> - case dialyze(Config, whereis_intra_inter_module3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_intra_inter_module4(Config) -> - case dialyze(Config, whereis_intra_inter_module4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_intra_inter_module5(Config) -> - case dialyze(Config, whereis_intra_inter_module5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_intra_inter_module6(Config) -> - case dialyze(Config, whereis_intra_inter_module6) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_intra_inter_module7(Config) -> - case dialyze(Config, whereis_intra_inter_module7) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_intra_inter_module8(Config) -> - case dialyze(Config, whereis_intra_inter_module8) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_param(Config) -> - case dialyze(Config, whereis_param) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_param_inter_module(Config) -> - case dialyze(Config, whereis_param_inter_module) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_rec_function1(Config) -> - case dialyze(Config, whereis_rec_function1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_rec_function2(Config) -> - case dialyze(Config, whereis_rec_function2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_rec_function3(Config) -> - case dialyze(Config, whereis_rec_function3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_rec_function4(Config) -> - case dialyze(Config, whereis_rec_function4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_rec_function5(Config) -> - case dialyze(Config, whereis_rec_function5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_rec_function6(Config) -> - case dialyze(Config, whereis_rec_function6) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_rec_function7(Config) -> - case dialyze(Config, whereis_rec_function7) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_rec_function8(Config) -> - case dialyze(Config, whereis_rec_function8) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_try_catch(Config) -> - case dialyze(Config, whereis_try_catch) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars1(Config) -> - case dialyze(Config, whereis_vars1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars10(Config) -> - case dialyze(Config, whereis_vars10) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars11(Config) -> - case dialyze(Config, whereis_vars11) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars12(Config) -> - case dialyze(Config, whereis_vars12) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars13(Config) -> - case dialyze(Config, whereis_vars13) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars14(Config) -> - case dialyze(Config, whereis_vars14) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars15(Config) -> - case dialyze(Config, whereis_vars15) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars16(Config) -> - case dialyze(Config, whereis_vars16) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars17(Config) -> - case dialyze(Config, whereis_vars17) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars18(Config) -> - case dialyze(Config, whereis_vars18) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars19(Config) -> - case dialyze(Config, whereis_vars19) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars2(Config) -> - case dialyze(Config, whereis_vars2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars20(Config) -> - case dialyze(Config, whereis_vars20) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars21(Config) -> - case dialyze(Config, whereis_vars21) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars22(Config) -> - case dialyze(Config, whereis_vars22) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars3(Config) -> - case dialyze(Config, whereis_vars3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars4(Config) -> - case dialyze(Config, whereis_vars4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars5(Config) -> - case dialyze(Config, whereis_vars5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars6(Config) -> - case dialyze(Config, whereis_vars6) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars7(Config) -> - case dialyze(Config, whereis_vars7) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars8(Config) -> - case dialyze(Config, whereis_vars8) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -whereis_vars9(Config) -> - case dialyze(Config, whereis_vars9) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - diff --git a/lib/dialyzer/test/remake b/lib/dialyzer/test/remake deleted file mode 100755 index 654bdd9e88..0000000000 --- a/lib/dialyzer/test/remake +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -erlc +warn_exported_vars +warn_unused_import +warn_untyped_record +warn_missing_spec dialyzer_common.erl file_utils.erl -if [ -n "$1" ]; then - erl -noshell -run dialyzer_common create_suite "$1" -s erlang halt -else - erl -noshell -run dialyzer_common create_all_suites -s erlang halt -fi -rm dialyzer_common.beam file_utils.beam
\ No newline at end of file diff --git a/lib/dialyzer/test/small_tests_SUITE.erl b/lib/dialyzer/test/small_tests_SUITE.erl deleted file mode 100644 index dbcc044eea..0000000000 --- a/lib/dialyzer/test/small_tests_SUITE.erl +++ /dev/null @@ -1,489 +0,0 @@ -%% ATTENTION! -%% This is an automatically generated file. Do not edit. -%% Use './remake' script to refresh it if needed. -%% All Dialyzer options should be defined in dialyzer_options -%% file. - --module(small_tests_SUITE). - --include("ct.hrl"). --include("dialyzer_test_constants.hrl"). - --export([suite/0, init_per_suite/0, init_per_suite/1, - end_per_suite/1, all/0]). --export([small_tests_SUITE_consistency/1, app_call/1, appmon_place/1, - areq/1, atom_call/1, atom_guard/1, atom_widen/1, - bs_fail_constr/1, bs_utf8/1, cerl_hipeify/1, comm_layer/1, - compare1/1, confusing_warning/1, contract2/1, contract3/1, - contract5/1, disj_norm_form/1, eqeq/1, ets_select/1, - exhaust_case/1, failing_guard1/1, flatten/1, fun_app/1, - fun_ref_match/1, fun_ref_record/1, gencall/1, gs_make/1, - inf_loop2/1, invalid_specs/1, letrec1/1, list_match/1, lzip/1, - make_tuple/1, minus_minus/1, mod_info/1, my_filter/1, - my_sofs/1, no_match/1, no_unused_fun/1, no_unused_fun2/1, - non_existing/1, not_guard_crash/1, or_bug/1, orelsebug/1, - orelsebug2/1, overloaded1/1, port_info_test/1, - process_info_test/1, pubsub/1, receive1/1, record_construct/1, - record_pat/1, record_send_test/1, record_test/1, - recursive_types1/1, recursive_types2/1, recursive_types3/1, - recursive_types4/1, recursive_types5/1, recursive_types6/1, - recursive_types7/1, refine_bug1/1, toth/1, trec/1, try1/1, - tuple1/1, unsafe_beamcode_bug/1, unused_cases/1, - unused_clauses/1, zero_tuple/1]). - -suite() -> - [{timetrap, {minutes, 1}}]. - -init_per_suite() -> - [{timetrap, ?plt_timeout}]. -init_per_suite(Config) -> - OutDir = ?config(priv_dir, Config), - case dialyzer_common:check_plt(OutDir) of - fail -> {skip, "Plt creation/check failed."}; - ok -> [{dialyzer_options, []}|Config] - end. - -end_per_suite(_Config) -> - ok. - -all() -> - [small_tests_SUITE_consistency,app_call,appmon_place,areq,atom_call, - atom_guard,atom_widen,bs_fail_constr,bs_utf8,cerl_hipeify,comm_layer, - compare1,confusing_warning,contract2,contract3,contract5,disj_norm_form, - eqeq,ets_select,exhaust_case,failing_guard1,flatten,fun_app,fun_ref_match, - fun_ref_record,gencall,gs_make,inf_loop2,invalid_specs,letrec1,list_match, - lzip,make_tuple,minus_minus,mod_info,my_filter,my_sofs,no_match, - no_unused_fun,no_unused_fun2,non_existing,not_guard_crash,or_bug,orelsebug, - orelsebug2,overloaded1,port_info_test,process_info_test,pubsub,receive1, - record_construct,record_pat,record_send_test,record_test,recursive_types1, - recursive_types2,recursive_types3,recursive_types4,recursive_types5, - recursive_types6,recursive_types7,refine_bug1,toth,trec,try1,tuple1, - unsafe_beamcode_bug,unused_cases,unused_clauses,zero_tuple]. - -dialyze(Config, TestCase) -> - Opts = ?config(dialyzer_options, Config), - Dir = ?config(data_dir, Config), - OutDir = ?config(priv_dir, Config), - dialyzer_common:check(TestCase, Opts, Dir, OutDir). - -small_tests_SUITE_consistency(Config) -> - Dir = ?config(data_dir, Config), - case dialyzer_common:new_tests(Dir, all()) of - [] -> ok; - New -> ct:fail({missing_tests,New}) - end. - -app_call(Config) -> - case dialyze(Config, app_call) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -appmon_place(Config) -> - case dialyze(Config, appmon_place) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -areq(Config) -> - case dialyze(Config, areq) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -atom_call(Config) -> - case dialyze(Config, atom_call) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -atom_guard(Config) -> - case dialyze(Config, atom_guard) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -atom_widen(Config) -> - case dialyze(Config, atom_widen) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -bs_fail_constr(Config) -> - case dialyze(Config, bs_fail_constr) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -bs_utf8(Config) -> - case dialyze(Config, bs_utf8) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -cerl_hipeify(Config) -> - case dialyze(Config, cerl_hipeify) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -comm_layer(Config) -> - case dialyze(Config, comm_layer) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -compare1(Config) -> - case dialyze(Config, compare1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -confusing_warning(Config) -> - case dialyze(Config, confusing_warning) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -contract2(Config) -> - case dialyze(Config, contract2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -contract3(Config) -> - case dialyze(Config, contract3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -contract5(Config) -> - case dialyze(Config, contract5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -disj_norm_form(Config) -> - case dialyze(Config, disj_norm_form) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -eqeq(Config) -> - case dialyze(Config, eqeq) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -ets_select(Config) -> - case dialyze(Config, ets_select) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -exhaust_case(Config) -> - case dialyze(Config, exhaust_case) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -failing_guard1(Config) -> - case dialyze(Config, failing_guard1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -flatten(Config) -> - case dialyze(Config, flatten) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -fun_app(Config) -> - case dialyze(Config, fun_app) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -fun_ref_match(Config) -> - case dialyze(Config, fun_ref_match) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -fun_ref_record(Config) -> - case dialyze(Config, fun_ref_record) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -gencall(Config) -> - case dialyze(Config, gencall) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -gs_make(Config) -> - case dialyze(Config, gs_make) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -inf_loop2(Config) -> - case dialyze(Config, inf_loop2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -invalid_specs(Config) -> - case dialyze(Config, invalid_specs) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -letrec1(Config) -> - case dialyze(Config, letrec1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -list_match(Config) -> - case dialyze(Config, list_match) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -lzip(Config) -> - case dialyze(Config, lzip) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -make_tuple(Config) -> - case dialyze(Config, make_tuple) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -minus_minus(Config) -> - case dialyze(Config, minus_minus) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -mod_info(Config) -> - case dialyze(Config, mod_info) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -my_filter(Config) -> - case dialyze(Config, my_filter) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -my_sofs(Config) -> - case dialyze(Config, my_sofs) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -no_match(Config) -> - case dialyze(Config, no_match) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -no_unused_fun(Config) -> - case dialyze(Config, no_unused_fun) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -no_unused_fun2(Config) -> - case dialyze(Config, no_unused_fun2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -non_existing(Config) -> - case dialyze(Config, non_existing) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -not_guard_crash(Config) -> - case dialyze(Config, not_guard_crash) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -or_bug(Config) -> - case dialyze(Config, or_bug) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -orelsebug(Config) -> - case dialyze(Config, orelsebug) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -orelsebug2(Config) -> - case dialyze(Config, orelsebug2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -overloaded1(Config) -> - case dialyze(Config, overloaded1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -port_info_test(Config) -> - case dialyze(Config, port_info_test) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -process_info_test(Config) -> - case dialyze(Config, process_info_test) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -pubsub(Config) -> - case dialyze(Config, pubsub) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -receive1(Config) -> - case dialyze(Config, receive1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -record_construct(Config) -> - case dialyze(Config, record_construct) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -record_pat(Config) -> - case dialyze(Config, record_pat) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -record_send_test(Config) -> - case dialyze(Config, record_send_test) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -record_test(Config) -> - case dialyze(Config, record_test) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -recursive_types1(Config) -> - case dialyze(Config, recursive_types1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -recursive_types2(Config) -> - case dialyze(Config, recursive_types2) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -recursive_types3(Config) -> - case dialyze(Config, recursive_types3) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -recursive_types4(Config) -> - case dialyze(Config, recursive_types4) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -recursive_types5(Config) -> - case dialyze(Config, recursive_types5) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -recursive_types6(Config) -> - case dialyze(Config, recursive_types6) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -recursive_types7(Config) -> - case dialyze(Config, recursive_types7) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -refine_bug1(Config) -> - case dialyze(Config, refine_bug1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -toth(Config) -> - case dialyze(Config, toth) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -trec(Config) -> - case dialyze(Config, trec) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -try1(Config) -> - case dialyze(Config, try1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -tuple1(Config) -> - case dialyze(Config, tuple1) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -unsafe_beamcode_bug(Config) -> - case dialyze(Config, unsafe_beamcode_bug) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -unused_cases(Config) -> - case dialyze(Config, unused_cases) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -unused_clauses(Config) -> - case dialyze(Config, unused_clauses) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -zero_tuple(Config) -> - case dialyze(Config, zero_tuple) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - diff --git a/lib/dialyzer/test/user_tests_SUITE.erl b/lib/dialyzer/test/user_tests_SUITE.erl deleted file mode 100644 index 9654114725..0000000000 --- a/lib/dialyzer/test/user_tests_SUITE.erl +++ /dev/null @@ -1,78 +0,0 @@ -%% ATTENTION! -%% This is an automatically generated file. Do not edit. -%% Use './remake' script to refresh it if needed. -%% All Dialyzer options should be defined in dialyzer_options -%% file. - --module(user_tests_SUITE). - --include("ct.hrl"). --include("dialyzer_test_constants.hrl"). - --export([suite/0, init_per_suite/0, init_per_suite/1, - end_per_suite/1, all/0]). --export([user_tests_SUITE_consistency/1, broken_dialyzer/1, - gcpFlowControl/1, qlc_error/1, spvcOrig/1, wsp_pdu/1]). - -suite() -> - [{timetrap, {minutes, 3}}]. - -init_per_suite() -> - [{timetrap, ?plt_timeout}]. -init_per_suite(Config) -> - OutDir = ?config(priv_dir, Config), - case dialyzer_common:check_plt(OutDir) of - fail -> {skip, "Plt creation/check failed."}; - ok -> [{dialyzer_options, []}|Config] - end. - -end_per_suite(_Config) -> - ok. - -all() -> - [user_tests_SUITE_consistency,broken_dialyzer,gcpFlowControl,qlc_error, - spvcOrig,wsp_pdu]. - -dialyze(Config, TestCase) -> - Opts = ?config(dialyzer_options, Config), - Dir = ?config(data_dir, Config), - OutDir = ?config(priv_dir, Config), - dialyzer_common:check(TestCase, Opts, Dir, OutDir). - -user_tests_SUITE_consistency(Config) -> - Dir = ?config(data_dir, Config), - case dialyzer_common:new_tests(Dir, all()) of - [] -> ok; - New -> ct:fail({missing_tests,New}) - end. - -broken_dialyzer(Config) -> - case dialyze(Config, broken_dialyzer) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -gcpFlowControl(Config) -> - case dialyze(Config, gcpFlowControl) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -qlc_error(Config) -> - case dialyze(Config, qlc_error) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -spvcOrig(Config) -> - case dialyze(Config, spvcOrig) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - -wsp_pdu(Config) -> - case dialyze(Config, wsp_pdu) of - 'same' -> 'same'; - Error -> ct:fail(Error) - end. - |