blob: 4159a5300cdff2e9831890e51330e90490094099 [file] [log] [blame]
Brandon Kimdab96f12021-02-18 11:21:37 -08001# Copyright 2021 Google LLC
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7# http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
William A. Kennington III7d6fa422021-02-08 17:04:02 -080015# Compares two strings and prints out an error message if they are not equal
16StrEq() {
17 if [ "$1" != "$2" ]; then
18 echo "${BASH_SOURCE[1]}:${BASH_LINENO[0]} Mismatched strings" >&2
19 echo " Expected: $2" >&2
20 echo " Got: $1" >&2
21 exit 1
22 fi
23}
24
25TESTS=()
26
27# Runs tests and emits output specified by the Test Anything Protocol
28# https://testanything.org/
29TestAnythingMain() {
30 set -o nounset
31 set -o errexit
32 set -o pipefail
33
34 echo "TAP version 13"
35 echo "1..${#TESTS[@]}"
36
37 local i
38 for ((i=0; i <${#TESTS[@]}; ++i)); do
39 local t="${TESTS[i]}"
40 local tap_i=$((i + 1))
41 if ! "$t"; then
42 printf "not "
43 fi
44 printf "ok %d - %s\n" "$tap_i" "$t"
45 done
46}