aboutsummaryrefslogtreecommitdiff
path: root/learn-you-some-erlang/reminder/src/tests/sup_tests.erl
diff options
context:
space:
mode:
Diffstat (limited to 'learn-you-some-erlang/reminder/src/tests/sup_tests.erl')
-rw-r--r--learn-you-some-erlang/reminder/src/tests/sup_tests.erl25
1 files changed, 25 insertions, 0 deletions
diff --git a/learn-you-some-erlang/reminder/src/tests/sup_tests.erl b/learn-you-some-erlang/reminder/src/tests/sup_tests.erl
new file mode 100644
index 0000000..28d7fa9
--- /dev/null
+++ b/learn-you-some-erlang/reminder/src/tests/sup_tests.erl
@@ -0,0 +1,25 @@
+-module(sup_tests).
+-include_lib("eunit/include/eunit.hrl").
+
+restart_test_() ->
+ {"Test that everything restarts until a kill",
+ {setup,
+ fun() -> sup:start(evserv, []) end,
+ fun(_) -> ok end,
+ fun restart/1}}.
+
+restart(_SupPid) ->
+ timer:sleep(100),
+ A = is_pid(whereis(evserv)),
+ catch exit(whereis(evserv), die),
+ timer:sleep(100),
+ B = is_pid(whereis(evserv)),
+ catch exit(whereis(evserv), die),
+ timer:sleep(100),
+ C = is_pid(whereis(evserv)),
+ catch exit(whereis(evserv), shutdown),
+ timer:sleep(500),
+ D = is_pid(whereis(evserv)),
+ ?_assertEqual([true,true,true,false],
+ [A,B,C,D]).
+