~ubuntu-branches/ubuntu/trusty/erlang/trusty

« back to all changes in this revision

Viewing changes to lib/common_test/test/ct_skip_SUITE.erl

  • Committer: Bazaar Package Importer
  • Author(s): Clint Byrum
  • Date: 2011-05-05 15:48:43 UTC
  • mfrom: (3.5.13 sid)
  • Revision ID: james.westby@ubuntu.com-20110505154843-0om6ekzg6m7ugj27
Tags: 1:14.b.2-dfsg-3ubuntu1
* Merge from debian unstable.  Remaining changes:
  - Drop libwxgtk2.8-dev build dependency. Wx isn't in main, and not
    supposed to.
  - Drop erlang-wx binary.
  - Drop erlang-wx dependency from -megaco, -common-test, and -reltool, they
    do not really need wx. Also drop it from -debugger; the GUI needs wx,
    but it apparently has CLI bits as well, and is also needed by -megaco,
    so let's keep the package for now.
  - debian/patches/series: Do what I meant, and enable build-options.patch
    instead.
* Additional changes:
  - Drop erlang-wx from -et
* Dropped Changes:
  - patches/pcre-crash.patch: CVE-2008-2371: outer level option with
    alternatives caused crash. (Applied Upstream)
  - fix for ssl certificate verification in newSSL: 
    ssl_cacertfile_fix.patch (Applied Upstream)
  - debian/patches/series: Enable native.patch again, to get stripped beam
    files and reduce the package size again. (build-options is what
    actually accomplished this)
  - Remove build-options.patch on advice from upstream and because it caused
    odd build failures.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
%%
 
2
%% %CopyrightBegin%
 
3
%%
 
4
%% Copyright Ericsson AB 2009-2011. All Rights Reserved.
 
5
%%
 
6
%% The contents of this file are subject to the Erlang Public License,
 
7
%% Version 1.1, (the "License"); you may not use this file except in
 
8
%% compliance with the License. You should have received a copy of the
 
9
%% Erlang Public License along with this software. If not, it can be
 
10
%% retrieved online at http://www.erlang.org/.
 
11
%%
 
12
%% Software distributed under the License is distributed on an "AS IS"
 
13
%% basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
 
14
%% the License for the specific language governing rights and limitations
 
15
%% under the License.
 
16
%%
 
17
%% %CopyrightEnd%
 
18
%%
 
19
 
 
20
%%%-------------------------------------------------------------------
 
21
%%% File: ct_skip_SUITE
 
22
%%%
 
23
%%% Description: 
 
24
%%% Test auto- and user-skip functionality
 
25
%%%
 
26
%%% The suites used for the test are located in the data directory.
 
27
%%%-------------------------------------------------------------------
 
28
-module(ct_skip_SUITE).
 
29
 
 
30
-compile(export_all).
 
31
 
 
32
-include_lib("common_test/include/ct.hrl").
 
33
-include_lib("common_test/include/ct_event.hrl").
 
34
 
 
35
-define(eh, ct_test_support_eh).
 
36
 
 
37
%%--------------------------------------------------------------------
 
38
%% TEST SERVER CALLBACK FUNCTIONS
 
39
%%--------------------------------------------------------------------
 
40
 
 
41
%%--------------------------------------------------------------------
 
42
%% Description: Since Common Test starts another Test Server
 
43
%% instance, the tests need to be performed on a separate node (or
 
44
%% there will be clashes with logging processes etc).
 
45
%%--------------------------------------------------------------------
 
46
init_per_suite(Config) ->
 
47
    Config1 = ct_test_support:init_per_suite(Config),
 
48
    Config1.
 
49
 
 
50
end_per_suite(Config) ->
 
51
    ct_test_support:end_per_suite(Config).
 
52
 
 
53
init_per_testcase(TestCase, Config) ->
 
54
    ct_test_support:init_per_testcase(TestCase, Config).
 
55
 
 
56
end_per_testcase(TestCase, Config) ->
 
57
    ct_test_support:end_per_testcase(TestCase, Config).
 
58
 
 
59
suite() -> [{ct_hooks,[ts_install_cth]}].
 
60
 
 
61
all() -> 
 
62
    [auto_skip, user_skip].
 
63
 
 
64
groups() -> 
 
65
    [].
 
66
 
 
67
init_per_group(_GroupName, Config) ->
 
68
        Config.
 
69
 
 
70
end_per_group(_GroupName, Config) ->
 
71
        Config.
 
72
 
 
73
     
 
74
 
 
75
%%--------------------------------------------------------------------
 
76
%% TEST CASES
 
77
%%--------------------------------------------------------------------
 
78
 
 
79
%%%-----------------------------------------------------------------
 
80
%%% 
 
81
auto_skip(Config) when is_list(Config) -> 
 
82
    DataDir = ?config(data_dir, Config),
 
83
    Join = fun(D, S) -> filename:join(D, "skip/test/"++S) end,
 
