diff options
Diffstat (limited to 'test/upgrade_project/apps')
5 files changed, 97 insertions, 0 deletions
diff --git a/test/upgrade_project/apps/dummy/ebin/dummy.appup b/test/upgrade_project/apps/dummy/ebin/dummy.appup new file mode 100644 index 0000000..e77f66f --- /dev/null +++ b/test/upgrade_project/apps/dummy/ebin/dummy.appup @@ -0,0 +1,8 @@ +{"0.2", + [{"0.1",[ + {update, dummy_server, {advanced, [foo]}} + ]}], + [{"0.1",[ + {update, dummy_server, {advanced, [foo]}} + ]}] +}. diff --git a/test/upgrade_project/apps/dummy/src/dummy.app.src b/test/upgrade_project/apps/dummy/src/dummy.app.src new file mode 100644 index 0000000..dd06752 --- /dev/null +++ b/test/upgrade_project/apps/dummy/src/dummy.app.src @@ -0,0 +1,9 @@ +{application, dummy, [ + {description, "a dummy app"}, + {vsn, "0.1"}, + {registered, [ + dummy_app + ]}, + {mod, {dummy_app, []}}, + {applications, [kernel, stdlib, sasl]} +]}. diff --git a/test/upgrade_project/apps/dummy/src/dummy_app.erl b/test/upgrade_project/apps/dummy/src/dummy_app.erl new file mode 100644 index 0000000..51363b3 --- /dev/null +++ b/test/upgrade_project/apps/dummy/src/dummy_app.erl @@ -0,0 +1,9 @@ +-module(dummy_app). +-behaviour(application). + +-export([start/2, stop/1]). + +start(_,_) -> + dummy_sup:start_link(). + +stop(_) -> ok. diff --git a/test/upgrade_project/apps/dummy/src/dummy_server.erl b/test/upgrade_project/apps/dummy/src/dummy_server.erl new file mode 100644 index 0000000..382251e --- /dev/null +++ b/test/upgrade_project/apps/dummy/src/dummy_server.erl @@ -0,0 +1,56 @@ +-module(dummy_server). +-behaviour(gen_server). + +-export([start_link/0, set_state/1, get_state/0]). + +-export([init/1, + handle_call/3, + handle_cast/2, + handle_info/2, + terminate/2, + code_change/3]). + +%% + +start_link() -> + gen_server:start_link({local, ?MODULE}, ?MODULE, [], []). + +set_state(What) -> + gen_server:call(?MODULE, {set_state, What}). + +get_state() -> + gen_server:call(?MODULE, get_state). + + +%% + +init([]) -> + say("init, setting state to 0", []), + {ok, 0}. + + +handle_call({set_state, NewState}, _From, _State) -> + {reply, {ok, NewState}, NewState}; + +handle_call(get_state, _From, State) -> + {reply, State, State}. + +handle_cast('__not_implemented', State) -> + {noreply, State}. + +handle_info(_Info, State) -> + say("info ~p, ~p.", [_Info, State]), + {noreply, State}. + +terminate(_Reason, _State) -> + say("terminate ~p, ~p", [_Reason, _State]), + ok. + +code_change(_OldVsn, State, _Extra) -> + say("code_change ~p, ~p, ~p", [_OldVsn, State, _Extra]), + {ok, State}. + +%% Internal + +say(Format, Data) -> + io:format("~p:~p: ~s~n", [?MODULE, self(), io_lib:format(Format, Data)]). diff --git a/test/upgrade_project/apps/dummy/src/dummy_sup.erl b/test/upgrade_project/apps/dummy/src/dummy_sup.erl new file mode 100644 index 0000000..b5617c7 --- /dev/null +++ b/test/upgrade_project/apps/dummy/src/dummy_sup.erl @@ -0,0 +1,15 @@ +-module(dummy_sup). +-behaviour(supervisor). + +-export([start_link/0]). +-export([init/1]). + +start_link() -> + supervisor:start_link({local, ?MODULE}, ?MODULE, []). + +init([]) -> + Dummy = {dummy_server, + {dummy_server, start_link, []}, + permanent, 5000, worker, [dummy_server]}, + + {ok, {{one_for_one, 10, 10}, [Dummy]}}. |