From 059ca05caa95d91411c071c8542cef400a066e17 Mon Sep 17 00:00:00 2001 From: Stavros Aronis Date: Fri, 18 Feb 2011 20:02:00 +0200 Subject: Major restructure of dialyzer's testsuite Generation of the PLT is now performed without using OS commands. We still try to copy in the default plt to make small scale testing efficient. If generation/checking fails, suites are skipped except plt_tests_SUITE which contains a bare PLT check that fails normally. --- lib/dialyzer/test/race_tests_SUITE.erl | 1292 ++++++++++++++++++-------------- 1 file changed, 750 insertions(+), 542 deletions(-) (limited to 'lib/dialyzer/test/race_tests_SUITE.erl') diff --git a/lib/dialyzer/test/race_tests_SUITE.erl b/lib/dialyzer/test/race_tests_SUITE.erl index 0f7c4c3c70..cfc898d464 100644 --- a/lib/dialyzer/test/race_tests_SUITE.erl +++ b/lib/dialyzer/test/race_tests_SUITE.erl @@ -1,23 +1,29 @@ +%% 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_lib("test_server/include/test_server.hrl"). - --export([all/0, groups/0, init_per_group/2, end_per_group/2, - init_per_testcase/2, fin_per_testcase/2]). - --export([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, +-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, @@ -60,532 +66,734 @@ whereis_vars4/1, whereis_vars5/1, whereis_vars6/1, whereis_vars7/1, whereis_vars8/1, whereis_vars9/1]). --define(default_timeout, ?t:minutes(1)). --define(dialyzer_options, ?config(dialyzer_options, Config)). --define(datadir, ?config(data_dir, Config)). --define(privdir, ?config(priv_dir, Config)). - -groups() -> []. - -init_per_group(_GroupName, Config) -> Config. +suite() -> + [{timetrap, {minutes, 1}}]. -end_per_group(_GroupName, Config) -> Config. +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. -init_per_testcase(_Case, Config) -> - ?line Dog = ?t:timetrap(?default_timeout), - [{dialyzer_options, [{warnings,[race_conditions]}]}, {watchdog, Dog} | Config]. - -fin_per_testcase(_Case, _Config) -> - Dog = ?config(watchdog, _Config), - ?t:timetrap_cancel(Dog), - ok. +end_per_suite(_Config) -> + ok. all() -> - [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]. - -ets_insert_args1(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_args1, file}), - ok. - -ets_insert_args2(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_args2, file}), - ok. - -ets_insert_args3(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_args3, file}), - ok. - -ets_insert_args4(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_args4, file}), - ok. - -ets_insert_args5(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_args5, file}), - ok. - -ets_insert_args6(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_args6, file}), - ok. - -ets_insert_args7(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_args7, file}), - ok. - -ets_insert_args8(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_args8, file}), - ok. - -ets_insert_control_flow1(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_control_flow1, file}), - ok. - -ets_insert_control_flow2(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_control_flow2, file}), - ok. - -ets_insert_control_flow3(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_control_flow3, file}), - ok. - -ets_insert_control_flow4(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_control_flow4, file}), - ok. - -ets_insert_control_flow5(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_control_flow5, file}), - ok. - -ets_insert_diff_atoms_race1(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_diff_atoms_race1, file}), - ok. - -ets_insert_diff_atoms_race2(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_diff_atoms_race2, file}), - ok. - -ets_insert_diff_atoms_race3(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_diff_atoms_race3, file}), - ok. - -ets_insert_diff_atoms_race4(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_diff_atoms_race4, file}), - ok. - -ets_insert_diff_atoms_race5(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_diff_atoms_race5, file}), - ok. - -ets_insert_diff_atoms_race6(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_diff_atoms_race6, file}), - ok. - -ets_insert_double1(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_double1, file}), - ok. - -ets_insert_double2(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_double2, file}), - ok. - -ets_insert_funs1(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_funs1, file}), - ok. - -ets_insert_funs2(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_funs2, file}), - ok. - -ets_insert_new(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_new, file}), - ok. - -ets_insert_param(Config) when is_list(Config) -> - ?line run(Config, {ets_insert_param, file}), - ok. - -extract_translations(Config) when is_list(Config) -> - ?line run(Config, {extract_translations, file}), - ok. - -mnesia_diff_atoms_race1(Config) when is_list(Config) -> - ?line run(Config, {mnesia_diff_atoms_race1, file}), - ok. - -mnesia_diff_atoms_race2(Config) when is_list(Config) -> - ?line run(Config, {mnesia_diff_atoms_race2, file}), - ok. - -mnesia_dirty_read_one_write_two(Config) when is_list(Config) -> - ?line run(Config, {mnesia_dirty_read_one_write_two, file}), - ok. - -mnesia_dirty_read_two_write_one(Config) when is_list(Config) -> - ?line run(Config, {mnesia_dirty_read_two_write_one, file}), - ok. - -mnesia_dirty_read_write_double1(Config) when is_list(Config) -> - ?line run(Config, {mnesia_dirty_read_write_double1, file}), - ok. - -mnesia_dirty_read_write_double2(Config) when is_list(Config) -> - ?line run(Config, {mnesia_dirty_read_write_double2, file}), - ok. - -mnesia_dirty_read_write_double3(Config) when is_list(Config) -> - ?line run(Config, {mnesia_dirty_read_write_double3, file}), - ok. - -mnesia_dirty_read_write_double4(Config) when is_list(Config) -> - ?line run(Config, {mnesia_dirty_read_write_double4, file}), - ok. - -mnesia_dirty_read_write_one(Config) when is_list(Config) -> - ?line run(Config, {mnesia_dirty_read_write_one, file}), - ok. - -mnesia_dirty_read_write_two(Config) when is_list(Config) -> - ?line run(Config, {mnesia_dirty_read_write_two, file}), - ok. - -whereis_control_flow1(Config) when is_list(Config) -> - ?line run(Config, {whereis_control_flow1, file}), - ok. - -whereis_control_flow2(Config) when is_list(Config) -> - ?line run(Config, {whereis_control_flow2, file}), - ok. - -whereis_control_flow3(Config) when is_list(Config) -> - ?line run(Config, {whereis_control_flow3, file}), - ok. - -whereis_control_flow4(Config) when is_list(Config) -> - ?line run(Config, {whereis_control_flow4, file}), - ok. - -whereis_control_flow5(Config) when is_list(Config) -> - ?line run(Config, {whereis_control_flow5, file}), - ok. - -whereis_control_flow6(Config) when is_list(Config) -> - ?line run(Config, {whereis_control_flow6, file}), - ok. - -whereis_diff_atoms_no_race(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_atoms_no_race, file}), - ok. - -whereis_diff_atoms_race(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_atoms_race, file}), - ok. - -whereis_diff_functions1(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions1, file}), - ok. - -whereis_diff_functions1_nested(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions1_nested, file}), - ok. - -whereis_diff_functions1_pathsens(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions1_pathsens, file}), - ok. - -whereis_diff_functions1_twice(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions1_twice, file}), - ok. - -whereis_diff_functions2(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions2, file}), - ok. - -whereis_diff_functions2_nested(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions2_nested, file}), - ok. - -whereis_diff_functions2_pathsens(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions2_pathsens, file}), - ok. - -whereis_diff_functions2_twice(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions2_twice, file}), - ok. - -whereis_diff_functions3(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions3, file}), - ok. - -whereis_diff_functions3_nested(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions3_nested, file}), - ok. - -whereis_diff_functions3_pathsens(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions3_pathsens, file}), - ok. - -whereis_diff_functions4(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions4, file}), - ok. - -whereis_diff_functions5(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions5, file}), - ok. - -whereis_diff_functions6(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_functions6, file}), - ok. - -whereis_diff_modules1(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_modules1, dir}), - ok. - -whereis_diff_modules1_pathsens(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_modules1_pathsens, dir}), - ok. - -whereis_diff_modules1_rec(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_modules1_rec, dir}), - ok. - -whereis_diff_modules2(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_modules2, dir}), - ok. - -whereis_diff_modules2_pathsens(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_modules2_pathsens, dir}), - ok. - -whereis_diff_modules2_rec(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_modules2_rec, dir}), - ok. - -whereis_diff_modules3(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_modules3, dir}), - ok. - -whereis_diff_modules_nested(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_modules_nested, dir}), - ok. - -whereis_diff_modules_twice(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_modules_twice, dir}), - ok. - -whereis_diff_vars_no_race(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_vars_no_race, file}), - ok. - -whereis_diff_vars_race(Config) when is_list(Config) -> - ?line run(Config, {whereis_diff_vars_race, file}), - ok. - -whereis_intra_inter_module1(Config) when is_list(Config) -> - ?line run(Config, {whereis_intra_inter_module1, dir}), - ok. - -whereis_intra_inter_module2(Config) when is_list(Config) -> - ?line run(Config, {whereis_intra_inter_module2, dir}), - ok. - -whereis_intra_inter_module3(Config) when is_list(Config) -> - ?line run(Config, {whereis_intra_inter_module3, dir}), - ok. - -whereis_intra_inter_module4(Config) when is_list(Config) -> - ?line run(Config, {whereis_intra_inter_module4, dir}), - ok. - -whereis_intra_inter_module5(Config) when is_list(Config) -> - ?line run(Config, {whereis_intra_inter_module5, dir}), - ok. - -whereis_intra_inter_module6(Config) when is_list(Config) -> - ?line run(Config, {whereis_intra_inter_module6, dir}), - ok. - -whereis_intra_inter_module7(Config) when is_list(Config) -> - ?line run(Config, {whereis_intra_inter_module7, dir}), - ok. - -whereis_intra_inter_module8(Config) when is_list(Config) -> - ?line run(Config, {whereis_intra_inter_module8, dir}), - ok. - -whereis_param(Config) when is_list(Config) -> - ?line run(Config, {whereis_param, file}), - ok. - -whereis_param_inter_module(Config) when is_list(Config) -> - ?line run(Config, {whereis_param_inter_module, dir}), - ok. - -whereis_rec_function1(Config) when is_list(Config) -> - ?line run(Config, {whereis_rec_function1, file}), - ok. - -whereis_rec_function2(Config) when is_list(Config) -> - ?line run(Config, {whereis_rec_function2, file}), - ok. - -whereis_rec_function3(Config) when is_list(Config) -> - ?line run(Config, {whereis_rec_function3, file}), - ok. - -whereis_rec_function4(Config) when is_list(Config) -> - ?line run(Config, {whereis_rec_function4, file}), - ok. - -whereis_rec_function5(Config) when is_list(Config) -> - ?line run(Config, {whereis_rec_function5, file}), - ok. - -whereis_rec_function6(Config) when is_list(Config) -> - ?line run(Config, {whereis_rec_function6, file}), - ok. - -whereis_rec_function7(Config) when is_list(Config) -> - ?line run(Config, {whereis_rec_function7, file}), - ok. - -whereis_rec_function8(Config) when is_list(Config) -> - ?line run(Config, {whereis_rec_function8, file}), - ok. + [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. -whereis_try_catch(Config) when is_list(Config) -> - ?line run(Config, {whereis_try_catch, file}), - ok. - -whereis_vars1(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars1, file}), - ok. - -whereis_vars10(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars10, file}), - ok. - -whereis_vars11(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars11, file}), - ok. - -whereis_vars12(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars12, file}), - ok. - -whereis_vars13(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars13, file}), - ok. - -whereis_vars14(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars14, file}), - ok. - -whereis_vars15(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars15, file}), - ok. - -whereis_vars16(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars16, file}), - ok. - -whereis_vars17(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars17, file}), - ok. - -whereis_vars18(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars18, file}), - ok. - -whereis_vars19(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars19, file}), - ok. - -whereis_vars2(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars2, file}), - ok. - -whereis_vars20(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars20, file}), - ok. - -whereis_vars21(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars21, file}), - ok. - -whereis_vars22(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars22, file}), - ok. - -whereis_vars3(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars3, file}), - ok. - -whereis_vars4(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars4, file}), - ok. - -whereis_vars5(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars5, file}), - ok. - -whereis_vars6(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars6, file}), - ok. - -whereis_vars7(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars7, file}), - ok. - -whereis_vars8(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars8, file}), - ok. - -whereis_vars9(Config) when is_list(Config) -> - ?line run(Config, {whereis_vars9, file}), - ok. - -run(Config, TestCase) -> - case run_test(Config, TestCase) of - ok -> ok; - {fail, Reason} -> - ?t:format("~s",[Reason]), - fail() - end. - -run_test(Config, {TestCase, Kind}) -> - Dog = ?config(watchdog, Config), - Options = ?dialyzer_options, - Dir = ?datadir, - OutDir = ?privdir, - case dialyzer_test:dialyzer_test(Options, TestCase, Kind, - Dir, OutDir, Dog) of - same -> ok; - {differ, DiffList} -> - {fail, - io_lib:format("\nTest ~p failed:\n~p\n", - [TestCase, DiffList])} - end. - -fail() -> - io:format("failed\n"), - ?t:fail(). -- cgit v1.2.3