Commit | Line | Data |
---|---|---|
26b53d3b | 1 | #!/bin/bash |
ecce1eb6 CB |
2 | # |
3 | # Copyright (C) - 2012 David Goulet <dgoulet@efficios.com> | |
4 | # | |
5 | # This library is free software; you can redistribute it and/or modify it under | |
6 | # the terms of the GNU Lesser General Public License as published by the Free | |
7 | # Software Foundation; version 2.1 of the License. | |
8 | # | |
9 | # This library is distributed in the hope that it will be useful, but WITHOUT | |
10 | # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS | |
11 | # FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more | |
12 | # details. | |
13 | # | |
14 | # You should have received a copy of the GNU Lesser General Public License | |
15 | # along with this library; if not, write to the Free Software Foundation, Inc., | |
16 | # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA | |
17 | TEST_DESC="UST - Wildcard overlap" | |
26b53d3b | 18 | |
ecce1eb6 CB |
19 | CURDIR=$(dirname $0)/ |
20 | TESTDIR=$CURDIR/../../.. | |
21 | SESSION_NAME="wildcard-overlap" | |
26b53d3b | 22 | |
ecce1eb6 CB |
23 | DEMO_EVENT1="ust_tests_demo:starting" |
24 | DEMO_EVENT1_2="ust_tests_demo:done" | |
25 | DEMO_EVENT2="ust_tests_demo2:loop" | |
26 | DEMO_EVENT3="ust_tests_demo3:done" | |
26b53d3b | 27 | |
ecce1eb6 CB |
28 | NUM_DEMO1_EVENT=1 |
29 | NUM_DEMO1_2_EVENT=1 | |
30 | NUM_DEMO2_EVENT=5 | |
31 | NUM_DEMO3_EVENT=1 | |
26b53d3b | 32 | |
7972aab2 | 33 | NUM_TESTS=259 |
ecce1eb6 CB |
34 | |
35 | source $TESTDIR/utils/utils.sh | |
36 | ||
ecce1eb6 CB |
37 | if [ ! -x "$CURDIR/demo/demo" ]; then |
38 | BAIL_OUT "No UST nevents binary detected." | |
39 | fi | |
40 | ||
41 | # MUST set TESTDIR before calling those functions | |
42 | ||
43 | run_demo_app() | |
44 | { | |
45 | cd $CURDIR/demo | |
46 | ||
47 | # Start test | |
5402fe87 | 48 | diag "Running application" |
ecce1eb6 | 49 | ./demo-trace >/dev/null 2>&1 |
5402fe87 | 50 | ok $? "Application done" |
ecce1eb6 CB |
51 | |
52 | cd - | |
53 | } | |
54 | ||
55 | # Ease our life a bit ;) | |
56 | trace_match_demo1_events() | |
57 | { | |
58 | trace_matches "$DEMO_EVENT1" $NUM_DEMO1_EVENT $TRACE_PATH | |
59 | trace_matches "$DEMO_EVENT1_2" $NUM_DEMO1_EVENT $TRACE_PATH | |
60 | } | |
61 | ||
62 | # Ease our life a bit ;) | |
63 | trace_match_all_demo_events() | |
64 | { | |
65 | trace_match_demo1_events | |
66 | trace_matches "$DEMO_EVENT2" $NUM_DEMO2_EVENT $TRACE_PATH | |
67 | trace_matches "$DEMO_EVENT3" $NUM_DEMO3_EVENT $TRACE_PATH | |
68 | } | |
69 | ||
70 | # Ease our life a bit ;) | |
71 | trace_match_no_demo_events() | |
26b53d3b | 72 | { |
ecce1eb6 CB |
73 | trace_matches "$DEMO_EVENT1" 0 $TRACE_PATH |
74 | trace_matches "$DEMO_EVENT1_2" 0 $TRACE_PATH | |
75 | trace_matches "$DEMO_EVENT2" 0 $TRACE_PATH | |
76 | trace_matches "$DEMO_EVENT3" 0 $TRACE_PATH | |
26b53d3b DG |
77 | } |
78 | ||
ecce1eb6 CB |
79 | # Expect all "demo" events, no duplicate. |
80 | test_enable_simple_wildcard() | |
81 | { | |
82 | local event_wild1="us*" | |
83 | local event_wild2="ust*" | |
84 | ||
85 | diag "Simple wildcard overlap" | |
86 | ||
87 | enable_ust_lttng_event $SESSION_NAME "$event_wild1" | |
88 | enable_ust_lttng_event $SESSION_NAME "$event_wild2" | |
89 | ||
813e19a2 | 90 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
91 | |
92 | run_demo_app | |
93 | ||
813e19a2 | 94 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
95 | |
96 | trace_match_all_demo_events | |
97 | ||
98 | return $? | |
99 | } | |
100 | ||
101 | # Expect all "demo" events, no duplicate. | |
102 | test_enable_wildcard_filter() | |
103 | { | |
104 | local event_wild1="us*" | |
105 | local event_wild2="ust*" | |
106 | ||
107 | diag "Wildcard overlap with filter" | |
108 | ||
109 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==1" | |
110 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==0" | |
111 | ||
813e19a2 | 112 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
113 | |
114 | run_demo_app | |
115 | ||
813e19a2 | 116 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
117 | |
118 | trace_match_all_demo_events | |
119 | return $? | |
120 | } | |
121 | ||
122 | # Expect all "demo" events, no duplicate. | |
123 | test_enable_wildcard_filter_2() | |
124 | { | |
125 | local event_wild1="us*" | |
126 | local event_wild2="ust*" | |
127 | ||
128 | diag "Wildcard overlap with filter 2" | |
129 | ||
130 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==0" | |
131 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==1" | |
132 | ||
813e19a2 | 133 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
134 | |
135 | run_demo_app | |
136 | ||
813e19a2 | 137 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
138 | |
139 | trace_match_all_demo_events | |
140 | return $? | |
141 | } | |
142 | ||
143 | # Expect all "demo" events, no duplicate. | |
144 | test_enable_wildcard_filter_3() | |
145 | { | |
146 | local event_wild1="us*" | |
147 | local event_wild2="ust*" | |
148 | ||
149 | diag "Wildcard overlap with filter 3" | |
150 | ||
151 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==1" | |
152 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==1" | |
153 | ||
813e19a2 | 154 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
155 | |
156 | run_demo_app | |
157 | ||
813e19a2 | 158 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
159 | |
160 | trace_match_all_demo_events | |
161 | return $? | |
162 | } | |
163 | ||
164 | # Expected: No events. | |
165 | test_enable_wildcard_filter_4() | |
166 | { | |
167 | local event_wild1="us*" | |
168 | local event_wild2="ust*" | |
169 | ||
170 | diag "Wildcard overlap with filter 4" | |
171 | ||
172 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==0" | |
173 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==0" | |
174 | ||
813e19a2 | 175 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
176 | |
177 | run_demo_app | |
178 | ||
813e19a2 | 179 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
180 | |
181 | trace_match_no_demo_events | |
182 | return $? | |
183 | } | |
184 | ||
185 | # Expect all "demo" events, no duplicate. | |
186 | test_enable_wildcard_filter_5() | |
187 | { | |
188 | local event_wild1="us*" | |
189 | local event_wild2="$DEMO_EVENT1" | |
190 | ||
191 | diag "Wildcard overlap with filter 5" | |
192 | ||
193 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==1" | |
194 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==0" | |
195 | ||
813e19a2 | 196 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
197 | |
198 | run_demo_app | |
199 | ||
813e19a2 | 200 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
201 | |
202 | trace_match_all_demo_events | |
203 | return $? | |
204 | } | |
205 | ||
206 | # Expect all $DEMO_EVENT1 events, no duplicate. | |
207 | test_enable_wildcard_filter_6() | |
208 | { | |
209 | local event_wild1="us*" | |
210 | local event_wild2="$DEMO_EVENT1" | |
211 | ||
212 | diag "Wildcard overlap with filter 6" | |
213 | ||
214 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==0" | |
215 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==1" | |
216 | ||
813e19a2 | 217 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
218 | |
219 | run_demo_app | |
220 | ||
813e19a2 | 221 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
222 | |
223 | trace_matches $DEMO_EVENT1 $NUM_DEMO1_EVENT $TRACE_PATH | |
224 | trace_matches $DEMO_EVENT1_2 0 $TRACE_PATH | |
225 | trace_matches $DEMO_EVENT2 0 $TRACE_PATH | |
226 | trace_matches $DEMO_EVENT3 0 $TRACE_PATH | |
227 | return $? | |
228 | } | |
229 | ||
230 | # Expect all events, no duplicate. | |
231 | test_enable_wildcard_filter_7() | |
232 | { | |
233 | local event_wild1="us*" | |
234 | local event_wild2="$DEMO_EVENT1" | |
235 | ||
236 | diag "Wildcard overlap with filter 7" | |
237 | ||
238 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==1" | |
239 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==1" | |
240 | ||
813e19a2 | 241 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
242 | |
243 | run_demo_app | |
244 | ||
813e19a2 | 245 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
246 | |
247 | trace_match_all_demo_events | |
248 | return $? | |
249 | } | |
250 | ||
251 | # Expected: No events. | |
252 | test_enable_wildcard_filter_8() | |
253 | { | |
254 | local event_wild1="us*" | |
255 | local event_wild2="$DEMO_EVENT1" | |
256 | ||
257 | diag "Wildcard overlap with filter 8" | |
258 | ||
259 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==0" | |
260 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==0" | |
261 | ||
813e19a2 | 262 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
263 | |
264 | run_demo_app | |
265 | ||
813e19a2 | 266 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
267 | |
268 | trace_match_no_demo_events | |
269 | return $? | |
270 | } | |
271 | ||
272 | # Expect all events. | |
273 | test_enable_same_wildcard_filter() | |
274 | { | |
275 | local event_wild1="ust*" | |
276 | local event_wild2="ust*" | |
277 | ||
278 | diag "Same wildcard overlap with filter" | |
279 | ||
280 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==1&&1==1" | |
281 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==1" | |
282 | ||
813e19a2 | 283 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
284 | |
285 | run_demo_app | |
286 | ||
813e19a2 | 287 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
288 | |
289 | trace_match_all_demo_events | |
290 | return $? | |
291 | } | |
292 | ||
293 | # Expect all events. | |
294 | test_enable_same_wildcard_filter_2() | |
295 | { | |
296 | local event_wild1="ust*" | |
297 | local event_wild2="ust*" | |
298 | ||
299 | diag "Same wildcard overlap with filter 2" | |
300 | ||
301 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==1" | |
302 | ||
7972aab2 | 303 | # Enabling the same events with same filters should fail. This one is expected to fail. |
ecce1eb6 | 304 | $TESTDIR/../src/bin/lttng/$LTTNG_BIN enable-event "$event_wild2" -s $SESSION_NAME -u --filter "1==1" >/dev/null 2>&1 |
7972aab2 | 305 | if [ $? -ne 0 ]; then |
ecce1eb6 CB |
306 | pass "Enable event $event_name with filtering for session $sess_name twice failure detected" |
307 | else | |
7972aab2 | 308 | fail "Enable event $event_name with filtering for session $sess_name twice failure NOT detected" |
ecce1eb6 CB |
309 | fi |
310 | ||
813e19a2 | 311 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
312 | |
313 | run_demo_app | |
314 | ||
813e19a2 | 315 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
316 | |
317 | trace_match_all_demo_events | |
318 | return $? | |
319 | } | |
320 | ||
321 | # Expect all events. | |
322 | test_enable_same_wildcard_filter_3() | |
323 | { | |
324 | local event_wild1="ust*" | |
325 | local event_wild2="ust*" | |
326 | ||
327 | diag "Same wildcard overlap with filter 3" | |
328 | ||
329 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==1" | |
330 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==0" | |
331 | ||
813e19a2 | 332 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
333 | |
334 | run_demo_app | |
335 | ||
813e19a2 | 336 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
337 | |
338 | trace_match_all_demo_events | |
339 | return $? | |
340 | } | |
341 | ||
342 | # Expected: No events. | |
343 | test_enable_same_wildcard_filter_4() | |
344 | { | |
345 | local event_wild1="ust*" | |
346 | local event_wild2="ust*" | |
347 | ||
348 | diag "Same wildcard overlap with filter 4" | |
349 | ||
350 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==0&&1==0" | |
351 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==0" | |
352 | ||
813e19a2 | 353 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
354 | |
355 | run_demo_app | |
356 | ||
813e19a2 | 357 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
358 | |
359 | trace_match_no_demo_events | |
360 | return $? | |
361 | } | |
362 | ||
363 | # Expected: Only $DEMO_EVENT1 | |
364 | test_enable_same_event_filter() | |
365 | { | |
366 | local event_wild1="$DEMO_EVENT1" | |
367 | local event_wild2="$DEMO_EVENT1" | |
368 | ||
369 | diag "Enable same event with filter." | |
370 | ||
371 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==1&&1==1" | |
372 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==1" | |
373 | ||
813e19a2 | 374 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
375 | |
376 | run_demo_app | |
377 | ||
813e19a2 | 378 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
379 | |
380 | trace_matches $DEMO_EVENT1 $NUM_DEMO1_EVENT $TRACE_PATH | |
381 | trace_matches $DEMO_EVENT1_2 0 $TRACE_PATH | |
382 | trace_matches $DEMO_EVENT2 0 $TRACE_PATH | |
383 | trace_matches $DEMO_EVENT3 0 $TRACE_PATH | |
384 | return $? | |
385 | } | |
386 | ||
387 | # Expected: No events. | |
388 | test_disable_same_wildcard_filter() | |
389 | { | |
390 | local event_wild1="ust*" | |
391 | local event_wild2="ust*" | |
392 | ||
393 | diag "Disable same wildcard with filter." | |
394 | ||
395 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild1" "1==1&&1==1" | |
396 | enable_ust_lttng_event_filter $SESSION_NAME "$event_wild2" "1==1" | |
397 | ||
398 | disable_ust_lttng_event $SESSION_NAME "ust*" | |
399 | ||
813e19a2 | 400 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
401 | |
402 | run_demo_app | |
403 | ||
813e19a2 | 404 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
405 | |
406 | trace_match_no_demo_events | |
407 | return $? | |
408 | } | |
409 | ||
410 | # Expect no events | |
411 | test_enable_bad_wildcard() | |
412 | { | |
413 | # Invalid event | |
414 | local event_wild1="ust_tests_demo" | |
415 | local event_wild2="ust_tests_demo2" | |
416 | local event_wild3="ust_tests_demo3" | |
417 | ||
418 | diag "Enable bad wildcard" | |
419 | ||
420 | enable_ust_lttng_event $SESSION_NAME "$event_wild1" | |
421 | enable_ust_lttng_event $SESSION_NAME "$event_wild2" | |
422 | enable_ust_lttng_event $SESSION_NAME "$event_wild3" | |
423 | ||
813e19a2 | 424 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
425 | |
426 | run_demo_app | |
427 | ||
813e19a2 | 428 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
429 | |
430 | trace_match_no_demo_events | |
431 | return $? | |
432 | } | |
433 | ||
434 | # Expect all "demo" events, no duplicate. | |
435 | test_enable_simple_wildcard_2() | |
436 | { | |
437 | local event_wild1="us*" | |
438 | local event_wild2="$DEMO_EVENT1" | |
439 | ||
440 | diag "Simple wildcard 2" | |
441 | ||
442 | enable_ust_lttng_event $SESSION_NAME "$event_wild1" | |
443 | enable_ust_lttng_event $SESSION_NAME "$event_wild2" | |
444 | ||
813e19a2 | 445 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
446 | |
447 | run_demo_app | |
448 | ||
813e19a2 | 449 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
450 | |
451 | trace_match_all_demo_events | |
452 | return $? | |
453 | } | |
454 | ||
455 | # Expected: all CRIT events, + all warning events. | |
456 | test_enable_loglevel_overlap() | |
457 | { | |
458 | local event_wild1="us*" | |
459 | local event_wild2="ust*" | |
460 | ||
461 | diag "Enable loglevel overlap" | |
462 | ||
463 | enable_ust_lttng_event_loglevel $SESSION_NAME "$event_wild1" "TRACE_WARNING" | |
464 | enable_ust_lttng_event_loglevel $SESSION_NAME "$event_wild2" "TRACE_CRIT" | |
465 | ||
813e19a2 | 466 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
467 | |
468 | run_demo_app | |
469 | ||
813e19a2 | 470 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
471 | |
472 | trace_match_all_demo_events | |
473 | return $? | |
474 | } | |
475 | ||
476 | # Expected: all CRIT events, + all warning events. | |
477 | test_enable_loglevel_only_overlap() | |
478 | { | |
479 | local event_wild1="us*" | |
480 | local event_wild2="ust*" | |
481 | ||
482 | diag "Enable loglevel only overlap" | |
483 | ||
484 | enable_ust_lttng_event_loglevel $SESSION_NAME "$event_wild1" "TRACE_WARNING" | |
485 | enable_ust_lttng_event_loglevel_only $SESSION_NAME "$event_wild2" "TRACE_CRIT" | |
486 | ||
813e19a2 | 487 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
488 | |
489 | run_demo_app | |
490 | ||
813e19a2 | 491 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
492 | |
493 | trace_match_all_demo_events | |
494 | return $? | |
495 | } | |
496 | ||
497 | # Expected: all events | |
498 | test_enable_loglevel_overlap_2() | |
499 | { | |
500 | local event_wild1="us*" | |
501 | local event_wild2="$DEMO_EVENT2" | |
502 | ||
503 | diag "Enable loglevel overlap 2" | |
504 | ||
505 | enable_ust_lttng_event_loglevel $SESSION_NAME "$event_wild1" "TRACE_WARNING" | |
506 | enable_ust_lttng_event_loglevel $SESSION_NAME "$event_wild2" "TRACE_CRIT" | |
507 | ||
813e19a2 | 508 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
509 | |
510 | run_demo_app | |
511 | ||
813e19a2 | 512 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
513 | |
514 | trace_match_all_demo_events | |
515 | return $? | |
516 | } | |
517 | ||
518 | # Expected only ust_tests_demo* events. | |
519 | test_enable_same_wildcard_loglevels() | |
520 | { | |
521 | local event_wild1="ust*" | |
522 | local event_wild2="ust*" | |
523 | ||
524 | diag "Enable same wildcard with different loglevels" | |
525 | ||
526 | enable_ust_lttng_event_loglevel $SESSION_NAME "$event_wild1" "TRACE_CRIT" | |
527 | enable_ust_lttng_event_loglevel $SESSION_NAME "$event_wild2" "TRACE_WARNING" | |
528 | ||
813e19a2 | 529 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
530 | |
531 | run_demo_app | |
532 | ||
813e19a2 | 533 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
534 | |
535 | trace_match_all_demo_events | |
536 | return $? | |
537 | } | |
538 | ||
539 | # Expected only ust_tests_demo:starting events. | |
540 | test_enable_same_event_loglevels() | |
541 | { | |
542 | local event_wild1="$DEMO_EVENT1" | |
543 | local event_wild2="$DEMO_EVENT1" | |
544 | ||
545 | diag "Enable same event with different loglevels" | |
546 | ||
547 | enable_ust_lttng_event_loglevel $SESSION_NAME "$event_wild1" "TRACE_CRIT" | |
548 | enable_ust_lttng_event_loglevel $SESSION_NAME "$event_wild2" "TRACE_WARNING" | |
549 | ||
813e19a2 | 550 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
551 | |
552 | run_demo_app | |
553 | ||
813e19a2 | 554 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
555 | |
556 | trace_matches $DEMO_EVENT1 $NUM_DEMO1_EVENT $TRACE_PATH | |
557 | trace_matches $DEMO_EVENT1_2 0 $TRACE_PATH | |
558 | trace_matches $DEMO_EVENT2 0 $TRACE_PATH | |
559 | trace_matches $DEMO_EVENT3 0 $TRACE_PATH | |
560 | return $? | |
561 | } | |
562 | ||
563 | # Expect 0 event | |
564 | test_disable_simple_wildcard() | |
565 | { | |
566 | local event_wild1="us*" | |
567 | local event_wild2="$DEMO_EVENT1" | |
568 | ||
569 | diag "Disable simple wildcard" | |
570 | ||
571 | enable_ust_lttng_event $SESSION_NAME "$event_wild1" | |
572 | enable_ust_lttng_event $SESSION_NAME "$event_wild2" | |
573 | ||
574 | disable_ust_lttng_event $SESSION_NAME "$event_wild1" | |
575 | disable_ust_lttng_event $SESSION_NAME "$event_wild2" | |
576 | ||
813e19a2 | 577 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
578 | |
579 | run_demo_app | |
580 | ||
813e19a2 | 581 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
582 | |
583 | # No events are expected. | |
584 | trace_match_no_demo_events | |
585 | return $? | |
586 | } | |
587 | ||
588 | # Expect only "ust_tests_demo" events. | |
589 | test_disable_wildcard_overlap() | |
590 | { | |
591 | local event_wild1="us*" | |
592 | local event_wild2="$DEMO_EVENT1" | |
593 | ||
594 | diag "Disable wildcard overlap" | |
595 | ||
596 | enable_ust_lttng_event $SESSION_NAME "$event_wild1" | |
597 | enable_ust_lttng_event $SESSION_NAME "$event_wild2" | |
598 | ||
599 | disable_ust_lttng_event $SESSION_NAME "$event_wild1" | |
600 | ||
813e19a2 | 601 | start_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
602 | |
603 | run_demo_app | |
604 | ||
813e19a2 | 605 | stop_lttng_tracing $SESSION_NAME |
ecce1eb6 CB |
606 | |
607 | # Expect only "ust_tests_demo" events. | |
608 | trace_matches "$DEMO_EVENT1" $NUM_DEMO1_EVENT $TRACE_PATH | |
609 | trace_matches "$DEMO_EVENT1_2" 0 $TRACE_PATH | |
610 | trace_matches "$DEMO_EVENT2" 0 $TRACE_PATH | |
611 | trace_matches "$DEMO_EVENT3" 0 $TRACE_PATH | |
612 | return $? | |
613 | } | |
614 | ||
615 | plan_tests $NUM_TESTS | |
616 | ||
e3bef725 CB |
617 | print_test_banner "$TEST_DESC" |
618 | ||
ecce1eb6 CB |
619 | TESTS=( |
620 | "test_enable_wildcard_filter" | |
621 | "test_enable_wildcard_filter_2" | |
622 | "test_enable_wildcard_filter_3" | |
623 | "test_enable_wildcard_filter_4" | |
624 | "test_enable_wildcard_filter_5" | |
625 | "test_enable_wildcard_filter_6" | |
626 | "test_enable_wildcard_filter_7" | |
627 | "test_enable_wildcard_filter_8" | |
628 | "test_enable_same_wildcard_filter" | |
629 | "test_enable_same_wildcard_filter_2" | |
630 | "test_enable_same_wildcard_filter_3" | |
631 | "test_enable_same_wildcard_filter_4" | |
632 | "test_enable_same_event_filter" | |
633 | "test_enable_loglevel_only_overlap" | |
634 | "test_enable_same_event_loglevels" | |
635 | "test_enable_same_wildcard_loglevels" | |
636 | "test_enable_bad_wildcard" | |
637 | "test_enable_loglevel_overlap_2" | |
638 | "test_enable_simple_wildcard" | |
639 | "test_enable_simple_wildcard_2" | |
640 | "test_enable_loglevel_overlap" | |
641 | "test_disable_simple_wildcard" | |
642 | "test_disable_wildcard_overlap" | |
643 | ) | |
644 | ||
645 | TEST_COUNT=${#TESTS[@]} | |
646 | i=0 | |
647 | ||
648 | start_lttng_sessiond | |
649 | ||
650 | while [ "$i" -lt "$TEST_COUNT" ]; do | |
651 | ||
652 | TRACE_PATH=$(mktemp -d) | |
653 | ||
813e19a2 | 654 | create_lttng_session $SESSION_NAME $TRACE_PATH |
ecce1eb6 CB |
655 | |
656 | # Execute test | |
657 | ${TESTS[$i]} | |
ecce1eb6 | 658 | |
813e19a2 | 659 | destroy_lttng_session $SESSION_NAME |
ecce1eb6 CB |
660 | |
661 | rm -rf $TRACE_PATH | |
662 | ||
663 | let "i++" | |
664 | done | |
26b53d3b | 665 | |
ecce1eb6 | 666 | stop_lttng_sessiond |