--- /dev/null
+#!/bin/bash
+#
+# Copyright (C) 2019 Francis Deslauriers <francis.deslauriers@efficios.com>
+#
+# This program is free software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; only version 2
+# of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+# This file tests what happens when we mux messages.
+
+SH_TAP=1
+
+if [ "x${BT_TESTS_SRCDIR:-}" != "x" ]; then
+ UTILSSH="$BT_TESTS_SRCDIR/utils/utils.sh"
+else
+ UTILSSH="$(dirname "$0")/../../utils/utils.sh"
+fi
+
+# shellcheck source=../../utils/utils.sh
+source "$UTILSSH"
+
+data_dir="$BT_TESTS_DATADIR/plugins/flt.utils.muxer"
+
+plan_tests 12
+
+function run_test
+{
+ local test_name="$1"
+ local local_args=(
+ "-c" "src.test-muxer.TheSourceOfConfusion"
+ "-p" "test-name=$test_name"
+ "-c" "sink.text.details"
+ "--params=compact=false,with-metadata=false"
+ "--plugin-path=$data_dir"
+ )
+
+ stdout_expected="$data_dir/succeed/$test_name.expect"
+ bt_diff_cli "$stdout_expected" /dev/null "${local_args[@]}"
+ ok $? "$test_name"
+}
+
+
+test_cases=(
+ basic_timestamp_ordering
+ diff_event_class_id
+ diff_event_class_name
+ diff_inactivity_msg_cs
+ diff_stream_class_id
+ diff_stream_class_name
+ diff_stream_class_no_name
+ diff_stream_id
+ diff_stream_name
+ diff_stream_no_name
+ diff_trace_name
+ multi_iter_ordering
+)
+
+for i in "${test_cases[@]}"
+do
+ run_test $i
+done