4
%% Copyright Ericsson AB 1998-2009. All Rights Reserved.
4
%% Copyright Ericsson AB 1998-2011. All Rights Reserved.
6
6
%% The contents of this file are subject to the Erlang Public License,
7
7
%% Version 1.1, (the "License"); you may not use this file except in
8
8
%% compliance with the License. You should have received a copy of the
9
9
%% Erlang Public License along with this software. If not, it can be
10
10
%% retrieved online at http://www.erlang.org/.
12
12
%% Software distributed under the License is distributed on an "AS IS"
13
13
%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
14
14
%% the License for the specific language governing rights and limitations
15
15
%% under the License.
19
19
-module(seq_trace_SUITE).
21
-export([all/1,init_per_testcase/2,fin_per_testcase/2]).
21
-export([all/0, suite/0,groups/0,init_per_suite/1, end_per_suite/1,
22
init_per_group/2,end_per_group/2,
23
init_per_testcase/2,end_per_testcase/2]).
22
24
-export([token_set_get/1, tracer_set_get/1, print/1,
23
25
send/1, distributed_send/1, recv/1, distributed_recv/1,
24
26
trace_exit/1, distributed_exit/1, call/1, port/1,
29
31
start_tracer/0, stop_tracer/1,
30
32
do_match_set_seq_token/1, do_gc_seq_token/1, countdown_start/2]).
32
%-define(line_trace, 1).
33
-include("test_server.hrl").
34
%-define(line_trace, 1).
35
-include_lib("test_server/include/test_server.hrl").
35
37
-define(default_timeout, ?t:minutes(1)).
37
all(suite) -> [token_set_get, tracer_set_get, print,
38
send, distributed_send, recv, distributed_recv,
39
trace_exit, distributed_exit, call, port,
40
match_set_seq_token, gc_seq_token].
39
suite() -> [{ct_hooks,[ts_install_cth]}].
42
[token_set_get, tracer_set_get, print, send,
43
distributed_send, recv, distributed_recv, trace_exit,
44
distributed_exit, call, port, match_set_seq_token,
50
init_per_suite(Config) ->
53
end_per_suite(_Config) ->
56
init_per_group(_GroupName, Config) ->
59
end_per_group(_GroupName, Config) ->
42
63
init_per_testcase(_Case, Config) ->
43
64
?line Dog = test_server:timetrap(?default_timeout),
44
65
[{watchdog, Dog}|Config].
46
fin_per_testcase(_Case, Config) ->
67
end_per_testcase(_Case, Config) ->
47
68
Dog=?config(watchdog, Config),
48
69
test_server:timetrap_cancel(Dog),
382
403
get_port_message(Port) ->
384
{Port,{data,Bin}} when binary(Bin) ->
405
{Port,{data,Bin}} when is_binary(Bin) ->
385
406
binary_to_term(Bin);
387
408
?t:fail({unexpected,Other})
678
699
receive {started, Ref} -> ok end,
681
({stop, N}) when integer(N), N >= 0 ->
702
({stop, N}) when is_integer(N), N >= 0 ->
682
703
Mref = erlang:monitor(process, Pid),
684
705
{'DOWN', Mref, _, _, _} ->
717
738
From ! {tracerlog,lists:reverse(Data)}
720
stop_tracer(N) when integer(N) ->
741
stop_tracer(N) when is_integer(N) ->
721
742
case catch (seq_trace_SUITE_tracer ! {stop,N,self()}) of
723
744
{error, not_started};