84
    Suites = [Join(DataDir, "auto_skip_1_SUITE"),
 
85
              Join(DataDir, "auto_skip_2_SUITE"),
 
86
              Join(DataDir, "auto_skip_3_SUITE"),
 
87
              Join(DataDir, "auto_skip_4_SUITE"),
 
88
              Join(DataDir, "auto_skip_5_SUITE"),
 
89
              Join(DataDir, "auto_skip_6_SUITE"),
 
90
              Join(DataDir, "auto_skip_7_SUITE"),
 
91
              Join(DataDir, "auto_skip_8_SUITE"),
 
92
              Join(DataDir, "auto_skip_9_SUITE"),
 
93
              Join(DataDir, "auto_skip_10_SUITE"),
 
94
              Join(DataDir, "auto_skip_11_SUITE")
 
95
             ],
 
96
 
 
97
    {Opts,ERPid} = setup({suite,Suites}, Config),
 
98
    ok = ct_test_support:run(Opts, Config),
 
99
    Events = ct_test_support:get_events(ERPid, Config),
 
100
 
 
101
    ct_test_support:log_events(auto_skip, 
 
102
                               reformat(Events, ?eh), 
 
103
                               ?config(priv_dir, Config)),
 
104
 
 
105
    TestEvents = events_to_check(auto_skip),
 
106
    ok = ct_test_support:verify_events(TestEvents, Events, Config).
 
107
    
 
108
 
 
109
%%%-----------------------------------------------------------------
 
110
%%% 
 
111
user_skip(Config) when is_list(Config) -> 
 
112
    DataDir = ?config(data_dir, Config),
 
113
    Join = fun(D, S) -> filename:join(D, "skip/test/"++S) end,
 
114
    Suites = [Join(DataDir, "user_skip_1_SUITE"),
 
115
              Join(DataDir, "user_skip_2_SUITE"),             
 
116
              Join(DataDir, "user_skip_3_SUITE"),
 
117
              Join(DataDir, "user_skip_4_SUITE"),
 
118
              Join(DataDir, "user_skip_5_SUITE")],
 
119
 
 
120
    {Opts,ERPid} = setup({suite,Suites}, Config),
 
121
    ok = ct_test_support:run(Opts, Config),
 
122
    Events = ct_test_support:get_events(ERPid, Config),
 
123
 
 
124
    ct_test_support:log_events(user_skip, 
 
125
                               reformat(Events, ?eh), 
 
126
                               ?config(priv_dir, Config)),
 
127
 
 
128
    TestEvents = events_to_check(user_skip),
 
129
    ok = ct_test_support:verify_events(TestEvents, Events, Config).
 
130
 
 
131
%%%-----------------------------------------------------------------
 
132
%%% HELP FUNCTIONS
 
133
%%%-----------------------------------------------------------------
 
134
 
 
135
setup(Test, Config) ->
 
136
    Opts0 = ct_test_support:get_opts(Config),
 
137
    Level = ?config(trace_level, Config),
 
138
    EvHArgs = [{cbm,ct_test_support},{trace_level,Level}],
 
139
    Opts = Opts0 ++ [Test,{event_handler,{?eh,EvHArgs}}],
 
140
    ERPid = ct_test_support:start_event_receiver(Config),
 
141
    {Opts,ERPid}.
 
142
 
 
143
reformat(Events, EH) ->
 
144
    ct_test_support:reformat(Events, EH).
 
145
%reformat(Events, _EH) ->
 
146
%    Events.
 
147
 
 
148
%%%-----------------------------------------------------------------
 
149
%%% TEST EVENTS
 
150
%%%-----------------------------------------------------------------
 
151
events_to_check(Test) ->
 
152
    %% 2 tests (ct:run_test + script_start) is default
 
153
    events_to_check(Test, 2).
 
154
 
 
155
events_to_check(_, 0) ->
 
156
    [];
 
157
events_to_check(Test, N) ->
 
158
    test_events(Test) ++ events_to_check(Test, N-1).
 
159
 
 
160
test_events(auto_skip) ->
 
