Commit | Line | Data |
---|---|---|
00eb21af DG |
1 | #!/bin/bash |
2 | # | |
9d16b343 | 3 | # Copyright (C) 2012 David Goulet <dgoulet@efficios.com> |
00eb21af | 4 | # |
9d16b343 MJ |
5 | # SPDX-License-Identifier: LGPL-2.1-only |
6 | ||
c38b5107 | 7 | TEST_DESC="UST tracer - Multi-session" |
00eb21af DG |
8 | |
9 | CURDIR=$(dirname $0)/ | |
9ac429ef | 10 | TESTDIR=$CURDIR/../../.. |
00eb21af DG |
11 | NR_ITER=100 |
12 | SESSION_NAME="multi-session" | |
13 | EVENT_NAME="ust_gen_nevents:tptest" | |
c1f5d7d5 | 14 | NUM_TESTS=28 |
00eb21af | 15 | |
9ac429ef | 16 | source $TESTDIR/utils/utils.sh |
00eb21af | 17 | |
00eb21af | 18 | if [ ! -x "$CURDIR/gen-nevents" ]; then |
c1f5d7d5 | 19 | BAIL_OUT "No UST nevents binary detected." |
00eb21af DG |
20 | fi |
21 | ||
22 | # MUST set TESTDIR before calling those functions | |
23 | ||
24 | test_multi_session() { | |
25 | local out | |
26 | ||
27 | # BEFORE application is spawned | |
28 | for i in `seq 0 3`; do | |
bf6ae429 | 29 | create_lttng_session_ok "$SESSION_NAME-$i" "$TRACE_PATH/$i" |
c4926bb5 | 30 | enable_ust_lttng_event_ok "$SESSION_NAME-$i" "$EVENT_NAME$i" |
e563bbdb | 31 | start_lttng_tracing_ok "$SESSION_NAME-$i" |
00eb21af DG |
32 | done |
33 | ||
00eb21af | 34 | ./$CURDIR/gen-nevents $NR_ITER & |
c1f5d7d5 | 35 | ok $? "Start application to generate $NR_ITER events" |
00eb21af | 36 | |
c7613334 | 37 | wait |
c1f5d7d5 | 38 | pass "Wait for events to record" |
00eb21af DG |
39 | |
40 | for i in `seq 0 3`; do | |
96340a01 | 41 | stop_lttng_tracing_ok "$SESSION_NAME-$i" |
67b4c664 | 42 | destroy_lttng_session_ok "$SESSION_NAME-$i" |
00eb21af DG |
43 | out=$(babeltrace "$TRACE_PATH/$i" | grep "$EVENT_NAMEi$i" | wc -l) |
44 | if [ $out -ne $NR_ITER ]; then | |
c1f5d7d5 CB |
45 | fail "Trace validation of $SESSION_NAME-$i" |
46 | diag "No events found." | |
00eb21af | 47 | out=1 |
c1f5d7d5 | 48 | break |
00eb21af | 49 | else |
c1f5d7d5 CB |
50 | pass "Trace validation of $SESSION_NAME-$i" |
51 | diag "Found $out event(s) for $SESSION_NAME-$i." | |
00eb21af DG |
52 | out=0 |
53 | fi | |
54 | done | |
55 | ||
56 | return $out | |
57 | } | |
58 | ||
59 | # MUST set TESTDIR before calling those functions | |
60 | ||
c1f5d7d5 CB |
61 | plan_tests $NUM_TESTS |
62 | ||
e3bef725 CB |
63 | print_test_banner "$TEST_DESC" |
64 | ||
fb3268e3 | 65 | start_lttng_sessiond |
00eb21af | 66 | |
33e55711 | 67 | TRACE_PATH=$(mktemp --tmpdir -d tmp.test_multi_session_ust.XXXXXX) |
00eb21af DG |
68 | |
69 | test_multi_session | |
70 | out=$? | |
71 | if [ $out -ne 0 ]; then | |
fb3268e3 | 72 | stop_lttng_sessiond |
00eb21af DG |
73 | exit $out |
74 | fi | |
75 | ||
fb3268e3 | 76 | stop_lttng_sessiond |
00eb21af DG |
77 | |
78 | rm -rf "$TRACE_PATH" |