github.com/tych0/umoci@v0.4.2/hack/test-unit.sh (about) 1 #!/bin/bash 2 # umoci: Umoci Modifies Open Containers' Images 3 # Copyright (C) 2016, 2017, 2018 SUSE LLC. 4 # 5 # Licensed under the Apache License, Version 2.0 (the "License"); 6 # you may not use this file except in compliance with the License. 7 # You may obtain a copy of the License at 8 # 9 # http://www.apache.org/licenses/LICENSE-2.0 10 # 11 # Unless required by applicable law or agreed to in writing, software 12 # distributed under the License is distributed on an "AS IS" BASIS, 13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 14 # See the License for the specific language governing permissions and 15 # limitations under the License. 16 17 set -ex 18 19 GO="${GO:-go}" 20 PROJECT="${PROJECT:-github.com/openSUSE/umoci}" 21 22 # Set up the root and coverage directories. 23 export ROOT="$(readlink -f "$(dirname "$(readlink -f "$BASH_SOURCE")")/..")" 24 export COVERAGE_DIR=$(mktemp --tmpdir -d umoci-coverage.XXXXXX) 25 26 # Run the tests and collate the results. 27 for pkg in $(go list $PROJECT/...); do 28 $GO test -v -cover -covermode=count -coverprofile="$(mktemp --tmpdir=$COVERAGE_DIR cov.XXXXX)" -coverpkg=$PROJECT/... $pkg 2>/dev/null 29 done 30 [ "$COVERAGE" ] && $ROOT/hack/collate.awk $COVERAGE_DIR/* $COVERAGE | sponge $COVERAGE 31 32 # Clean up the coverage directory. 33 rm -rf "$COVERAGE_DIR"