1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
-module(erlbal_tests).
-export([start/1]).
start(simple) ->
Bal = erlbal:start_bal(),
erlbal:start_server(Bal, node(), fun(_, _) -> {7, []} end, []),
erlbal:start_server(Bal, node(), fun(_, _) -> {8, []} end, []),
7 = erlbal:make_request(Bal, []),
8 = erlbal:make_request(Bal, []),
lists:foreach(fun(X) -> erlbal:stop_server(Bal, X) end, erlbal:list_servers(Bal)),
erlbal:stop_bal(Bal),
ok;
start(args) ->
Bal = erlbal:start_bal(),
erlbal:start_server(Bal, node(), fun([X], _) -> {X+1, []} end, []),
erlbal:start_server(Bal, node(), fun([X], _) -> {X+2, []} end, []),
7 = erlbal:make_request(Bal, [6]),
8 = erlbal:make_request(Bal, [6]),
lists:foreach(fun(X) -> erlbal:stop_server(Bal, X) end, erlbal:list_servers(Bal)),
erlbal:stop_bal(Bal),
ok;
start(state) ->
Bal = erlbal:start_bal(),
erlbal:start_server(Bal, node(), fun([X], [S]) -> Y = X + S, {Y, [S]} end, [1]),
erlbal:start_server(Bal, node(), fun([X], [S]) -> Y = X + S, {Y, [S]} end, [10]),
7 = erlbal:make_request(Bal, [6]),
16 = erlbal:make_request(Bal, [6]),
lists:foreach(fun(X) -> erlbal:stop_server(Bal, X) end, erlbal:list_servers(Bal)),
erlbal:stop_bal(Bal),
ok;
start(complex_state) ->
Bal = erlbal:start_bal(),
erlbal:start_server(Bal, node(), fun([X], [S]) -> Y = X + S, {Y, [S+1]} end, [1]),
erlbal:start_server(Bal, node(), fun([X], [S]) -> Y = X + S, {Y, [S+1]} end, [10]),
7 = erlbal:make_request(Bal, [6]),
16 = erlbal:make_request(Bal, [6]),
8 = erlbal:make_request(Bal, [6]),
17 = erlbal:make_request(Bal, [6]),
lists:foreach(fun(X) -> erlbal:stop_server(Bal, X) end, erlbal:list_servers(Bal)),
erlbal:stop_bal(Bal),
ok.
|