4
%% Copyright Ericsson AB 2010. All Rights Reserved.
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/.
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
19
-module(groups_21_SUITE).
23
-include_lib("common_test/include/ct.hrl").
25
%%====================================================================
26
%% COMMON TEST CALLBACK FUNCTIONS
27
%%====================================================================
30
[{timetrap,{minutes,1}}].
34
{test_group_1a, [testcase_1a,testcase_1b]},
36
{test_group_1b, [], [testcase_1a,testcase_1b]},
38
{test_group_2, [], [testcase_2a,
40
{test_group_3, [], [testcase_3a,
44
{test_group_4, [{test_group_5, [], [testcase_5a,
46
{group, test_group_6},
50
{test_group_6, [{group, test_group_7}]},
52
{test_group_7, [testcase_7a,testcase_7b]}
57
{group, test_group_1a},
58
{group, test_group_1b},
60
{group, test_group_2},
62
{group, test_group_4}].
64
%% this func only for internal test purposes
67
test_group_1a, test_group_1b,
68
test_group_2, test_group_3,
69
test_group_4, test_group_5,
70
test_group_6, test_group_7
74
testcase_1a, testcase_1b,
76
testcase_2a, testcase_2b,
77
testcase_3a, testcase_3b,
79
testcase_5a, testcase_5b,
80
testcase_7a, testcase_7b
83
%%--------------------------------------------------------------------
84
%% Suite Configuration
85
%%--------------------------------------------------------------------
87
init_per_suite(Config) ->
88
[{suite,init}|Config].
90
end_per_suite(Config) ->
91
init = ?config(suite,Config).
93
%%--------------------------------------------------------------------
94
%% Group Configuration
95
%%--------------------------------------------------------------------
97
init_per_group(Group, Config) ->
98
[{name,Group}] = ?config(tc_group_properties,Config),
99
{Grs,_} = grs_and_tcs(),
100
case lists:member(Group, Grs) of
102
ct:comment(io_lib:format("~w", [Group])),
103
init = ?config(suite,Config),
104
[{Group,Group} | Config];
106
ct:fail({bad_group,Group})
109
end_per_group(Group, Config) ->
110
{Grs,_} = grs_and_tcs(),
111
case lists:member(Group, Grs) of
113
init = ?config(suite,Config),
114
Group = ?config(Group,Config),
117
ct:fail({bad_group,Group})
120
%%--------------------------------------------------------------------
121
%% Testcase Configuration
122
%%--------------------------------------------------------------------
124
init_per_testcase(TestCase, Config) ->
125
{_,TCs} = grs_and_tcs(),
126
case lists:member(TestCase, TCs) of
128
init = ?config(suite,Config),
129
[{TestCase,TestCase} | Config];
131
ct:fail({unknown_testcase,TestCase})
134
end_per_testcase(TestCase, Config) ->
135
{_,TCs} = grs_and_tcs(),
136
case lists:member(TestCase, TCs) of
138
init = ?config(suite,Config),
139
TestCase = ?config(TestCase,Config),
142
ct:fail({unknown_testcase,TestCase})
146
%%--------------------------------------------------------------------
148
%%--------------------------------------------------------------------
152
testcase_1(Config) ->
153
init = ?config(suite,Config),
154
testcase_1 = ?config(testcase_1,Config),
159
testcase_1a(Config) ->
160
init = ?config(suite,Config),
161
case ?config(test_group_1a,Config) of
164
case ?config(test_group_1b,Config) of
166
_ -> ct:fail(no_group_data)
169
testcase_1a = ?config(testcase_1a,Config),
173
testcase_1b(Config) ->
174
init = ?config(suite,Config),
175
case ?config(test_group_1a,Config) of
178
case ?config(test_group_1b,Config) of
180
_ -> ct:fail(no_group_data)
183
undefined = ?config(testcase_1a,Config),
184
testcase_1b = ?config(testcase_1b,Config),
189
testcase_2(Config) ->
190
init = ?config(suite,Config),
191
undefined = ?config(test_group_1a,Config),
192
undefined = ?config(test_group_1b,Config),
193
testcase_2 = ?config(testcase_2,Config),
198
testcase_2a(Config) ->
199
init = ?config(suite,Config),
200
test_group_2 = ?config(test_group_2,Config),
201
testcase_2a = ?config(testcase_2a,Config),
205
testcase_2b(Config) ->
206
init = ?config(suite,Config),
207
test_group_2 = ?config(test_group_2,Config),
208
undefined = ?config(testcase_2a,Config),
209
testcase_2b = ?config(testcase_2b,Config),
214
testcase_3a(Config) ->
215
init = ?config(suite,Config),
216
test_group_2 = ?config(test_group_2,Config),
217
test_group_3 = ?config(test_group_3,Config),
218
undefined = ?config(testcase_2b,Config),
219
testcase_3a = ?config(testcase_3a,Config),
223
testcase_3b(Config) ->
224
init = ?config(suite,Config),
225
test_group_2 = ?config(test_group_2,Config),
226
test_group_3 = ?config(test_group_3,Config),
227
undefined = ?config(testcase_3a,Config),
228
testcase_3b = ?config(testcase_3b,Config),
233
testcase_3(Config) ->
234
init = ?config(suite,Config),
235
undefined = ?config(test_group_2,Config),
236
undefined = ?config(test_group_3,Config),
237
testcase_3 = ?config(testcase_3,Config),
242
testcase_5a(Config) ->
243
init = ?config(suite,Config),
244
undefined = ?config(test_group_3,Config),
245
test_group_4 = ?config(test_group_4,Config),
246
test_group_5 = ?config(test_group_5,Config),
247
undefined = ?config(testcase_3,Config),
248
testcase_5a = ?config(testcase_5a,Config),
252
testcase_5b(Config) ->
253
init = ?config(suite,Config),
254
test_group_4 = ?config(test_group_4,Config),
255
test_group_5 = ?config(test_group_5,Config),
256
undefined = ?config(testcase_5a,Config),
257
testcase_5b = ?config(testcase_5b,Config),
262
testcase_7a(Config) ->
263
init = ?config(suite,Config),
264
undefined = ?config(test_group_3,Config),
265
test_group_4 = ?config(test_group_4,Config),
266
test_group_5 = ?config(test_group_5,Config),
267
test_group_6 = ?config(test_group_6,Config),
268
test_group_7 = ?config(test_group_7,Config),
269
testcase_7a = ?config(testcase_7a,Config),
273
testcase_7b(Config) ->
274
init = ?config(suite,Config),
275
test_group_4 = ?config(test_group_4,Config),
276
test_group_5 = ?config(test_group_5,Config),
277
test_group_6 = ?config(test_group_6,Config),
278
test_group_7 = ?config(test_group_7,Config),
279
undefined = ?config(testcase_7a,Config),
280
testcase_7b = ?config(testcase_7b,Config),