File not found error

This commit is contained in:
Hans Svensson 2019-09-05 11:16:31 +02:00
parent ecfa04ba17
commit 37a37a169d
3 changed files with 11 additions and 3 deletions

View File

@ -75,8 +75,9 @@ file(File, Options0) ->
case read_contract(File) of
{ok, Bin} -> from_string(Bin, [{src_file, File} | Options]);
{error, Error} ->
ErrorString = [File,": ",file:format_error(Error)],
{error, join_errors("File errors", [ErrorString], fun(E) -> E end)}
Msg = lists:flatten([File,": ",file:format_error(Error)]),
Pos = aeso_errors:pos(File, 0, 0),
{error, [aeso_errors:new(file_error, Pos, Msg)]}
end.
add_include_path(File, Options) ->

View File

@ -15,7 +15,7 @@
}).
-type pos() :: #pos{}.
-type error_type() :: type_error | parse_error | code_error | internal_error.
-type error_type() :: type_error | parse_error | code_error | file_error | internal_error.
-record(err, { pos = #pos{} :: pos()
, type :: error_type()

View File

@ -32,6 +32,13 @@ simple_compile_test_() ->
end
end} || ContractName <- compilable_contracts(), Backend <- [aevm, fate],
not lists:member(ContractName, not_yet_compilable(Backend))] ++
[ {"Test file not found error",
fun() ->
{error, Errors} = aeso_compiler:file("does_not_exist.aes"),
ExpErr = <<"In 'does_not_exist.aes' at line 0, col 0:\n"
"does_not_exist.aes: no such file or directory">>,
check_errors([ExpErr], Errors)
end} ] ++
[ {"Testing error messages of " ++ ContractName,
fun() ->
Errors = compile(aevm, ContractName),