1 2header="""#!/usr/bin/env bash 3# This script was created by gmakegentest.py 4 5@COMMENTS@ 6 7@ENV@ 8 9# PATH for DLLs on windows 10PATH="$PATH":@PETSC_LIB_DIR@ 11exec='@EXEC@' 12testname='@TESTNAME@' 13label='@LABEL@' 14runfiles='@LOCALRUNFILES@' 15wPETSC_DIR='@WPETSC_DIR@' 16@PKG_NAME@_dir='@PKG_DIR@' 17@PKG_NAME@_arch='@PKG_ARCH@' 18# Must be consistent with gmakefile.test 19testlogtapfile=@TESTROOT@/test_${@PKG_NAME@_arch}_tap.log 20testlogerrfile=@TESTROOT@/test_${@PKG_NAME@_arch}_err.log 21config_dir='@CONFIG_DIR@' 22filter='@FILTER@' 23filter_output='@FILTER_OUTPUT@' 24petsc_bindir='@PETSC_BINDIR@' 25@DATAFILESPATH_LINE@ 26# -petsc_ci must be a command line argument because if it is from the environment it will be listed by PetscOptionsMonitor() 27args='-petsc_ci @ARGS@' 28diff_args='@DIFF_ARGS@' 29timeoutfactor=@TIMEOUTFACTOR@ 30export PETSC_OPTIONS="${PETSC_OPTIONS} -check_pointer_intensity 0 -error_output_stdout -malloc_dump @PETSC_TEST_OPTIONS@" 31 32mpiexec=${PETSCMPIEXEC:-"@MPIEXEC@"} 33diffexec=${PETSCDIFF:-"${petsc_bindir}/petscdiff"} 34mpiexec_tail='@MPIEXEC_TAIL@' 35 36. "${config_dir}/petsc_harness.sh" 37 38# The diff flags come from script arguments 39diff_exe="${diffexec} ${diff_flags} ${diff_args}" 40mpiexec="${mpiexec} ${mpiexec_flags}" 41""" 42 43footer='petsc_testend "@TESTROOT@" ' 44 45preclean='@RM@ @TEMPORARIES@' 46todoline='petsc_report_tapoutput "" "${label}" "TODO @TODOCOMMENT@"' 47skipline='petsc_report_tapoutput "" "${label}" "SKIP @SKIPCOMMENT@"' 48mpitest='petsc_testrun "${mpiexec} -n ${insize} ${mpiexec_tail} ${exec} ${args} @SUBARGS@" @REDIRECT_FILE@ ${testname}.err "${label}@LABEL_SUFFIX@" @ERROR@' 49difftest='petsc_testrun "${diff_exe} @OUTPUT_FILE@ @REDIRECT_FILE@" diff-${testname}.out diff-${testname}.out diff-${label}@LABEL_SUFFIX@ ""' 50commandtest='petsc_testrun "@COMMAND@" @REDIRECT_FILE@ ${testname}.err cmd-${label}@LABEL_SUFFIX@ @ERROR@' 51