#!/bin/sh
#------------------------------------------------------------------------------
# =========                 |
# \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
#  \\    /   O peration     |
#   \\  /    A nd           | www.openfoam.com
#    \\/     M anipulation  |
#------------------------------------------------------------------------------
#     Copyright (C) 2011-2016 OpenFOAM Foundation
#     Copyright (C) 2017-2019 OpenCFD Ltd.
#------------------------------------------------------------------------------
# License
#     This file is part of OpenFOAM, licensed under GNU General Public License
#     <http://www.gnu.org/licenses/>.
#
# Script
#     Allrun
#
# Description
#     Run tutorial cases and summarize the outcome as 'testLoopReport'
#
#------------------------------------------------------------------------------
cd "${0%/*}" || exit    # Run from this directory

usage()
{
    exec 1>&2
    while [ "$#" -ge 1 ]; do echo "$1"; shift; done
    cat<<USAGE

usage: ${0##*/} [OPTION]

options:
  -collect          Collect logs only. Can be useful for aborted runs.
  -help             print the usage

Run tutorial cases and summarize the outcome as 'testLoopReport'

USAGE
    exit 1
}

#------------------------------------------------------------------------------
unset optCollect

# Parse options
while [ "$#" -gt 0 ]
do
    case "$1" in
    -h | -help*)
        usage
        ;;
    -collect)
        optCollect=true
        ;;
    -test)   # Known options to pass through
        break
        ;;
    -*)
        usage "unknown option: $1"
        ;;
    *)
        break
        ;;
    esac
    shift
done

#------------------------------------------------------------------------------
. ${WM_PROJECT_DIR:?}/bin/tools/LogFunctions    # Tutorial log-file functions

if [ -z "$optCollect" ]
then
    foamRunTutorials -skipFirst $*              # Run recursively
fi

collectLogs

#------------------------------------------------------------------------------
