# Copyright (C) 2024 Web Server LLC name2macro() { case "$1" in *[a-z/.]*) ;; *) res=$1 return ;; esac OPTIND=1 res= while getopts ":" opt "-$1"; do r= case "$OPTARG" in "a") r="A" ;; "b") r="B" ;; "c") r="C" ;; "d") r="D" ;; "e") r="E" ;; "f") r="F" ;; "g") r="G" ;; "h") r="H" ;; "i") r="I" ;; "j") r="J" ;; "k") r="K" ;; "l") r="L" ;; "m") r="M" ;; "n") r="N" ;; "o") r="O" ;; "p") r="P" ;; "q") r="Q" ;; "r") r="R" ;; "s") r="S" ;; "t") r="T" ;; "u") r="U" ;; "v") r="V" ;; "w") r="W" ;; "x") r="X" ;; "y") r="Y" ;; "z") r="Z" ;; "/") r="_" ;; ".") r="_" ;; *) r="${OPTARG}" ;; esac res="$res$r" done } runtest() { if [ $NGX_TEST_RUNNER != no ]; then $NGX_TEST_RUNNER "$NGX_AUTOTEST" "$1" "$2" >> $NGX_AUTOCONF_ERR 2>&1 else # /bin/sh is used to intercept "Killed" or "Abort trap" messages /bin/sh -c "$NGX_AUTOTEST" >> $NGX_AUTOCONF_ERR 2>&1 fi ngx_rt_res=$? if [ $ngx_rt_res -eq 0 ] && [ "$ngx_feature_run" = "value" ] ; then if [ $NGX_TEST_RUNNER != no ]; then ngx_rtval=$($NGX_TEST_RUNNER "$NGX_AUTOTEST" "$1" "$2") else ngx_rtval=$($NGX_AUTOTEST) fi fi return $ngx_rt_res }