161
    [
 
162
     {?eh,start_logging,{'DEF','RUNDIR'}},
 
163
     {?eh,test_start,{'DEF',{'START_TIME','LOGDIR'}}},
 
164
     {?eh,start_info,{11,11,34}},
 
165
 
 
166
     {?eh,tc_start,{auto_skip_1_SUITE,init_per_suite}},
 
167
     {?eh,tc_done,
 
168
      {auto_skip_1_SUITE,init_per_suite,{failed,{error,init_per_suite_failed}}}},
 
169
     {?eh,tc_auto_skip,
 
170
      {auto_skip_1_SUITE,tc1,{failed,{auto_skip_1_SUITE,init_per_suite,
 
171
                                      {'EXIT',init_per_suite_failed}}}}},
 
172
     {?eh,test_stats,{0,0,{0,1}}},
 
173
     {?eh,tc_auto_skip,
 
174
      {auto_skip_1_SUITE,tc2,{failed,{auto_skip_1_SUITE,init_per_suite,
 
175
                                      {'EXIT',init_per_suite_failed}}}}},
 
176
     {?eh,test_stats,{0,0,{0,2}}},
 
177
     {?eh,tc_auto_skip,
 
178
      {auto_skip_1_SUITE,end_per_suite,{failed,{auto_skip_1_SUITE,init_per_suite,
 
179
                                                {'EXIT',init_per_suite_failed}}}}},
 
180
 
 
181
     {?eh,tc_start,{auto_skip_2_SUITE,init_per_suite}},
 
182
     {?eh,tc_done,
 
183
      {auto_skip_2_SUITE,init_per_suite,{failed,{error,init_per_suite_failed}}}},
 
184
     {?eh,tc_auto_skip,      
 
185
      {auto_skip_2_SUITE,tc1,{failed,{auto_skip_2_SUITE,init_per_suite,
 
186
                                      {'EXIT',init_per_suite_failed}}}}},
 
187
     {?eh,test_stats,{0,0,{0,3}}},
 
188
     {?eh,tc_auto_skip,
 
189
      {auto_skip_2_SUITE,end_per_suite,{failed,{auto_skip_2_SUITE,init_per_suite,
 
190
                                                {'EXIT',init_per_suite_failed}}}}},
 
191
 
 
192
     {?eh,tc_start,{auto_skip_3_SUITE,init_per_suite}},
 
193
     {?eh,tc_done,{auto_skip_3_SUITE,init_per_suite,ok}},
 
194
     {?eh,tc_start,{auto_skip_3_SUITE,tc1}},
 
195
     {?eh,tc_done,
 
196
      {auto_skip_3_SUITE,tc1,
 
197
       {skipped,{failed,{auto_skip_3_SUITE,init_per_testcase,
 
198
                         {init_per_testcase,tc1,failed}}}}}},
 
199
     {?eh,test_stats,{0,0,{0,4}}},
 
200
     {?eh,tc_start,{auto_skip_3_SUITE,tc2}},
 
201
     {?eh,tc_done,{auto_skip_3_SUITE,tc2,ok}},
 
202
     {?eh,test_stats,{1,0,{0,4}}},
 
203
     {?eh,tc_start,{auto_skip_3_SUITE,end_per_suite}},
 
204
     {?eh,tc_done,{auto_skip_3_SUITE,end_per_suite,ok}},
 
205
 
 
206
     {?eh,tc_start,{auto_skip_4_SUITE,init_per_suite}},
 
207
     {?eh,tc_done,{auto_skip_4_SUITE,init_per_suite,ok}},
 
208
     {?eh,tc_start,{auto_skip_4_SUITE,tc1}},
 
209
     {?eh,tc_done,{auto_skip_4_SUITE,tc1,
 
210
                   {skipped,{failed,{auto_skip_4_SUITE,init_per_testcase,
 
211
                                     {timetrap_timeout,1000}}}}}},
 
212
     {?eh,test_stats,{1,0,{0,5}}},     
 
213
     {?eh,tc_start,{auto_skip_4_SUITE,tc2}},
 
214
     {?eh,tc_done,{auto_skip_4_SUITE,tc2,ok}},
 
215
     {?eh,test_stats,{2,0,{0,5}}},    
 
216
     {?eh,tc_start,{auto_skip_4_SUITE,end_per_suite}},
 
217
     {?eh,tc_done,{auto_skip_4_SUITE,end_per_suite,ok}},
 
218
 
 
219
     {?eh,tc_start,{auto_skip_5_SUITE,init_per_suite}},
 
220
     {?eh,tc_done,{auto_skip_5_SUITE,init_per_suite,ok}},
 
221
     [{?eh,tc_start,{auto_skip_5_SUITE,{init_per_group,g1,[]}}},
 
222
      {?eh,tc_done,
 
223
       {auto_skip_5_SUITE,{init_per_group,g1,[]},{failed,{error,{group,g1,failed}}}}},
 
224
      {?eh,tc_auto_skip,
 
225
       {auto_skip_5_SUITE,tc1,{failed,{auto_skip_5_SUITE,init_per_group,
 
226
                                       {'EXIT',{group,g1,failed}}}}}},
 
227
      {?eh,test_stats,{2,0,{0,6}}},    
 
228
      {?eh,tc_auto_skip,
 
229
       {auto_skip_5_SUITE,tc2,{failed,{auto_skip_5_SUITE,init_per_group,
 
230
                                       {'EXIT',{group,g1,failed}}}}}},
 
231
      {?eh,test_stats,{2,0,{0,7}}},
 
232
      {?eh,tc_auto_skip,
 
233
       {auto_skip_5_SUITE,end_per_group,{failed,{auto_skip_5_SUITE,init_per_group,
 
234
                                                 {'EXIT',{group,g1,failed}}}}}}],
 
235
 
 
236
     {?eh,tc_start,{auto_skip_5_SUITE,end_per_suite}},
 
237
     {?eh,tc_done,{auto_skip_5_SUITE,end_per_suite,ok}},
 
238
 
 
239
     {?eh,tc_start,{auto_skip_6_SUITE,init_per_suite}},
 
240
     {?eh,tc_done,{auto_skip_6_SUITE,init_per_suite,ok}},
 
241
     [{?eh,tc_start,{auto_skip_6_SUITE,{init_per_group,g1,[]}}},
 
242
      {?eh,tc_done,
 
243
       {auto_skip_6_SUITE,{init_per_group,g1,[]},{failed,{error,{group,g1,failed}}}}},
 
244
      {?eh,tc_auto_skip,
 
245
       {auto_skip_6_SUITE,tc1,{failed,{auto_skip_6_SUITE,init_per_group,
 
246
                                       {'EXIT',{group,g1,failed}}}}}},
 
247
      {?eh,test_stats,{2,0,{0,8}}},
 
248
      {?eh,tc_auto_skip,
 
249
       {auto_skip_6_SUITE,tc3,{failed,{auto_skip_6_SUITE,init_per_group,
 
250
                                       {'EXIT',{group,g1,failed}}}}}},
 
251
      {?eh,test_stats,{2,0,{0,9}}},
 
252
      {?eh,tc_auto_skip,
 
253
       {auto_skip_6_SUITE,tc4,{failed,{auto_skip_6_SUITE,init_per_group,
 
254
                                       {'EXIT',{group,g1,failed}}}}}},
 
255
      {?eh,test_stats,{2,0,{0,10}}},
 
256
      {?eh,tc_auto_skip,
 
257
       {auto_skip_6_SUITE,tc2,{failed,{auto_skip_6_SUITE,init_per_group,
 
258
                                       {'EXIT',{group,g1,failed}}}}}},
 
259
      {?eh,test_stats,{2,0,{0,11}}},
 
260
      {?eh,tc_auto_skip,
 
261
       {auto_skip_6_SUITE,end_per_group,{failed,{auto_skip_6_SUITE,init_per_group,
 
262
                                                 {'EXIT',{group,g1,failed}}}}}}],
 
263
 
 
264
     [{?eh,tc_start,{auto_skip_6_SUITE,{init_per_group,g3,[]}}},
 
265
      {?eh,tc_done,{auto_skip_6_SUITE,{init_per_group,g3,[]},ok}},
 
266
      {?eh,tc_start,{auto_skip_6_SUITE,tc1}},
 
267
      {?eh,tc_done,{auto_skip_6_SUITE,tc1,ok}},
 
268
      {?eh,test_stats,{3,0,{0,11}}},
 
269
      [{?eh,tc_start,{auto_skip_6_SUITE,{init_per_group,g4,[]}}},
 
270
       {?eh,tc_done,{auto_skip_6_SUITE,{init_per_group,g4,[]},
 
271
                     {failed,{error,{group,g4,failed}}}}},
 
272
       {?eh,tc_auto_skip,
 
273
        {auto_skip_6_SUITE,tc3,{failed,{auto_skip_6_SUITE,init_per_group,
 
274
                                        {'EXIT',{group,g4,failed}}}}}},
 
275
       {?eh,test_stats,{3,0,{0,12}}},
 
276
       {?eh,tc_auto_skip,
 
277
        {auto_skip_6_SUITE,tc4,{failed,{auto_skip_6_SUITE,init_per_group,
 
278
                                        {'EXIT',{group,g4,failed}}}}}},
 
279
       {?eh,test_stats,{3,0,{0,13}}},
 
280
       {?eh,tc_auto_skip,
 
281
        {auto_skip_6_SUITE,end_per_group,{failed,{auto_skip_6_SUITE,init_per_group,
 
282
                                                  {'EXIT',{group,g4,failed}}}}}}],
 
283
      {?eh,tc_start,{auto_skip_6_SUITE,tc2}},
 
284
      {?eh,tc_done,{auto_skip_6_SUITE,tc2,ok}},
 
285
      {?eh,test_stats,{4,0,{0,13}}},
 
286
      {?eh,tc_start,{auto_skip_6_SUITE,{end_per_group,g3,[]}}},
 
287
      {?eh,tc_done,{auto_skip_6_SUITE,{end_per_group,g3,[]},ok}}],
 
288
 
 
289
     {?eh,tc_start,{auto_skip_6_SUITE,end_per_suite}},
 
290
     {?eh,tc_done,{auto_skip_6_SUITE,end_per_suite,ok}},
 
291
 
 
292
     {?eh,tc_start,{auto_skip_7_SUITE,init_per_suite}},
 
293
     {?eh,tc_done,{auto_skip_7_SUITE,init_per_suite,ok}},
 
294
     {?eh,tc_auto_skip,
 
295
      {auto_skip_7_SUITE,tc1,{failed,{auto_skip_7_SUITE,init_per_suite,bad_return}}}},
 
296
     {?eh,test_stats,{4,0,{0,14}}},
 
297
     {?eh,tc_auto_skip,
 
298
      {auto_skip_7_SUITE,tc2,{failed,{auto_skip_7_SUITE,init_per_suite,bad_return}}}},
 
299
     {?eh,test_stats,{4,0,{0,15}}},
 
300
     {?eh,tc_auto_skip,
 
301
      {auto_skip_7_SUITE,end_per_suite,{failed,{auto_skip_7_SUITE,init_per_suite,bad_return}}}},
 
302
 
 
303
     {?eh,tc_start,{auto_skip_8_SUITE,init_per_suite}},
 
304
     {?eh,tc_done,{auto_skip_8_SUITE,init_per_suite,ok}},
 
305
     {?eh,tc_auto_skip,
 
306
      {auto_skip_8_SUITE,tc1,{failed,{auto_skip_8_SUITE,init_per_suite,bad_return}}}},
 
307
     {?eh,test_stats,{4,0,{0,16}}},
 
308
     {?eh,tc_auto_skip,
 
309
      {auto_skip_8_SUITE,tc2,{failed,{auto_skip_8_SUITE,init_per_suite,bad_return}}}},
 
310
     {?eh,test_stats,{4,0,{0,17}}},
 
311
     {?eh,tc_auto_skip,
 
312
      {auto_skip_8_SUITE,end_per_suite,{failed,{auto_skip_8_SUITE,init_per_suite,bad_return}}}},
 
313
 
 
314
     {?eh,tc_start,{auto_skip_9_SUITE,init_per_suite}},
 
315
     {?eh,tc_done,{auto_skip_9_SUITE,init_per_suite,ok}},
 
316
     {?eh,tc_start,{auto_skip_9_SUITE,tc1}},
 
317
     {?eh,tc_done,{auto_skip_9_SUITE,tc1,ok}},
 
318
     {?eh,test_stats,{5,0,{0,17}}},
 
319
     {?eh,tc_start,{auto_skip_9_SUITE,tc2}},
 
320
     {?eh,tc_done,{auto_skip_9_SUITE,tc2,
 
321
                   {skipped,{failed,{auto_skip_9_SUITE,init_per_testcase,bad_return}}}}},
 
322
     {?eh,test_stats,{5,0,{0,18}}},
 
323
 
 
324
     [{?eh,tc_start,{auto_skip_9_SUITE,{init_per_group,g1,[]}}},
 
325
      {?eh,tc_done,{auto_skip_9_SUITE,{init_per_group,g1,[]},ok}},
 
326
      {?eh,tc_start,{auto_skip_9_SUITE,tc3}},
 
327
      {?eh,tc_done,{auto_skip_9_SUITE,tc3,ok}},
 
328
      {?eh,test_stats,{6,0,{0,18}}},
 
329
      {?eh,tc_start,{auto_skip_9_SUITE,{end_per_group,g1,[]}}},
 
330
      {?eh,tc_done,{auto_skip_9_SUITE,{end_per_group,g1,[]},ok}}],
 
331
 
 
332
     [{?eh,tc_start,{auto_skip_9_SUITE,{init_per_group,g2,[]}}},
 
333
      {?eh,tc_done,{auto_skip_9_SUITE,{init_per_group,g2,[]},ok}},
 
334
      {?eh,tc_start,{auto_skip_9_SUITE,tc4}},
 
335
      {?eh,tc_done,{auto_skip_9_SUITE,tc4,ok}},
 
336
      {?eh,test_stats,{7,0,{0,18}}},
 
337
      {?eh,tc_start,{auto_skip_9_SUITE,{end_per_group,g2,[]}}},
 
338
      {?eh,tc_done,{auto_skip_9_SUITE,{end_per_group,g2,[]},ok}}],
 
339
 
 
340
     [{?eh,tc_start,{auto_skip_9_SUITE,{init_per_group,g3,[]}}},
 
341
      {?eh,tc_done,{auto_skip_9_SUITE,{init_per_group,g3,[]},ok}},
 
342
      {?eh,tc_start,{auto_skip_9_SUITE,tc5}},
 
343
      {?eh,tc_done,{auto_skip_9_SUITE,tc5,
 
344
                    {skipped,{failed,{auto_skip_9_SUITE,init_per_testcase,bad_return}}}}},
 
345
      {?eh,test_stats,{7,0,{0,19}}},
 
346
      {?eh,tc_start,{auto_skip_9_SUITE,{end_per_group,g3,[]}}},
 
347
      {?eh,tc_done,{auto_skip_9_SUITE,{end_per_group,g3,[]},ok}}],
 
348
 
 
349
     {parallel,
 
350
      [{?eh,tc_start,
 
351
        {auto_skip_9_SUITE,{init_per_group,g4,[parallel]}}},
 
352
       {?eh,tc_done,
 
353
        {auto_skip_9_SUITE,{init_per_group,g4,[parallel]},ok}},
 
354
       {?eh,tc_start,{auto_skip_9_SUITE,tc6}},
 
355
       {?eh,tc_done,{auto_skip_9_SUITE,tc6,ok}},
 
356
       {parallel,
 
357
        [{?eh,tc_start,
 
358
          {auto_skip_9_SUITE,{init_per_group,g5,[parallel]}}},
 
359
         {?eh,tc_done,
 
360
          {auto_skip_9_SUITE,{init_per_group,g5,[parallel]},ok}},
 
361
         {?eh,tc_start,{auto_skip_9_SUITE,tc8}},
 
362
         {?eh,tc_done,
 
363
          {auto_skip_9_SUITE,tc8,
 
364
           {skipped,{failed,{auto_skip_9_SUITE,init_per_testcase,
 
365
                             {{badmatch,undefined},
 
366
                              [{auto_skip_9_SUITE,init_per_testcase,2},
 
367
                               {test_server,my_apply,3},
 
368
                               {test_server,init_per_testcase,3},
 
369
                               {test_server,run_test_case_eval1,6},
 
370
                               {test_server,run_test_case_eval,8}]}}}}}},
 
371
         {?eh,tc_start,
 
372
          {auto_skip_9_SUITE,{end_per_group,g5,[parallel]}}},
 
373
         {?eh,tc_done,
 
374
          {auto_skip_9_SUITE,{end_per_group,g5,[parallel]},ok}}]},
 
375
 
 
376
       {?eh,tc_start,{auto_skip_9_SUITE,tc7}},
 
377
       {?eh,tc_done,{auto_skip_9_SUITE,tc7,ok}},
 
378
       {?eh,test_stats,{9,0,{0,20}}},
 
379
       {?eh,tc_start,
 
380
        {auto_skip_9_SUITE,{end_per_group,g4,[parallel]}}},
 
381
       {?eh,tc_done,
 
382
        {auto_skip_9_SUITE,{end_per_group,g4,[parallel]},ok}}]},
 
383
 
 
384
     {?eh,tc_start,{auto_skip_9_SUITE,end_per_suite}},
 
385
     {?eh,tc_done,{auto_skip_9_SUITE,end_per_suite,ok}},
 
386
 
 
387
     {?eh,tc_start,{auto_skip_10_SUITE,init_per_suite}},
 
388
     {?eh,tc_done,{auto_skip_10_SUITE,init_per_suite,
 
389
                   {skipped,
 
390
                    {require_failed_in_suite0,
 
391
                     {not_available,undefined_config_variable}}}}},
 
392
     {?eh,tc_auto_skip,
 
393
      {auto_skip_10_SUITE,tc1,
 
394
       {require_failed_in_suite0,{not_available,undefined_config_variable}}}},
 
395
     {?eh,test_stats,{9,0,{0,21}}},
 
396
     {?eh,tc_auto_skip,
 
397
      {auto_skip_10_SUITE,tc2,
 
398
       {require_failed_in_suite0,{not_available,undefined_config_variable}}}},
 
399
     {?eh,test_stats,{9,0,{0,22}}},
 
400
     {?eh,tc_auto_skip,
 
401
      {auto_skip_10_SUITE,end_per_suite,
 
402
       {require_failed_in_suite0,{not_available,undefined_config_variable}}}},
 
403
 
 
404
     {?eh,tc_start,{auto_skip_11_SUITE,init_per_suite}},
 
405
     {?eh,tc_done,{auto_skip_11_SUITE,init_per_suite,ok}},
 
406
     {?eh,tc_start,{auto_skip_11_SUITE,tc1}},
 
407
     {?eh,tc_done,{auto_skip_11_SUITE,tc1,
 
408
                   {skipped,{require_failed,{not_available,undefined_config_variable}}}}},
 
409
     {?eh,test_stats,{9,0,{0,23}}},
 
410
     {?eh,tc_start,{auto_skip_11_SUITE,tc2}},
 
411
     {?eh,tc_done,{auto_skip_11_SUITE,tc2,ok}},
 
412
     {?eh,test_stats,{10,0,{0,23}}},
 
413
 
 
414
     {parallel,
 
415
      [{?eh,tc_start,
 
416
        {auto_skip_11_SUITE,{init_per_group,g1,[parallel]}}},
 
417
       {?eh,tc_done,
 
418
        {auto_skip_11_SUITE,{init_per_group,g1,[parallel]},ok}},
 
419
       {parallel,
 
420
        [{?eh,tc_start,
 
421
          {auto_skip_11_SUITE,{init_per_group,g2,[parallel]}}},
 
422
         {?eh,tc_done,
 
423
          {auto_skip_11_SUITE,{init_per_group,g2,[parallel]},ok}},
 
424
         {?eh,tc_start,{auto_skip_11_SUITE,tc3}},
 
425
         {?eh,tc_done,
 
426
          {auto_skip_11_SUITE,tc3,
 
427
           {skipped,{require_failed,{not_available,undefined_config_variable}}}}},
 
428
         {?eh,test_stats,{10,0,{0,24}}},
 
429
         {?eh,tc_start,
 
430
          {auto_skip_11_SUITE,{end_per_group,g2,[parallel]}}},
 
431
         {?eh,tc_done,
 
432
          {auto_skip_11_SUITE,{end_per_group,g2,[parallel]},ok}}]},
 
433
       {?eh,tc_start,
 
434
        {auto_skip_11_SUITE,{end_per_group,g1,[parallel]}}},
 
435
       {?eh,tc_done,
 
436
        {auto_skip_11_SUITE,{end_per_group,g1,[parallel]},ok}}]},
 
437
 
 
438
     {?eh,tc_start,{auto_skip_11_SUITE,end_per_suite}},
 
439
     {?eh,tc_done,{auto_skip_11_SUITE,end_per_suite,ok}},
 
440
 
 
441
     {?eh,test_done,{'DEF','STOP_TIME'}},
 
442
     {?eh,stop_logging,[]}
 
443
    ];
 
