]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
test: Log execution time
authorMariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
Mon, 25 Nov 2024 09:17:15 +0000 (10:17 +0100)
committerMariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
Wed, 27 Nov 2024 12:55:06 +0000 (13:55 +0100)
To start optymalizing test suite, we need to know which tests are the
most time consuming. Log execution time after every test.

Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@linux.intel.com>
test

diff --git a/test b/test
index f8f07ff4bec77460550e3e3d2e8a49a41d8bd8ec..76e64ea7c9fbae1493823945757ee2e83d090f12 100755 (executable)
--- a/test
+++ b/test
@@ -95,11 +95,22 @@ mdadm() {
        return $rv
 }
 
+print_time_elapsed() {
+       local start_sec=$1
+       local end_sec=$(date +%s)
+
+       local execution_time=$((end_sec - start_sec))
+
+       echo -ne "Execution time (seconds): ${execution_time} "
+}
+
 do_test() {
        _script=$1
        _basename=`basename $_script`
        _broken=0
 
+       local start_sec=$(date +%s)
+
        if [ -f "$_script" ]
        then
                if [ -f "${_script}.broken" ]; then
@@ -121,6 +132,7 @@ do_test() {
                echo -ne "$_script... "
                if ( set -ex ; . $_script ) &> $targetdir/log
                then
+                       print_time_elapsed $start_sec
                        if [ -f "${_script}.inject_error" ]; then
                                echo "dmesg checking is skipped because test inject error"
                        else
@@ -130,6 +142,7 @@ do_test() {
                        succeed "succeeded\n"
                        _fail=0
                else
+                       print_time_elapsed $start_sec
                        save_log fail
                        _fail=1
                        if [ "$_broken" == "1" ]; then