diff options
Diffstat (limited to 'lib/stdlib/test/escript_SUITE_data/archive_script/archive_script_main2.erl')
-rw-r--r-- | lib/stdlib/test/escript_SUITE_data/archive_script/archive_script_main2.erl | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/lib/stdlib/test/escript_SUITE_data/archive_script/archive_script_main2.erl b/lib/stdlib/test/escript_SUITE_data/archive_script/archive_script_main2.erl new file mode 100644 index 0000000000..de56579998 --- /dev/null +++ b/lib/stdlib/test/escript_SUITE_data/archive_script/archive_script_main2.erl @@ -0,0 +1,60 @@ +%% +%% %CopyrightBegin% +%% +%% Copyright Ericsson AB 2008-2009. All Rights Reserved. +%% +%% The contents of this file are subject to the Erlang Public License, +%% Version 1.1, (the "License"); you may not use this file except in +%% compliance with the License. You should have received a copy of the +%% Erlang Public License along with this software. If not, it can be +%% retrieved online at http://www.erlang.org/. +%% +%% Software distributed under the License is distributed on an "AS IS" +%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See +%% the License for the specific language governing rights and limitations +%% under the License. +%% +%% %CopyrightEnd% +%% +-module(archive_script_main2). +-behaviour(escript). + +-export([main/1]). + +-define(DUMMY, archive_script_dummy). +-define(DICT, archive_script_dict). + +main(MainArgs) -> + %% Some printouts + io:format("main2:~p\n",[MainArgs]), + ErlArgs = init:get_arguments(), + io:format("dict:~p\n",[[E || E <- ErlArgs, element(1, E) =:= ?DICT]]), + io:format("dummy:~p\n",[[E || E <- ErlArgs, element(1, E) =:= ?DUMMY]]), + + %% Start the applications + {error, {not_started, ?DICT}} = application:start(archive_script_dummy), + ok = application:start(?DICT), + ok = application:start(?DUMMY), + + %% Access dict priv dir + PrivDir = code:priv_dir(?DICT), + PrivFile = filename:join([PrivDir, "archive_script_dict.txt"]), + case erl_prim_loader:get_file(PrivFile) of + {ok, Bin, _FullPath} -> + io:format("priv:~p\n", [{ok, Bin}]); + error -> + io:format("priv:~p\n", [{error, PrivFile}]) + end, + + %% Use the dict app + Tab = archive_script_main_tab, + Key = foo, + Val = bar, + {ok, _Pid} = ?DICT:new(Tab), + error = ?DICT:find(Tab, Key), + ok = ?DICT:store(Tab, Key, Val), + {ok, Val} = ?DICT:find(Tab, Key), + ok = ?DICT:erase(Tab, Key), + error = ?DICT:find(Tab, Key), + ok = ?DICT:erase(Tab), + ok. |