📄 r1test
字号:
#!/bin/sh# usage: r1test <testcasename># test execution script, for running one test## This file is part of adns, which is# Copyright (C) 1997-2000,2003,2006 Ian Jackson# Copyright (C) 1999-2000,2003,2006 Tony Finch# Copyright (C) 1991 Massachusetts Institute of Technology# (See the file INSTALL for full details.)# # This program is free software; you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation; either version 2, or (at your option)# any later version.# # This program is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the# GNU General Public License for more details.# # You should have received a copy of the GNU General Public License# along with this program; if not, write to the Free Software Foundation,# Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. set -emrc=1trap 'exit $mrc' 0casename="$1"case="case-$casename"ocase="output-$casename"exec 4<"$case.sys"read <&4 program initfile initflagsread <&4 queryargsinitstring="`cat init-$initfile.text`"xinitflagsf=$program-xinitflags.textif test -f $xinitflagsfthen initflags="$initflags `cat $xinitflagsf`";else initflags="$initflags /"firm -f $ocase.*EF_DISABLE_BANNER=1export EF_DISABLE_BANNERif test -f "$case.in"then exec <"$case.in"else exec </dev/nullfiplayback=./${program}_playbackif test ! -f $playbackthen printf "SKIPPED-$casename " mrc=5 exitfiset +eADNS_TEST_REPORT_FD=3 ADNS_TEST_IN_FD=4 \ 3>>"$ocase.report" 4<&4 >"$ocase.out" 2>"$ocase.err" \ $playback $initflags"$initstring" $queryargsrc=$?set -eif [ "$rc" = 5 ]then printf "SKIPPED-$casename " mrc=5 exitfiecho "rc=$rc" >>$ocase.outfailed=falsefor part in err outdo if diff -u -- "$case.$part" "$ocase.$part" then : else failwhy="$failwhy WRONG OUTPUT" fidonecat <&4 >"$ocase.leftover"if egrep . /dev/null "$ocase.leftover"then failwhy="$failwhy EXITED EARLY"fiif [ "x$failwhy" != x ]then scremain="`wc -l <\"$ocase.leftover\"`" echo >&2 "FAILED $case -$failwhy - lines of syscall remaining $scremain" mrc=2 exitfiprintf "$casename "mrc=0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -