mirror of
https://git.FreeBSD.org/src.git
synced 2024-11-23 07:31:31 +00:00
mv: Convert tests to ATF.
Sponsored by: Klara, Inc. Reviewed by: asomers, markj Differential Revision: https://reviews.freebsd.org/D47569
This commit is contained in:
parent
dc6105ebed
commit
2822a79533
@ -51,6 +51,9 @@
|
||||
# xargs -n1 | sort | uniq -d;
|
||||
# done
|
||||
|
||||
# 20241119: rewrite mv tests
|
||||
OLD_FILES+=usr/tests/bin/mv/legacy_test
|
||||
|
||||
# 20241112: Retire MK_PROFILE support
|
||||
OLD_FILES+=usr/lib/lib80211_p.a
|
||||
OLD_FILES+=usr/lib/lib9p_p.a
|
||||
|
@ -1,5 +1,5 @@
|
||||
.include <bsd.own.mk>
|
||||
|
||||
TAP_TESTS_SH= legacy_test
|
||||
ATF_TESTS_SH= mv_test
|
||||
|
||||
.include <bsd.test.mk>
|
||||
|
@ -1,295 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
# A directory in a device different from that where the tests are run
|
||||
TMPDIR=/tmp/regress.$$
|
||||
COUNT=0
|
||||
|
||||
# Begin an individual test
|
||||
begin()
|
||||
{
|
||||
COUNT=`expr $COUNT + 1`
|
||||
OK=1
|
||||
if [ -z "$FS" ]
|
||||
then
|
||||
NAME="$1"
|
||||
else
|
||||
NAME="$1 (cross device)"
|
||||
fi
|
||||
rm -rf testdir $TMPDIR/testdir
|
||||
mkdir -p testdir $TMPDIR/testdir
|
||||
cd testdir
|
||||
}
|
||||
|
||||
# End an individual test
|
||||
end()
|
||||
{
|
||||
if [ $OK = 1 ]
|
||||
then
|
||||
printf 'ok '
|
||||
else
|
||||
printf 'not ok '
|
||||
fi
|
||||
echo "$COUNT - $NAME"
|
||||
cd ..
|
||||
rm -rf testdir $TMPDIR/testdir
|
||||
}
|
||||
|
||||
# Make a file that can later be verified
|
||||
mkf()
|
||||
{
|
||||
CN=`basename $1`
|
||||
echo "$CN-$CN" >$1
|
||||
}
|
||||
|
||||
# Verify that the file specified is correct
|
||||
ckf()
|
||||
{
|
||||
if [ -f $2 ] && echo "$1-$1" | diff - $2 >/dev/null
|
||||
then
|
||||
ok
|
||||
else
|
||||
notok
|
||||
fi
|
||||
}
|
||||
|
||||
# Make a fifo that can later be verified
|
||||
mkp()
|
||||
{
|
||||
mkfifo $1
|
||||
}
|
||||
|
||||
# Verify that the file specified is correct
|
||||
ckp()
|
||||
{
|
||||
if [ -p $2 ]
|
||||
then
|
||||
ok
|
||||
else
|
||||
notok
|
||||
fi
|
||||
}
|
||||
|
||||
# Make a directory that can later be verified
|
||||
mkd()
|
||||
{
|
||||
CN=`basename $1`
|
||||
mkdir -p $1/"$CN-$CN"
|
||||
}
|
||||
|
||||
# Verify that the directory specified is correct
|
||||
ckd()
|
||||
{
|
||||
if [ -d $2/$1-$1 ]
|
||||
then
|
||||
ok
|
||||
else
|
||||
notok
|
||||
fi
|
||||
}
|
||||
|
||||
# Verify that the specified file does not exist
|
||||
# (is not there)
|
||||
cknt()
|
||||
{
|
||||
if [ -r $1 ]
|
||||
then
|
||||
notok
|
||||
else
|
||||
ok
|
||||
fi
|
||||
}
|
||||
|
||||
# A part of a test succeeds
|
||||
ok()
|
||||
{
|
||||
:
|
||||
}
|
||||
|
||||
# A part of a test fails
|
||||
notok()
|
||||
{
|
||||
OK=0
|
||||
}
|
||||
|
||||
# Verify that the exit code passed is for unsuccessful termination
|
||||
ckfail()
|
||||
{
|
||||
if [ $1 -gt 0 ]
|
||||
then
|
||||
ok
|
||||
else
|
||||
notok
|
||||
fi
|
||||
}
|
||||
|
||||
# Verify that the exit code passed is for successful termination
|
||||
ckok()
|
||||
{
|
||||
if [ $1 -eq 0 ]
|
||||
then
|
||||
ok
|
||||
else
|
||||
notok
|
||||
fi
|
||||
}
|
||||
|
||||
# Run all tests locally and across devices
|
||||
echo 1..32
|
||||
for FS in '' $TMPDIR/testdir/
|
||||
do
|
||||
begin 'Rename file'
|
||||
mkf fa
|
||||
mv fa ${FS}fb
|
||||
ckok $?
|
||||
ckf fa ${FS}fb
|
||||
cknt fa
|
||||
end
|
||||
|
||||
begin 'Move files into directory'
|
||||
mkf fa
|
||||
mkf fb
|
||||
mkdir -p ${FS}1/2/3
|
||||
mv fa fb ${FS}1/2/3
|
||||
ckok $?
|
||||
ckf fa ${FS}1/2/3/fa
|
||||
ckf fb ${FS}1/2/3/fb
|
||||
cknt fa
|
||||
cknt fb
|
||||
end
|
||||
|
||||
begin 'Move file from directory to file'
|
||||
mkdir -p 1/2/3
|
||||
mkf 1/2/3/fa
|
||||
mv 1/2/3/fa ${FS}fb
|
||||
ckok $?
|
||||
ckf fa ${FS}fb
|
||||
cknt 1/2/3/fa
|
||||
end
|
||||
|
||||
begin 'Move file from directory to existing file'
|
||||
mkdir -p 1/2/3
|
||||
mkf 1/2/3/fa
|
||||
:> ${FS}fb
|
||||
mv 1/2/3/fa ${FS}fb
|
||||
ckok $?
|
||||
ckf fa ${FS}fb
|
||||
cknt 1/2/3/fa
|
||||
end
|
||||
|
||||
begin 'Move file from directory to existing directory'
|
||||
mkdir -p 1/2/3
|
||||
mkf 1/2/3/fa
|
||||
mkdir -p ${FS}db/fa
|
||||
# Should fail per POSIX step 3a:
|
||||
# Destination path is a file of type directory and
|
||||
# source_file is not a file of type directory
|
||||
mv 1/2/3/fa ${FS}db 2>/dev/null
|
||||
ckfail $?
|
||||
ckf fa 1/2/3/fa
|
||||
end
|
||||
|
||||
begin 'Move file from directory to directory'
|
||||
mkdir -p da1/da2/da3
|
||||
mkdir -p ${FS}db1/db2/db3
|
||||
mkf da1/da2/da3/fa
|
||||
mv da1/da2/da3/fa ${FS}db1/db2/db3/fb
|
||||
ckok $?
|
||||
ckf fa ${FS}db1/db2/db3/fb
|
||||
cknt da1/da2/da3/fa
|
||||
end
|
||||
|
||||
begin 'Rename directory'
|
||||
mkd da
|
||||
mv da ${FS}db
|
||||
ckok $?
|
||||
ckd da ${FS}db
|
||||
cknt da
|
||||
end
|
||||
|
||||
begin 'Move directory to directory name'
|
||||
mkd da1/da2/da3/da
|
||||
mkdir -p ${FS}db1/db2/db3
|
||||
mv da1/da2/da3/da ${FS}db1/db2/db3/db
|
||||
ckok $?
|
||||
ckd da ${FS}db1/db2/db3/db
|
||||
cknt da1/da2/da3/da
|
||||
end
|
||||
|
||||
begin 'Move directory to directory'
|
||||
mkd da1/da2/da3/da
|
||||
mkdir -p ${FS}db1/db2/db3
|
||||
mv da1/da2/da3/da ${FS}db1/db2/db3
|
||||
ckok $?
|
||||
ckd da ${FS}db1/db2/db3/da
|
||||
cknt da1/da2/da3/da
|
||||
end
|
||||
|
||||
begin 'Move directory to existing empty directory'
|
||||
mkd da1/da2/da3/da
|
||||
mkdir -p ${FS}db1/db2/db3/da
|
||||
mv da1/da2/da3/da ${FS}db1/db2/db3
|
||||
ckok $?
|
||||
ckd da ${FS}db1/db2/db3/da
|
||||
cknt da1/da2/da3/da
|
||||
end
|
||||
|
||||
begin 'Move directory to existing non-empty directory'
|
||||
mkd da1/da2/da3/da
|
||||
mkdir -p ${FS}db1/db2/db3/da/full
|
||||
# Should fail (per the semantics of rename(2))
|
||||
mv da1/da2/da3/da ${FS}db1/db2/db3 2>/dev/null
|
||||
ckfail $?
|
||||
ckd da da1/da2/da3/da
|
||||
end
|
||||
|
||||
begin 'Move directory to existing file'
|
||||
mkd da1/da2/da3/da
|
||||
mkdir -p ${FS}db1/db2/db3
|
||||
:> ${FS}db1/db2/db3/da
|
||||
# Should fail per POSIX step 3b:
|
||||
# Destination path is a file not of type directory
|
||||
# and source_file is a file of type directory
|
||||
mv da1/da2/da3/da ${FS}db1/db2/db3/da 2>/dev/null
|
||||
ckfail $?
|
||||
ckd da da1/da2/da3/da
|
||||
end
|
||||
|
||||
begin 'Rename fifo'
|
||||
mkp fa
|
||||
mv fa ${FS}fb
|
||||
ckok $?
|
||||
ckp fa ${FS}fb
|
||||
cknt fa
|
||||
end
|
||||
|
||||
begin 'Move fifos into directory'
|
||||
mkp fa
|
||||
mkp fb
|
||||
mkdir -p ${FS}1/2/3
|
||||
mv fa fb ${FS}1/2/3
|
||||
ckok $?
|
||||
ckp fa ${FS}1/2/3/fa
|
||||
ckp fb ${FS}1/2/3/fb
|
||||
cknt fa
|
||||
cknt fb
|
||||
end
|
||||
|
||||
begin 'Move fifo from directory to fifo'
|
||||
mkdir -p 1/2/3
|
||||
mkp 1/2/3/fa
|
||||
mv 1/2/3/fa ${FS}fb
|
||||
ckok $?
|
||||
ckp fa ${FS}fb
|
||||
cknt 1/2/3/fa
|
||||
end
|
||||
|
||||
begin 'Move fifo from directory to directory'
|
||||
mkdir -p da1/da2/da3
|
||||
mkdir -p ${FS}db1/db2/db3
|
||||
mkp da1/da2/da3/fa
|
||||
mv da1/da2/da3/fa ${FS}db1/db2/db3/fb
|
||||
ckok $?
|
||||
ckp fa ${FS}db1/db2/db3/fb
|
||||
cknt da1/da2/da3/fa
|
||||
end
|
||||
done
|
391
bin/mv/tests/mv_test.sh
Normal file
391
bin/mv/tests/mv_test.sh
Normal file
@ -0,0 +1,391 @@
|
||||
#
|
||||
# Copyright (c) 2007 Diomidis Spinellis
|
||||
# Copyright (c) 2023 Klara, Inc.
|
||||
#
|
||||
# SPDX-License-Identifier: BSD-2-Clause
|
||||
#
|
||||
|
||||
mv_setup() {
|
||||
atf_check mkdir fs
|
||||
atf_check mount -t tmpfs -o size=1m tmp fs
|
||||
}
|
||||
|
||||
mv_cleanup() {
|
||||
umount fs || true
|
||||
}
|
||||
|
||||
# Make a file that can later be verified
|
||||
mv_makefile() {
|
||||
local cn="${1##*/}"
|
||||
echo "$cn-$cn" >"$1"
|
||||
}
|
||||
|
||||
# Verify that the file specified is correct
|
||||
mv_checkfile() {
|
||||
atf_check -o inline:"$1-$1\n" cat "$2"
|
||||
}
|
||||
|
||||
# Make a fifo that can later be verified
|
||||
mv_makepipe() {
|
||||
atf_check mkfifo $1
|
||||
}
|
||||
|
||||
# Verify that the file specified is correct
|
||||
mv_checkpipe() {
|
||||
atf_check test -p "$2"
|
||||
}
|
||||
|
||||
# Make a directory that can later be verified
|
||||
mv_makedir() {
|
||||
local cn="${1##*/}"
|
||||
atf_check mkdir -p "$1/$cn-$cn"
|
||||
}
|
||||
|
||||
# Verify that the directory specified is correct
|
||||
mv_checkdir() {
|
||||
atf_check test -d "$2/$1-$1"
|
||||
}
|
||||
|
||||
# Verify that the specified file does not exist
|
||||
# (is not there)
|
||||
mv_checkabsent() {
|
||||
atf_check -s exit:1 test -r "$1"
|
||||
}
|
||||
|
||||
atf_test_case rename_file cleanup
|
||||
rename_file_head() {
|
||||
atf_set "descr" "Rename file"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
rename_file_body() {
|
||||
mv_setup
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makefile fa
|
||||
atf_check mv fa ${FS}fb
|
||||
mv_checkfile fa ${FS}fb
|
||||
mv_checkabsent fa
|
||||
done
|
||||
}
|
||||
rename_file_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case file_into_dir cleanup
|
||||
file_into_dir_head() {
|
||||
atf_set "descr" "Move files into directory"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
file_into_dir_body() {
|
||||
mv_setup
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makefile fa
|
||||
mv_makefile fb
|
||||
atf_check mkdir -p ${FS}1/2/3
|
||||
atf_check mv fa fb ${FS}1/2/3
|
||||
mv_checkfile fa ${FS}1/2/3/fa
|
||||
mv_checkfile fb ${FS}1/2/3/fb
|
||||
mv_checkabsent fa
|
||||
mv_checkabsent fb
|
||||
done
|
||||
}
|
||||
file_into_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case file_from_dir cleanup
|
||||
file_from_dir_head() {
|
||||
atf_set "descr" "Move file from directory to file"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
file_from_dir_body() {
|
||||
mv_setup
|
||||
atf_check mkdir -p 1/2/3
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makefile 1/2/3/fa
|
||||
atf_check mv 1/2/3/fa ${FS}fb
|
||||
mv_checkfile fa ${FS}fb
|
||||
mv_checkabsent 1/2/3/fa
|
||||
done
|
||||
}
|
||||
file_from_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case file_from_dir_replace cleanup
|
||||
file_from_dir_replace_head() {
|
||||
atf_set "descr" "Move file from directory to existing file"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
file_from_dir_replace_body() {
|
||||
mv_setup
|
||||
atf_check mkdir -p 1/2/3
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makefile 1/2/3/fa
|
||||
:> ${FS}fb
|
||||
atf_check mv 1/2/3/fa ${FS}fb
|
||||
mv_checkfile fa ${FS}fb
|
||||
mv_checkabsent 1/2/3/fa
|
||||
done
|
||||
}
|
||||
file_from_dir_replace_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case file_to_dir cleanup
|
||||
file_to_dir_head() {
|
||||
atf_set "descr" "Move file from directory to existing directory"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
file_to_dir_body() {
|
||||
mv_setup
|
||||
atf_check mkdir -p 1/2/3
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makefile 1/2/3/fa
|
||||
atf_check mkdir -p ${FS}db/fa
|
||||
# Should fail per POSIX step 3a:
|
||||
# Destination path is a file of type directory and
|
||||
# source_file is not a file of type directory
|
||||
atf_check -s not-exit:0 -e match:"Is a directory" \
|
||||
mv 1/2/3/fa ${FS}db
|
||||
mv_checkfile fa 1/2/3/fa
|
||||
done
|
||||
}
|
||||
file_to_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case file_from_rename_dir cleanup
|
||||
file_from_rename_dir_head() {
|
||||
atf_set "descr" "Move file from directory to directory"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
file_from_rename_dir_body() {
|
||||
mv_setup
|
||||
atf_check mkdir -p da1/da2/da3
|
||||
for FS in "" "fs/" ; do
|
||||
atf_check mkdir -p ${FS}db1/db2/db3
|
||||
mv_makefile da1/da2/da3/fa
|
||||
atf_check mv da1/da2/da3/fa ${FS}db1/db2/db3/fb
|
||||
mv_checkfile fa ${FS}db1/db2/db3/fb
|
||||
mv_checkabsent da1/da2/da3/fa
|
||||
done
|
||||
}
|
||||
file_from_rename_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case rename_dir cleanup
|
||||
rename_dir_head() {
|
||||
atf_set "descr" "Rename directory"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
rename_dir_body() {
|
||||
mv_setup
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makedir da
|
||||
atf_check mv da ${FS}db
|
||||
mv_checkdir da ${FS}db
|
||||
mv_checkabsent da
|
||||
done
|
||||
}
|
||||
rename_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case dir_to_dir cleanup
|
||||
dir_to_dir_head() {
|
||||
atf_set "descr" "Move directory to directory name"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
dir_to_dir_body() {
|
||||
mv_setup
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makedir da1/da2/da3/da
|
||||
atf_check mkdir -p ${FS}db1/db2/db3
|
||||
atf_check mv da1/da2/da3/da ${FS}db1/db2/db3/db
|
||||
mv_checkdir da ${FS}db1/db2/db3/db
|
||||
mv_checkabsent da1/da2/da3/da
|
||||
done
|
||||
}
|
||||
dir_to_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case dir_into_dir cleanup
|
||||
dir_into_dir_head() {
|
||||
atf_set "descr" "Move directory to directory"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
dir_into_dir_body() {
|
||||
mv_setup
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makedir da1/da2/da3/da
|
||||
atf_check mkdir -p ${FS}db1/db2/db3
|
||||
atf_check mv da1/da2/da3/da ${FS}db1/db2/db3
|
||||
mv_checkdir da ${FS}db1/db2/db3/da
|
||||
mv_checkabsent da1/da2/da3/da
|
||||
done
|
||||
}
|
||||
dir_into_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case dir_to_empty_dir cleanup
|
||||
dir_to_empty_dir_head() {
|
||||
atf_set "descr" "Move directory to existing empty directory"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
dir_to_empty_dir_body() {
|
||||
mv_setup
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makedir da1/da2/da3/da
|
||||
atf_check mkdir -p ${FS}db1/db2/db3/da
|
||||
atf_check mv da1/da2/da3/da ${FS}db1/db2/db3
|
||||
mv_checkdir da ${FS}db1/db2/db3/da
|
||||
mv_checkabsent da1/da2/da3/da
|
||||
done
|
||||
}
|
||||
dir_to_empty_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case dir_to_nonempty_dir cleanup
|
||||
dir_to_nonempty_dir_head() {
|
||||
atf_set "descr" "Move directory to existing non-empty directory"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
dir_to_nonempty_dir_body() {
|
||||
mv_setup
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makedir da1/da2/da3/da
|
||||
atf_check mkdir -p ${FS}db1/db2/db3/da/full
|
||||
# Should fail (per the semantics of rename(2))
|
||||
atf_check -s not-exit:0 -e match:"Directory not empty" \
|
||||
mv da1/da2/da3/da ${FS}db1/db2/db3
|
||||
mv_checkdir da da1/da2/da3/da
|
||||
done
|
||||
}
|
||||
dir_to_nonempty_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case dir_to_file cleanup
|
||||
dir_to_file_head() {
|
||||
atf_set "descr" "Move directory to existing file"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
dir_to_file_body() {
|
||||
mv_setup
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makedir da1/da2/da3/da
|
||||
atf_check mkdir -p ${FS}db1/db2/db3
|
||||
:> ${FS}db1/db2/db3/da
|
||||
# Should fail per POSIX step 3b:
|
||||
# Destination path is a file not of type directory
|
||||
# and source_file is a file of type directory
|
||||
atf_check -s not-exit:0 -e match:"Not a directory" \
|
||||
mv da1/da2/da3/da ${FS}db1/db2/db3/da
|
||||
mv_checkdir da da1/da2/da3/da
|
||||
done
|
||||
}
|
||||
dir_to_file_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case rename_fifo cleanup
|
||||
rename_fifo_head() {
|
||||
atf_set "descr" "Rename fifo"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
rename_fifo_body() {
|
||||
mv_setup
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makepipe fa
|
||||
atf_check mv fa ${FS}fb
|
||||
mv_checkpipe fa ${FS}fb
|
||||
mv_checkabsent fa
|
||||
done
|
||||
}
|
||||
rename_fifo_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case fifo_into_dir cleanup
|
||||
fifo_into_dir_head() {
|
||||
atf_set "descr" "Move fifos into directory"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
fifo_into_dir_body() {
|
||||
mv_setup
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makepipe fa
|
||||
mv_makepipe fb
|
||||
atf_check mkdir -p ${FS}1/2/3
|
||||
atf_check mv fa fb ${FS}1/2/3
|
||||
mv_checkpipe fa ${FS}1/2/3/fa
|
||||
mv_checkpipe fb ${FS}1/2/3/fb
|
||||
mv_checkabsent fa
|
||||
mv_checkabsent fb
|
||||
done
|
||||
}
|
||||
fifo_into_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case fifo_from_dir cleanup
|
||||
fifo_from_dir_head() {
|
||||
atf_set "descr" "Move fifo from directory to fifo"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
fifo_from_dir_body() {
|
||||
mv_setup
|
||||
atf_check mkdir -p 1/2/3
|
||||
for FS in "" "fs/" ; do
|
||||
mv_makepipe 1/2/3/fa
|
||||
atf_check mv 1/2/3/fa ${FS}fb
|
||||
mv_checkpipe fa ${FS}fb
|
||||
mv_checkabsent 1/2/3/fa
|
||||
done
|
||||
}
|
||||
fifo_from_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_test_case fifo_from_dir_into_dir cleanup
|
||||
fifo_from_dir_into_dir_head() {
|
||||
atf_set "descr" "Move fifo from directory to directory"
|
||||
atf_set "require.user" "root"
|
||||
}
|
||||
fifo_from_dir_into_dir_body() {
|
||||
mv_setup
|
||||
atf_check mkdir -p da1/da2/da3
|
||||
for FS in "" "fs/" ; do
|
||||
atf_check mkdir -p ${FS}db1/db2/db3
|
||||
mv_makepipe da1/da2/da3/fa
|
||||
atf_check mv da1/da2/da3/fa ${FS}db1/db2/db3/fb
|
||||
mv_checkpipe fa ${FS}db1/db2/db3/fb
|
||||
mv_checkabsent da1/da2/da3/fa
|
||||
done
|
||||
}
|
||||
fifo_from_dir_into_dir_cleanup() {
|
||||
mv_cleanup
|
||||
}
|
||||
|
||||
atf_init_test_cases() {
|
||||
atf_add_test_case rename_file
|
||||
atf_add_test_case file_into_dir
|
||||
atf_add_test_case file_from_dir
|
||||
atf_add_test_case file_from_dir_replace
|
||||
atf_add_test_case file_to_dir
|
||||
atf_add_test_case file_from_rename_dir
|
||||
atf_add_test_case rename_dir
|
||||
atf_add_test_case dir_to_dir
|
||||
atf_add_test_case dir_into_dir
|
||||
atf_add_test_case dir_to_empty_dir
|
||||
atf_add_test_case dir_to_nonempty_dir
|
||||
atf_add_test_case dir_to_file
|
||||
atf_add_test_case rename_fifo
|
||||
atf_add_test_case fifo_into_dir
|
||||
atf_add_test_case fifo_from_dir
|
||||
atf_add_test_case fifo_from_dir_into_dir
|
||||
}
|
Loading…
Reference in New Issue
Block a user