legacy_test.sh revision 174658
1174657Sdds#!/bin/sh 2174657Sdds# $FreeBSD: head/tools/regression/bin/mv/regress.sh 174658 2007-12-16 08:25:34Z dds $ 3174657Sdds 4174657Sdds# A directory in a device different from that where the tests are run 5174657SddsTMPDIR=/tmp/regress.$$ 6174657SddsCOUNT=0 7174657Sdds 8174657Sdds# Begin an individual test 9174657Sddsbegin() 10174657Sdds{ 11174657Sdds COUNT=`expr $COUNT + 1` 12174657Sdds OK=1 13174657Sdds if [ -z "$FS" ] 14174657Sdds then 15174657Sdds NAME="$1" 16174657Sdds else 17174657Sdds NAME="$1 (cross device)" 18174657Sdds fi 19174657Sdds rm -rf testdir $TMPDIR/testdir 20174657Sdds mkdir -p testdir $TMPDIR/testdir 21174657Sdds cd testdir 22174657Sdds} 23174657Sdds 24174657Sdds# End an individual test 25174657Sddsend() 26174657Sdds{ 27174657Sdds if [ $OK = 1 ] 28174657Sdds then 29174657Sdds echo -n 'ok ' 30174657Sdds else 31174657Sdds echo -n 'not ok ' 32174657Sdds fi 33174657Sdds echo "$COUNT - $NAME" 34174657Sdds cd .. 35174657Sdds rm -rf testdir $TMPDIR/testdir 36174657Sdds} 37174657Sdds 38174657Sdds# Make a file that can later be verified 39174657Sddsmkf() 40174657Sdds{ 41174657Sdds CN=`basename $1` 42174657Sdds echo "$CN-$CN" >$1 43174657Sdds} 44174657Sdds 45174657Sdds# Verify that the file specified is correct 46174657Sddsckf() 47174657Sdds{ 48174657Sdds if [ -f $2 ] && echo "$1-$1" | diff -q - $2 49174657Sdds then 50174657Sdds ok 51174657Sdds else 52174657Sdds notok 53174657Sdds fi 54174657Sdds} 55174657Sdds 56174657Sdds# Make a fifo that can later be verified 57174657Sddsmkp() 58174657Sdds{ 59174657Sdds mkfifo $1 60174657Sdds} 61174657Sdds 62174657Sdds# Verify that the file specified is correct 63174657Sddsckp() 64174657Sdds{ 65174657Sdds if [ -p $2 ] 66174657Sdds then 67174657Sdds ok 68174657Sdds else 69174657Sdds notok 70174657Sdds fi 71174657Sdds} 72174657Sdds 73174657Sdds# Make a directory that can later be verified 74174657Sddsmkd() 75174657Sdds{ 76174657Sdds CN=`basename $1` 77174657Sdds mkdir -p $1/"$CN-$CN" 78174657Sdds} 79174657Sdds 80174657Sdds# Verify that the directory specified is correct 81174657Sddsckd() 82174657Sdds{ 83174657Sdds if [ -d $2/$1-$1 ] 84174657Sdds then 85174657Sdds ok 86174657Sdds else 87174657Sdds notok 88174657Sdds fi 89174657Sdds} 90174657Sdds 91174658Sdds# Verify that the specified file does not exist 92174658Sdds# (is not there) 93174658Sddscknt() 94174658Sdds{ 95174658Sdds if [ -e $1 ] 96174658Sdds then 97174658Sdds notok 98174658Sdds else 99174658Sdds ok 100174658Sdds fi 101174658Sdds} 102174658Sdds 103174657Sdds# A part of a test succeeds 104174657Sddsok() 105174657Sdds{ 106174657Sdds : 107174657Sdds} 108174657Sdds 109174657Sdds# A part of a test fails 110174657Sddsnotok() 111174657Sdds{ 112174657Sdds OK=0 113174657Sdds} 114174657Sdds 115174657Sdds# Run all tests locally and across devices 116174657Sddsecho 1..24 117174657Sddsfor FS in '' $TMPDIR/testdir/ 118174657Sddsdo 119174657Sdds begin 'Rename file' 120174657Sdds mkf fa 121174657Sdds mv fa ${FS}fb 122174657Sdds ckf fa ${FS}fb 123174658Sdds cknt fa 124174657Sdds end 125174657Sdds 126174657Sdds begin 'Move files into directory' 127174657Sdds mkf fa 128174657Sdds mkf fb 129174657Sdds mkdir -p ${FS}1/2/3 130174657Sdds mv fa fb ${FS}1/2/3 131174657Sdds ckf fa ${FS}1/2/3/fa 132174657Sdds ckf fb ${FS}1/2/3/fb 133174658Sdds cknt fa 134174658Sdds cknt fb 135174657Sdds end 136174657Sdds 137174657Sdds begin 'Move file from directory to file' 138174657Sdds mkdir -p 1/2/3 139174657Sdds mkf 1/2/3/fa 140174657Sdds mv 1/2/3/fa ${FS}fb 141174657Sdds ckf fa ${FS}fb 142174658Sdds cknt 1/2/3/fa 143174657Sdds end 144174657Sdds 145174657Sdds begin 'Move file from directory to directory' 146174657Sdds mkdir -p da1/da2/da3 147174657Sdds mkdir -p ${FS}db1/db2/db3 148174657Sdds mkf da1/da2/da3/fa 149174657Sdds mv da1/da2/da3/fa ${FS}db1/db2/db3/fb 150174657Sdds ckf fa ${FS}db1/db2/db3/fb 151174658Sdds cknt da1/da2/da3/fa 152174657Sdds end 153174657Sdds 154174657Sdds begin 'Rename directory' 155174657Sdds mkd da 156174657Sdds mv da ${FS}db 157174657Sdds ckd da ${FS}db 158174658Sdds cknt da 159174657Sdds end 160174657Sdds 161174657Sdds begin 'Move directory to directory name' 162174657Sdds mkd da1/da2/da3/da 163174657Sdds mkdir -p ${FS}db1/db2/db3 164174657Sdds mv da1/da2/da3/da ${FS}db1/db2/db3/db 165174657Sdds ckd da ${FS}db1/db2/db3/db 166174658Sdds cknt da1/da2/da3/da 167174657Sdds end 168174657Sdds 169174657Sdds begin 'Move directory to directory' 170174657Sdds mkd da1/da2/da3/da 171174657Sdds mkdir -p ${FS}db1/db2/db3 172174657Sdds mv da1/da2/da3/da ${FS}db1/db2/db3 173174657Sdds ckd da ${FS}db1/db2/db3/da 174174658Sdds cknt da1/da2/da3/da 175174657Sdds end 176174657Sdds 177174657Sdds begin 'Move directory to existing directory' 178174657Sdds mkd da1/da2/da3/da 179174657Sdds mkdir -p ${FS}db1/db2/db3/da 180174657Sdds mv da1/da2/da3/da ${FS}db1/db2/db3 181174657Sdds ckd da ${FS}db1/db2/db3/da 182174658Sdds cknt da1/da2/da3/da 183174657Sdds end 184174657Sdds 185174657Sdds begin 'Rename fifo' 186174657Sdds mkp fa 187174657Sdds mv fa ${FS}fb 188174657Sdds ckp fa ${FS}fb 189174658Sdds cknt fa 190174657Sdds end 191174657Sdds 192174657Sdds begin 'Move fifos into directory' 193174657Sdds mkp fa 194174657Sdds mkp fb 195174657Sdds mkdir -p ${FS}1/2/3 196174657Sdds mv fa fb ${FS}1/2/3 197174657Sdds ckp fa ${FS}1/2/3/fa 198174657Sdds ckp fb ${FS}1/2/3/fb 199174658Sdds cknt fa 200174658Sdds cknt fb 201174657Sdds end 202174657Sdds 203174657Sdds begin 'Move fifo from directory to fifo' 204174657Sdds mkdir -p 1/2/3 205174657Sdds mkp 1/2/3/fa 206174657Sdds mv 1/2/3/fa ${FS}fb 207174657Sdds ckp fa ${FS}fb 208174658Sdds cknt 1/2/3/fa 209174657Sdds end 210174657Sdds 211174657Sdds begin 'Move fifo from directory to directory' 212174657Sdds mkdir -p da1/da2/da3 213174657Sdds mkdir -p ${FS}db1/db2/db3 214174657Sdds mkp da1/da2/da3/fa 215174657Sdds mv da1/da2/da3/fa ${FS}db1/db2/db3/fb 216174657Sdds ckp fa ${FS}db1/db2/db3/fb 217174658Sdds cknt da1/da2/da3/fa 218174657Sdds end 219174657Sddsdone 220