Blame scripts/merge-test-results.sh

Packit Service 82fcde
#!/bin/sh
Packit Service 82fcde
# Merge test results of individual tests or subdirectories.
Packit Service 82fcde
# Copyright (C) 2014-2018 Free Software Foundation, Inc.
Packit Service 82fcde
# This file is part of the GNU C Library.
Packit Service 82fcde
Packit Service 82fcde
# The GNU C Library is free software; you can redistribute it and/or
Packit Service 82fcde
# modify it under the terms of the GNU Lesser General Public
Packit Service 82fcde
# License as published by the Free Software Foundation; either
Packit Service 82fcde
# version 2.1 of the License, or (at your option) any later version.
Packit Service 82fcde
Packit Service 82fcde
# The GNU C Library is distributed in the hope that it will be useful,
Packit Service 82fcde
# but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service 82fcde
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
Packit Service 82fcde
# Lesser General Public License for more details.
Packit Service 82fcde
Packit Service 82fcde
# You should have received a copy of the GNU Lesser General Public
Packit Service 82fcde
# License along with the GNU C Library; if not, see
Packit Service 82fcde
# <http://www.gnu.org/licenses/>.
Packit Service 82fcde
Packit Service 82fcde
# usage: merge-test-results.sh -s objpfx subdir test-name...
Packit Service 82fcde
# (subdirectory tests; empty subdir at top level), or
Packit Service 82fcde
#        merge-test-results.sh -t objpfx subdir-file-name subdir...
Packit Service 82fcde
# (top-level merge)
Packit Service 82fcde
Packit Service 82fcde
set -e
Packit Service 82fcde
Packit Service 82fcde
type=$1
Packit Service 82fcde
objpfx=$2
Packit Service 82fcde
shift 2
Packit Service 82fcde
Packit Service 82fcde
case $type in
Packit Service 82fcde
  -s)
Packit Service 82fcde
    subdir=$1
Packit Service 82fcde
    shift
Packit Service 82fcde
    subdir=${subdir:+$subdir/}
Packit Service 82fcde
    for t in "$@"; do
Packit Service 82fcde
      if [ -s "$objpfx$t.test-result" ]; then
Packit Service 82fcde
	head -n1 "$objpfx$t.test-result"
Packit Service 82fcde
      else
Packit Service 82fcde
	echo "UNRESOLVED: $subdir$t"
Packit Service 82fcde
      fi
Packit Service 82fcde
    done
Packit Service 82fcde
    ;;
Packit Service 82fcde
Packit Service 82fcde
  -t)
Packit Service 82fcde
    subdir_file_name=$1
Packit Service 82fcde
    shift
Packit Service 82fcde
    for d in "$@"; do
Packit Service 82fcde
      if [ -f "$objpfx$d/$subdir_file_name" ]; then
Packit Service 82fcde
	cat "$objpfx$d/$subdir_file_name"
Packit Service 82fcde
      else
Packit Service 82fcde
	echo "ERROR: test results for $d directory missing"
Packit Service 82fcde
      fi
Packit Service 82fcde
    done
Packit Service 82fcde
    ;;
Packit Service 82fcde
Packit Service 82fcde
  *)
Packit Service 82fcde
    echo "unknown type $type" >&2
Packit Service 82fcde
    exit 1
Packit Service 82fcde
    ;;
Packit Service 82fcde
esac