444
 
 
445
test_events(user_skip) ->
 
446
    [{?eh,start_logging,{'DEF','RUNDIR'}},
 
447
     {?eh,test_start,{'DEF',{'START_TIME','LOGDIR'}}},
 
448
     {?eh,start_info,{5,5,27}},
 
449
 
 
450
     {?eh,tc_start,{user_skip_1_SUITE,init_per_suite}},
 
451
     {?eh,tc_done,
 
452
      {user_skip_1_SUITE,init_per_suite,{skipped,"Whole suite skipped"}}},
 
453
     {?eh,tc_auto_skip,
 
454
      {user_skip_1_SUITE,tc1,"Whole suite skipped"}},
 
455
     {?eh,test_stats,{0,0,{0,1}}},
 
456
     {?eh,tc_auto_skip,
 
457
      {user_skip_1_SUITE,tc2,"Whole suite skipped"}},
 
458
     {?eh,test_stats,{0,0,{0,2}}},
 
459
     {?eh,tc_auto_skip,
 
460
      {user_skip_1_SUITE,tc3,"Whole suite skipped"}},
 
461
     {?eh,test_stats,{0,0,{0,3}}},
 
462
     {?eh,tc_auto_skip,
 
463
      {user_skip_1_SUITE,tc4,"Whole suite skipped"}},
 
464
     {?eh,test_stats,{0,0,{0,4}}},
 
465
     {?eh,tc_auto_skip,
 
466
      {user_skip_1_SUITE,end_per_suite,"Whole suite skipped"}},
 
467
 
 
468
     {?eh,tc_start,{user_skip_2_SUITE,init_per_suite}},
 
469
     {?eh,tc_done,{user_skip_2_SUITE,init_per_suite,ok}},
 
470
     {?eh,tc_start,{user_skip_2_SUITE,tc1}},
 
471
     {?eh,tc_done,{user_skip_2_SUITE,tc1,{skipped,{tc1,skipped}}}},
 
472
     {?eh,test_stats,{0,0,{1,4}}},
 
473
 
 
474
     [{?eh,tc_start,{user_skip_2_SUITE,{init_per_group,g1,[]}}},
 
475
      {?eh,tc_done,{user_skip_2_SUITE,{init_per_group,g1,[]},ok}},
 
476
      {?eh,tc_start,{user_skip_2_SUITE,tc2}},
 
477
      {?eh,tc_done,{user_skip_2_SUITE,tc2,ok}},
 
478
      {?eh,test_stats,{1,0,{1,4}}},
 
479
      {?eh,tc_start,{user_skip_2_SUITE,tc3}},
 
480
      {?eh,tc_done,{user_skip_2_SUITE,tc3,{skipped,{tc3,skipped}}}},
 
481
      {?eh,test_stats,{1,0,{2,4}}},
 
482
      {?eh,tc_start,{user_skip_2_SUITE,{end_per_group,g1,[]}}},
 
483
      {?eh,tc_done,{user_skip_2_SUITE,{end_per_group,g1,[]},ok}}],
 
484
 
 
485
     {?eh,tc_start,{user_skip_2_SUITE,tc4}},
 
486
     {?eh,tc_done,{user_skip_2_SUITE,tc4,ok}},
 
487
     {?eh,test_stats,{2,0,{2,4}}},
 
488
     {?eh,tc_start,{user_skip_2_SUITE,end_per_suite}},
 
489
     {?eh,tc_done,{user_skip_2_SUITE,end_per_suite,ok}},
 
490
 
 
491
     {?eh,tc_start,{user_skip_3_SUITE,init_per_suite}},
 
492
     {?eh,tc_done,{user_skip_3_SUITE,init_per_suite,ok}},
 
493
     {?eh,tc_start,{user_skip_3_SUITE,tc1}},
 
494
     {?eh,tc_done,{user_skip_3_SUITE,tc1,{skipped,"Test case skipped"}}},
 
495
     {?eh,test_stats,{2,0,{3,4}}},
 
496
 
 
497
     [{?eh,tc_start,{user_skip_3_SUITE,{init_per_group,g1,[]}}},
 
498
      {?eh,tc_done,{user_skip_3_SUITE,{init_per_group,g1,[]},ok}},
 
499
      {?eh,tc_start,{user_skip_3_SUITE,tc2}},
 
500
      {?eh,tc_done,{user_skip_3_SUITE,tc2,ok}},
 
501
      {?eh,test_stats,{3,0,{3,4}}},
 
502
      {?eh,tc_start,{user_skip_3_SUITE,tc3}},
 
503
      {?eh,tc_done,{user_skip_3_SUITE,tc3,{skipped,"Test case skipped"}}},
 
504
      {?eh,test_stats,{3,0,{4,4}}},
 
505
      {?eh,tc_start,{user_skip_3_SUITE,{end_per_group,g1,[]}}},
 
506
      {?eh,tc_done,{user_skip_3_SUITE,{end_per_group,g1,[]},ok}}],
 
507
 
 
508
     {?eh,tc_start,{user_skip_3_SUITE,tc4}},
 
509
     {?eh,tc_done,{user_skip_3_SUITE,tc4,
 
510
                   {skipped,{proc_info,{{current_function,{user_skip_3_SUITE,tc4,1}},
 
511
                                        {initial_call,{erlang,apply,2}}}}}}},
 
512
     {?eh,test_stats,{3,0,{5,4}}},
 
513
     {?eh,tc_start,{user_skip_3_SUITE,end_per_suite}},
 
514
     {?eh,tc_done,{user_skip_3_SUITE,end_per_suite,ok}},
 
515
 
 
516
     {?eh,tc_start,{user_skip_4_SUITE,init_per_suite}},
 
517
     {?eh,tc_done,{user_skip_4_SUITE,init_per_suite,ok}},
 
518
 
 
519
     [{?eh,tc_start,{user_skip_4_SUITE,{init_per_group,g1,[]}}},
 
520
      {?eh,tc_done,{user_skip_4_SUITE,{init_per_group,g1,[]},{skipped,"Group skipped"}}},
 
521
      {?eh,tc_auto_skip,{user_skip_4_SUITE,tc1,"Group skipped"}},   
 
522
      {?eh,test_stats,{3,0,{5,5}}},
 
523
      {?eh,tc_auto_skip,{user_skip_4_SUITE,tc2,"Group skipped"}},
 
524
      {?eh,test_stats,{3,0,{5,6}}},
 
525
      {?eh,tc_auto_skip,{user_skip_4_SUITE,end_per_group,"Group skipped"}}],
 
526
 
 
527
     [{?eh,tc_start,{user_skip_4_SUITE,{init_per_group,g2,[]}}},
 
528
      {?eh,tc_done,{user_skip_4_SUITE,{init_per_group,g2,[]},ok}},
 
529
      {?eh,tc_start,{user_skip_4_SUITE,tc3}},
 
530
      {?eh,tc_done,{user_skip_4_SUITE,tc3,ok}},
 
531
      {?eh,test_stats,{4,0,{5,6}}},
 
532
      {?eh,tc_start,{user_skip_4_SUITE,tc4}},
 
533
      {?eh,tc_done,{user_skip_4_SUITE,tc4,ok}},
 
534
      {?eh,test_stats,{5,0,{5,6}}},
 
535
      {?eh,tc_start,{user_skip_4_SUITE,{end_per_group,g2,[]}}},
 
536
      {?eh,tc_done,{user_skip_4_SUITE,{end_per_group,g2,[]},ok}}],
 
537
 
 
538
     [{?eh,tc_start,{user_skip_4_SUITE,{init_per_group,g3,[]}}},
 
539
      {?eh,tc_done,{user_skip_4_SUITE,{init_per_group,g3,[]},{skipped,"Group skipped"}}},
 
540
      {?eh,tc_auto_skip,{user_skip_4_SUITE,tc5,"Group skipped"}},
 
541
      {?eh,tc_auto_skip,{user_skip_4_SUITE,tc6,"Group skipped"}},
 
542
      {?eh,tc_auto_skip,{user_skip_4_SUITE,tc7,"Group skipped"}},
 
543
      {?eh,tc_auto_skip,{user_skip_4_SUITE,tc8,"Group skipped"}},
 
544
      {?eh,test_stats,{5,0,{5,10}}},
 
545
      {?eh,tc_auto_skip,{user_skip_4_SUITE,end_per_group,"Group skipped"}}],
 
546
 
 
547
     [{?eh,tc_start,{user_skip_4_SUITE,{init_per_group,g5,[]}}},
 
548
      {?eh,tc_done,{user_skip_4_SUITE,{init_per_group,g5,[]},ok}},
 
549
      {?eh,tc_start,{user_skip_4_SUITE,tc9}},
 
550
      {?eh,tc_done,{user_skip_4_SUITE,tc9,ok}},
 
551
      {?eh,test_stats,{6,0,{5,10}}},
 
552
      [{?eh,tc_start,{user_skip_4_SUITE,{init_per_group,g6,[]}}},
 
553
       {?eh,tc_done,{user_skip_4_SUITE,{init_per_group,g6,[]},{skipped,"Group skipped"}}},
 
554
       {?eh,tc_auto_skip,{user_skip_4_SUITE,tc10,"Group skipped"}},
 
555
       {?eh,test_stats,{6,0,{5,11}}},
 
556
       {?eh,tc_auto_skip,{user_skip_4_SUITE,tc11,"Group skipped"}},
 
557
       {?eh,test_stats,{6,0,{5,12}}},
 
558
       {?eh,tc_auto_skip,{user_skip_4_SUITE,end_per_group,"Group skipped"}}],
 
559
       {?eh,tc_start,{user_skip_4_SUITE,{end_per_group,g5,[]}}},
 
560
       {?eh,tc_done,{user_skip_4_SUITE,{end_per_group,g5,[]},ok}}],
 
561
 
 
562
     {?eh,tc_start,{user_skip_4_SUITE,end_per_suite}},
 
563
     {?eh,tc_done,{user_skip_4_SUITE,end_per_suite,ok}},
 
564
 
 
565
         {ct_test_support_eh,tc_start,{user_skip_5_SUITE,init_per_suite}},
 
566
     {?eh,tc_done,{user_skip_5_SUITE,init_per_suite,
 
567
                   {skipped,{bad,'Whole suite skipped'}}}},
 
568
     {?eh,tc_auto_skip,{user_skip_5_SUITE,tc1,{bad,'Whole suite skipped'}}},
 
569
     {?eh,test_stats,{6,0,{5,13}}},
 
570
     {?eh,tc_auto_skip,{user_skip_5_SUITE,tc2,{bad,'Whole suite skipped'}}},
 
571
     {?eh,test_stats,{6,0,{5,14}}},
 
572
     {?eh,tc_auto_skip,{user_skip_5_SUITE,tc3,{bad,'Whole suite skipped'}}},
 
573
     {?eh,test_stats,{6,0,{5,15}}},
 
574
     {?eh,tc_auto_skip,{user_skip_5_SUITE,tc4,{bad,'Whole suite skipped'}}},
 
575
     {?eh,test_stats,{6,0,{5,16}}},
 
576
     {?eh,tc_auto_skip,{user_skip_5_SUITE,end_per_suite,{bad,'Whole suite skipped'}}},
 
577
     
 
578
     {?eh,test_done,{'DEF','STOP_TIME'}},
 
579
     {?eh,stop_logging,[]}
 
580
    ].