summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorNathaniel Waisbrot <code@waisbrot.net>2016-08-04 14:36:46 -0400
committerNathaniel Waisbrot <code@waisbrot.net>2016-08-04 14:57:18 -0400
commitf9576c8598c4d44a3bd8adf36d62f5eb9b8c29a3 (patch)
tree2842d82d794b460f66a762c17755962c28d057f9 /test
parentfbfcdfcb8bd0a045cb4ed32b3ba75fffbb25f22f (diff)
Handle `escriptize` when the specified app is missing
When rebar.config contains a `escript_main_app` option, but the specified app doesn't exist in the build directory, print an error.
Diffstat (limited to 'test')
-rw-r--r--test/rebar_escriptize_SUITE.erl26
1 files changed, 25 insertions, 1 deletions
diff --git a/test/rebar_escriptize_SUITE.erl b/test/rebar_escriptize_SUITE.erl
index 1817d6b..139d5cd 100644
--- a/test/rebar_escriptize_SUITE.erl
+++ b/test/rebar_escriptize_SUITE.erl
@@ -5,6 +5,8 @@
end_per_suite/1,
init_per_testcase/2,
all/0,
+ escriptize_with_name/1,
+ escriptize_with_bad_name/1,
build_and_clean_app/1]).
-include_lib("common_test/include/ct.hrl").
@@ -24,7 +26,11 @@ init_per_testcase(_, Config) ->
rebar_test_utils:init_rebar_state(Config).
all() ->
- [build_and_clean_app].
+ [
+ build_and_clean_app,
+ escriptize_with_name,
+ escriptize_with_bad_name
+ ].
%% Test escriptize builds and runs the app's escript
build_and_clean_app(Config) ->
@@ -35,3 +41,21 @@ build_and_clean_app(Config) ->
rebar_test_utils:create_app(AppDir, Name, Vsn, [kernel, stdlib]),
rebar_test_utils:run_and_check(Config, [], ["escriptize"],
{ok, [{app, Name, valid}]}).
+
+escriptize_with_name(Config) ->
+ AppDir = ?config(apps, Config),
+
+ Name = rebar_test_utils:create_random_name("app1_"),
+ Vsn = rebar_test_utils:create_random_vsn(),
+ rebar_test_utils:create_app(AppDir, Name, Vsn, [kernel, stdlib]),
+ rebar_test_utils:run_and_check(Config, [{escript_main_app, Name}], ["escriptize"],
+ {ok, [{app, Name, valid}]}).
+
+escriptize_with_bad_name(Config) ->
+ AppDir = ?config(apps, Config),
+
+ Name = rebar_test_utils:create_random_name("app1_"),
+ Vsn = rebar_test_utils:create_random_vsn(),
+ rebar_test_utils:create_app(AppDir, Name, Vsn, [kernel, stdlib]),
+ rebar_test_utils:run_and_check(Config, [{escript_main_app, boogers}], ["escriptize"],
+ {error,{rebar_prv_escriptize, {bad_name, boogers}}}).