X-Git-Url: http://git.euphorik.ch/?p=euphorik.git;a=blobdiff_plain;f=modules%2Ferl%2Feuphorik_test.erl;h=f07941c2d8a1b64ace76111878de245fe69b6a49;hp=88b9f68c6e574d257fd1b1a41138e61ce9ed923e;hb=a47964940e7918e81acb7f87fd2f1d5d2ff89778;hpb=e0c2c2fa82cf13cd55b8d5006ad2c7e0689dc6cb diff --git a/modules/erl/euphorik_test.erl b/modules/erl/euphorik_test.erl index 88b9f68..f07941c 100644 --- a/modules/erl/euphorik_test.erl +++ b/modules/erl/euphorik_test.erl @@ -147,7 +147,9 @@ messages_id_rand() -> % tire N element distinct parmis la liste L proposée tire_element_rand(N, L) when N =< length(L) -> - tire_element_rand(N, L, []). + tire_element_rand(N, L, []); +tire_element_rand(_, _) -> + []. tire_element_rand(0, _, Elements) -> Elements; tire_element_rand(N, L, Elements) -> E = lists:nth(random:uniform(length(L)), L), @@ -161,11 +163,17 @@ tire_element_rand(N, L, Elements) -> loop(User_id, 0) -> io:format("~p a fini~n", [User_id]); loop(User_id, M) -> - % attend un temp aléatoire compris entre 1 sec et 5 sec - timer:sleep(1000 * random:uniform(5)), + % attend un temp aléatoire compris entre 2 sec et 10 sec + timer:sleep(2000 * random:uniform(10)), % poste un message aléatoire par une personne aléatoire répondant à des messages aléatoires {Message, Repond_a} = {message_rand(), messages_id_rand()}, io:format("~p poste ~p et repond a ~w~n", [User_id, Message, Repond_a]), - euphorik_bd:nouveau_message(Message, User_id, Repond_a), - loop(User_id, M - 1). + case euphorik_bd:nouveau_message(Message, User_id, Repond_a) of + {erreur, E} -> + io:format("~p : erreur : ~p~n", [User_id, E]), + loop(User_id, M); + _ -> + loop(User_id, M - 1) + end. + \ No newline at end of file