tests/unittest.sh
53753293
 #!/usr/bin/env bash
 
 # Licensed under the Apache License, Version 2.0 (the "License"); you may
 # not use this file except in compliance with the License. You may obtain
 # a copy of the License at
 #
 #      http://www.apache.org/licenses/LICENSE-2.0
 #
 # Unless required by applicable law or agreed to in writing, software
 # distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
 # WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
 # License for the specific language governing permissions and limitations
 # under the License.
 
 # we always start with no errors
 ERROR=0
 FAILED_FUNCS=""
 
 function assert_equal {
     local lineno=`caller 0 | awk '{print $1}'`
     local function=`caller 0 | awk '{print $2}'`
     local msg=$3
     if [[ "$1" != "$2" ]]; then
         FAILED_FUNCS+="$function:L$lineno\n"
         echo "ERROR: $1 != $2 in $function:L$lineno!"
         echo "  $msg"
         ERROR=1
     else
         echo "$function:L$lineno - ok"
     fi
 }
 
 function report_results {
     if [[ $ERROR -eq 1 ]]; then
         echo "Tests FAILED"
         echo $FAILED_FUNCS
         exit 1
     fi
 }