Edit

kc3-lang/kc3/test/ikc3_test

Branch :

  • test/ikc3_test
  • #!/bin/sh
    ## kc3
    ## Copyright from 2022 to 2026 kmx.io <contact@kmx.io>
    ##
    ## Permission is hereby granted to use this software granted the above
    ## copyright notice and this permission paragraph are included in all
    ## copies and substantial portions of this software.
    ##
    ## THIS SOFTWARE IS PROVIDED "AS-IS" WITHOUT ANY GUARANTEE OF
    ## PURPOSE AND PERFORMANCE. IN NO EVENT WHATSOEVER SHALL THE
    ## AUTHOR BE CONSIDERED LIABLE FOR THE USE AND PERFORMANCE OF
    ## THIS SOFTWARE.
    
    TEST_NAME=ikc3
    
    TEST_TOP="$(cd "$(dirname "$0")" && pwd)"
    
    cd "${TEST_TOP}/${TEST_NAME}" || exit
    
    . ../test.subr
    
    if [ $# = 0 ]; then
        if [ "x${IKC3_TEST}" = "x" ]; then
            TARGETS="$(ls -1 *.kc3 | sed -e 's/[.]kc3$//')"
            case "$IKC3" in
                *_asan)
                    TARGETS="$(echo "${TARGETS}" |
                                    grep -E -v -e '^block$' \
                                               -e '^unwind_protect$' \
                                               -e '^while$')"
                    ;;
                *)
                    ;;
            esac
    	case "$(uname)" in
    	    Darwin)
    		TARGETS="$(echo "$TARGETS" |
    				grep -E -v -e '^thread$')"
    		;;
    	esac
        else
            TARGETS="$(echo "${IKC3_TEST}" | tr ' ' '\n')"
        fi
    else
        TARGETS="$(echo "$@" | tr ' ' '\n')"
    fi
    
    : ${IKC3=${TEST_TOP}/../ikc3/ikc3}
    
    test_run "$IKC3" $TARGETS