79 lines · 1.5 KB · Shell
RawDownload
#!/bin/bash# perf kwork tests# SPDX-License-Identifier: GPL-2.0 set -e # Root permissions required for tracing events.if [ "$(id -u)" != 0 ]; then	echo "[Skip] No root permission"	exit 2fi err=0perfdata=$(mktemp /tmp/__perf_test_kwork.perf.data.XXXXX) cleanup() {	rm -f "${perfdata}"	rm -f "${perfdata}".old 	trap - EXIT TERM INT} trap_cleanup() {	echo "Unexpected signal in ${FUNCNAME[1]}"	cleanup	exit 1}trap trap_cleanup EXIT TERM INT test_kwork_record() {	echo "Kwork record"	perf kwork record -o "${perfdata}" -- sleep 1	echo "Kwork record [Success]"} test_kwork_report() {	echo "Kwork report"	if ! perf kwork report -i "${perfdata}" | grep -q "Kwork Name"; then		echo "Kwork report [Failed missing output]"		err=1	fi	echo "Kwork report [Success]"} test_kwork_latency() {	echo "Kwork latency"	if ! perf kwork latency -i "${perfdata}" | grep -q "Avg delay"; then		echo "Kwork latency [Failed missing output]"		err=1	fi	echo "Kwork latency [Success]"} test_kwork_timehist() {	echo "Kwork timehist"	if ! perf kwork timehist -i "${perfdata}" | grep -q "Kwork name"; then		echo "Kwork timehist [Failed missing output]"		err=1	fi	echo "Kwork timehist [Success]"} test_kwork_top() {	echo "Kwork top"	if ! perf kwork top -i "${perfdata}" | grep -q "COMMAND"; then		echo "Kwork top [Failed missing output]"		err=1	fi	echo "Kwork top [Success]"} test_kwork_recordtest_kwork_reporttest_kwork_latencytest_kwork_timehisttest_kwork_top cleanupexit $err