diff options
-rw-r--r-- | src/rebar_prv_dialyzer.erl | 11 | ||||
-rw-r--r-- | test/rebar_dialyzer_SUITE.erl | 16 |
2 files changed, 22 insertions, 5 deletions
diff --git a/src/rebar_prv_dialyzer.erl b/src/rebar_prv_dialyzer.erl index f7e3f21..ec9e81a 100644 --- a/src/rebar_prv_dialyzer.erl +++ b/src/rebar_prv_dialyzer.erl @@ -380,12 +380,15 @@ succ_typings(State, Plt, Output) -> {0, State}; _ -> Apps = rebar_state:project_apps(State), - succ_typings(State, Plt, Output, Apps) + ?INFO("Doing success typing analysis...", []), + Files = apps_to_files(Apps), + succ_typings(State, Plt, Output, Files) end. -succ_typings(State, Plt, Output, Apps) -> - ?INFO("Doing success typing analysis...", []), - Files = apps_to_files(Apps), +succ_typings(State, Plt, _, []) -> + ?INFO("Analyzing no files with ~p...", [Plt]), + {0, State}; +succ_typings(State, Plt, Output, Files) -> ?INFO("Analyzing ~b files with ~p...", [length(Files), Plt]), Opts = [{analysis_type, succ_typings}, {get_warnings, true}, diff --git a/test/rebar_dialyzer_SUITE.erl b/test/rebar_dialyzer_SUITE.erl index ededf6a..e5d8c52 100644 --- a/test/rebar_dialyzer_SUITE.erl +++ b/test/rebar_dialyzer_SUITE.erl @@ -10,6 +10,7 @@ groups/0, empty_base_plt/1, empty_app_plt/1, + empty_app_succ_typings/1, update_base_plt/1, update_app_plt/1, build_release_plt/1, @@ -55,7 +56,7 @@ all() -> [{group, empty}, {group, build_and_check}, {group, update}]. groups() -> - [{empty, [empty_base_plt, empty_app_plt]}, + [{empty, [empty_base_plt, empty_app_plt, empty_app_succ_typings]}, {build_and_check, [build_release_plt, plt_apps_option]}, {update, [update_base_plt, update_app_plt]}]. @@ -102,6 +103,19 @@ empty_app_plt(Config) -> ok. +empty_app_succ_typings(Config) -> + AppDir = ?config(apps, Config), + RebarConfig = ?config(rebar_config, Config), + + Name = rebar_test_utils:create_random_name("app1_"), + Vsn = rebar_test_utils:create_random_vsn(), + rebar_test_utils:create_empty_app(AppDir, Name, Vsn, []), + + rebar_test_utils:run_and_check(Config, RebarConfig, ["dialyzer"], + {ok, [{app, Name}]}), + + ok. + update_base_plt(Config) -> AppDir = ?config(apps, Config), RebarConfig = ?config(rebar_config, Config), |