X-Git-Url: https://git.lttng.org/?p=urcu.git;a=blobdiff_plain;f=tests%2Fbenchmark%2Fruntests.sh;h=761a5476b5c0f2f6db614624b94e9f585c04a7df;hp=60011744e67699f3eaaa88181257eec008a3d620;hb=HEAD;hpb=f5ab766ee2c8300cb00ca5878b1cb464f960a66d diff --git a/tests/benchmark/runtests.sh b/tests/benchmark/runtests.sh index 6001174..761a547 100755 --- a/tests/benchmark/runtests.sh +++ b/tests/benchmark/runtests.sh @@ -1,21 +1,38 @@ -#!/bin/sh +#!/usr/bin/env bash +# +# SPDX-License-Identifier: GPL-2.0-only +# +# SPDX-FileCopyrightText: 2022 EfficiOS Inc. +# -. ./common.sh - -log_file="runall.detail.log" - -# Check if time bin is non-empty -if [ -n "$test_time_bin" ]; then - time_command="$test_time_bin -a -o $log_file" +if [ "x${URCU_TESTS_SRCDIR:-}" != "x" ]; then + UTILSSH="$URCU_TESTS_SRCDIR/utils/utils.sh" else - time_command="" + UTILSSH="$(dirname "$0")/../utils/utils.sh" fi -for a in test_urcu_gc test_urcu_signal_gc test_urcu_mb_gc test_urcu_qsbr_gc \ - test_urcu_lgc test_urcu_signal_lgc test_urcu_mb_lgc test_urcu_qsbr_lgc \ - test_urcu test_urcu_signal test_urcu_mb test_urcu_qsbr \ +# Enable TAP +SH_TAP=1 + +# shellcheck source=../utils/utils.sh +source "$UTILSSH" + + +# Create a temporary file for tests output +TMPFILE=$(mktemp) + +# Set trap to delete the temporary file on exit and call tap.sh '_exit' +trap 'rm -f "$TMPFILE"; _exit' EXIT + + +NUM_TESTS=12 + +plan_tests ${NUM_TESTS} + +for a in test_urcu_gc test_urcu_mb_gc test_urcu_qsbr_gc \ + test_urcu_lgc test_urcu_mb_lgc test_urcu_qsbr_lgc \ + test_urcu test_urcu_mb test_urcu_qsbr \ test_rwlock test_perthreadlock test_mutex; do - echo "./${a} $*" | tee -a "$log_file" - $time_command ./${a} $* + okx ${URCU_TESTS_TIME_BIN} "$URCU_TESTS_BUILDDIR/benchmark/${a}" "$@" 2>"${TMPFILE}" + diag "time: $(cat "${TMPFILE}")" done -