3 # Copyright (C) 2019 Simon Marchi <simon.marchi@efficios.com>
5 # This program is free software; you can redistribute it and/or
6 # modify it under the terms of the GNU General Public License
7 # as published by the Free Software Foundation; only version 2
10 # This program is distributed in the hope that it will be useful,
11 # but WITHOUT ANY WARRANTY; without even the implied warranty of
12 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 # GNU General Public License for more details.
15 # You should have received a copy of the GNU General Public License
16 # along with this program; if not, write to the Free Software
17 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
19 # This file tests what happens when we trim at different points in the message
24 if [ "x${BT_TESTS_SRCDIR:-}" != "x" ]; then
25 UTILSSH
="$BT_TESTS_SRCDIR/utils/utils.sh"
27 UTILSSH
="$(dirname "$0")/../../utils/utils.sh"
30 # shellcheck source=../../utils/utils.sh
33 data_dir
="$BT_TESTS_DATADIR/plugins/flt.utils.trimmer"
34 temp_expected
=$
(mktemp
)
43 "-c" "src.test-trimmer.TheSourceOfAllEvil"
44 "-p" "with-stream-msgs-cs=$with_stream_msgs_cs"
45 "-c" "sink.text.details"
46 "--params=compact=true,with-metadata=false"
47 "--plugin-path=$data_dir"
50 if [ -n "$begin_time" ]; then
51 local_args
+=("--begin=$begin_time")
52 test_name
="with --begin=$begin_time"
54 test_name
="without --begin"
57 if [ -n "$end_time" ]; then
58 local_args
+=("--end=$end_time")
59 test_name
="$test_name, with --end=$end_time"
61 test_name
="$test_name, without --end"
64 # with_stream_msgs_cs is set to "true" or "false" by the tests.
66 bt_diff_cli
"$temp_expected" "${local_args[@]}"
70 function test_with_stream_msg_cs
{
71 with_stream_msgs_cs
="true"
73 # Baseline (without trimming)
74 cat <<- 'END' > "$temp_expected"
75 [100 10,100,000,000,000] {0 0 0} Stream beginning
76 [200 10,200,000,000,000] {0 0 0} Packet beginning
77 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
78 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
79 [900 10,900,000,000,000] {0 0 0} Packet end
80 [1000 11,000,000,000,000] {0 0 0} Stream end
84 # Trim begin at a time before what the clock class can represent
85 cat <<- 'END' > "$temp_expected"
86 [100 10,100,000,000,000] {0 0 0} Stream beginning
87 [200 10,200,000,000,000] {0 0 0} Packet beginning
88 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
89 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
90 [900 10,900,000,000,000] {0 0 0} Packet end
91 [1000 11,000,000,000,000] {0 0 0} Stream end
95 # Trim begin before stream beginning
96 cat <<- 'END' > "$temp_expected"
97 [100 10,100,000,000,000] {0 0 0} Stream beginning
98 [200 10,200,000,000,000] {0 0 0} Packet beginning
99 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
100 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
101 [900 10,900,000,000,000] {0 0 0} Packet end
102 [1000 11,000,000,000,000] {0 0 0} Stream end
106 # Trim begin before packet beginning
107 cat <<- 'END' > "$temp_expected"
108 [150 10,150,000,000,000] {0 0 0} Stream beginning
109 [200 10,200,000,000,000] {0 0 0} Packet beginning
110 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
111 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
112 [900 10,900,000,000,000] {0 0 0} Packet end
113 [1000 11,000,000,000,000] {0 0 0} Stream end
117 # Trim begin before first event
118 cat <<- 'END' > "$temp_expected"
119 [250 10,250,000,000,000] {0 0 0} Stream beginning
120 [250 10,250,000,000,000] {0 0 0} Packet beginning
121 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
122 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
123 [900 10,900,000,000,000] {0 0 0} Packet end
124 [1000 11,000,000,000,000] {0 0 0} Stream end
128 # Trim begin before second event
129 cat <<- 'END' > "$temp_expected"
130 [350 10,350,000,000,000] {0 0 0} Stream beginning
131 [350 10,350,000,000,000] {0 0 0} Packet beginning
132 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
133 [900 10,900,000,000,000] {0 0 0} Packet end
134 [1000 11,000,000,000,000] {0 0 0} Stream end
139 # Trim begin before packet end
140 cat <<- 'END' > "$temp_expected"
141 [850 10,850,000,000,000] {0 0 0} Stream beginning
142 [850 10,850,000,000,000] {0 0 0} Packet beginning
143 [900 10,900,000,000,000] {0 0 0} Packet end
144 [1000 11,000,000,000,000] {0 0 0} Stream end
149 # Trim begin after everything
150 cat <<- 'END' > "$temp_expected"
155 # Trim end after stream end
156 cat <<- 'END' > "$temp_expected"
157 [100 10,100,000,000,000] {0 0 0} Stream beginning
158 [200 10,200,000,000,000] {0 0 0} Packet beginning
159 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
160 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
161 [900 10,900,000,000,000] {0 0 0} Packet end
162 [1000 11,000,000,000,000] {0 0 0} Stream end
167 # Trim end after packet end
168 cat <<- 'END' > "$temp_expected"
169 [100 10,100,000,000,000] {0 0 0} Stream beginning
170 [200 10,200,000,000,000] {0 0 0} Packet beginning
171 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
172 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
173 [900 10,900,000,000,000] {0 0 0} Packet end
174 [950 10,950,000,000,000] {0 0 0} Stream end
179 # Trim end after second event
180 cat <<- 'END' > "$temp_expected"
181 [100 10,100,000,000,000] {0 0 0} Stream beginning
182 [200 10,200,000,000,000] {0 0 0} Packet beginning
183 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
184 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
185 [450 10,450,000,000,000] {0 0 0} Packet end
186 [450 10,450,000,000,000] {0 0 0} Stream end
191 # Trim end after first event
192 cat <<- 'END' > "$temp_expected"
193 [100 10,100,000,000,000] {0 0 0} Stream beginning
194 [200 10,200,000,000,000] {0 0 0} Packet beginning
195 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
196 [350 10,350,000,000,000] {0 0 0} Packet end
197 [350 10,350,000,000,000] {0 0 0} Stream end
202 # Trim end after packet beginning
203 cat <<- 'END' > "$temp_expected"
204 [100 10,100,000,000,000] {0 0 0} Stream beginning
205 [200 10,200,000,000,000] {0 0 0} Packet beginning
206 [250 10,250,000,000,000] {0 0 0} Packet end
207 [250 10,250,000,000,000] {0 0 0} Stream end
212 # Trim end after stream beginning
213 cat <<- 'END' > "$temp_expected"
214 [100 10,100,000,000,000] {0 0 0} Stream beginning
215 [150 10,150,000,000,000] {0 0 0} Stream end
220 # Trim end before everything
221 cat <<- 'END' > "$temp_expected"
226 # Trim end at a time before what the clock class can represent
227 cat <<- 'END' > "$temp_expected"
233 function test_without_stream_msg_cs {
234 with_stream_msgs_cs="false"
236 # Baseline (without trimming)
237 cat <<- 'END' > "$temp_expected"
238 [Unknown] {0 0 0} Stream beginning
239 [200 10,200,000,000,000] {0 0 0} Packet beginning
240 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
241 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
242 [900 10,900,000,000,000] {0 0 0} Packet end
243 [Unknown] {0 0 0} Stream end
247 # Trim begin at a time before what the clock class can represent
248 cat <<- 'END' > "$temp_expected"
249 [Unknown] {0 0 0} Stream beginning
250 [200 10,200,000,000,000] {0 0 0} Packet beginning
251 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
252 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
253 [900 10,900,000,000,000] {0 0 0} Packet end
254 [Unknown] {0 0 0} Stream end
258 # Trim begin before stream beginning
259 cat <<- 'END' > "$temp_expected"
260 [Unknown] {0 0 0} Stream beginning
261 [200 10,200,000,000,000] {0 0 0} Packet beginning
262 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
263 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
264 [900 10,900,000,000,000] {0 0 0} Packet end
265 [Unknown] {0 0 0} Stream end
269 # Trim begin before packet beginning
270 cat <<- 'END' > "$temp_expected"
271 [Unknown] {0 0 0} Stream beginning
272 [200 10,200,000,000,000] {0 0 0} Packet beginning
273 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
274 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
275 [900 10,900,000,000,000] {0 0 0} Packet end
276 [Unknown] {0 0 0} Stream end
280 # Trim begin before first event
281 cat <<- 'END' > "$temp_expected"
282 [250 10,250,000,000,000] {0 0 0} Stream beginning
283 [250 10,250,000,000,000] {0 0 0} Packet beginning
284 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
285 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
286 [900 10,900,000,000,000] {0 0 0} Packet end
287 [Unknown] {0 0 0} Stream end
291 # Trim begin before second event
292 cat <<- 'END' > "$temp_expected"
293 [350 10,350,000,000,000] {0 0 0} Stream beginning
294 [350 10,350,000,000,000] {0 0 0} Packet beginning
295 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
296 [900 10,900,000,000,000] {0 0 0} Packet end
297 [Unknown] {0 0 0} Stream end
302 # Trim begin before packet end
303 cat <<- 'END' > "$temp_expected"
304 [850 10,850,000,000,000] {0 0 0} Stream beginning
305 [850 10,850,000,000,000] {0 0 0} Packet beginning
306 [900 10,900,000,000,000] {0 0 0} Packet end
307 [Unknown] {0 0 0} Stream end
312 # Trim begin after everything
313 cat <<- 'END' > "$temp_expected"
318 # Trim end after stream end
319 cat <<- 'END' > "$temp_expected"
320 [Unknown] {0 0 0} Stream beginning
321 [200 10,200,000,000,000] {0 0 0} Packet beginning
322 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
323 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
324 [900 10,900,000,000,000] {0 0 0} Packet end
325 [Unknown] {0 0 0} Stream end
330 # Trim end after packet end
331 cat <<- 'END' > "$temp_expected"
332 [Unknown] {0 0 0} Stream beginning
333 [200 10,200,000,000,000] {0 0 0} Packet beginning
334 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
335 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
336 [900 10,900,000,000,000] {0 0 0} Packet end
337 [Unknown] {0 0 0} Stream end
342 # Trim end after second event
343 cat <<- 'END' > "$temp_expected"
344 [Unknown] {0 0 0} Stream beginning
345 [200 10,200,000,000,000] {0 0 0} Packet beginning
346 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
347 [400 10,400,000,000,000] {0 0 0} Event `event 2` (1)
348 [450 10,450,000,000,000] {0 0 0} Packet end
349 [450 10,450,000,000,000] {0 0 0} Stream end
354 # Trim end after first event
355 cat <<- 'END' > "$temp_expected"
356 [Unknown] {0 0 0} Stream beginning
357 [200 10,200,000,000,000] {0 0 0} Packet beginning
358 [300 10,300,000,000,000] {0 0 0} Event `event 1` (0)
359 [350 10,350,000,000,000] {0 0 0} Packet end
360 [350 10,350,000,000,000] {0 0 0} Stream end
365 # Trim end after packet beginning
366 cat <<- 'END' > "$temp_expected"
367 [Unknown] {0 0 0} Stream beginning
368 [200 10,200,000,000,000] {0 0 0} Packet beginning
369 [250 10,250,000,000,000] {0 0 0} Packet end
370 [250 10,250,000,000,000] {0 0 0} Stream end
375 # Trim end after stream beginning
376 cat <<- 'END' > "$temp_expected"
377 [Unknown] {0 0 0} Stream beginning
378 [Unknown] {0 0 0} Stream end
383 # Trim end before everything
384 cat <<- 'END' > "$temp_expected"
385 [Unknown] {0 0 0} Stream beginning
386 [Unknown] {0 0 0} Stream end
391 # Trim end at a time before what the clock class can represent
392 cat <<- 'END' > "$temp_expected"
393 [Unknown] {0 0 0} Stream beginning
394 [Unknown] {0 0 0} Stream end
400 test_with_stream_msg_cs
401 test_without_stream_msg_cs
403 rm -f "$temp_expected"
This page took 0.072901 seconds and 4 git commands to generate.