Files
rk35xx-android14/external/one-true-awk/testdir/T.close
T
hmz007 36ed224bac Rockchip Anroid14_SDK 20240628-rkr5 (2556df1a)
Signed-off-by: hmz007 <hmz007@gmail.com>
Change-Id: Ib87fdbe7a0be7dc961af3500fe9ea4589a127f9f
2024-10-29 18:12:02 +08:00

37 lines
855 B
Plaintext
Executable File

echo T.close: test close built-in
awk=${awk-../a.out}
rm -f foo
$awk '{ print >>"foo"; close("foo") }' /etc/passwd
diff /etc/passwd foo || echo 'BAD: T.close (1)'
ls -l >foo
tail -1 foo >foo1
$awk '{ print >"foo2"; close("foo2") }' foo
diff foo1 foo2 || echo 'BAD: T.close (2)'
echo 0 >foo1
$awk ' # non-accessible file
BEGIN { getline <"/etc/passwd"; print close("/etc/passwd"); }
' >foo2
diff foo1 foo2 || echo 'BAD: T.close (3)'
echo -1 >foo1
$awk ' # file not opened
BEGIN { print close("glotch"); }
' >foo2
diff foo1 foo2 || echo 'BAD: T.close (4)'
echo 0 >foo1
$awk ' # normal close
BEGIN { print "hello" > "foo"; print close("foo"); }
' >foo2
diff foo1 foo2 || echo 'BAD: T.close (5)'
echo 0 >foo1
$awk ' # normal close
BEGIN { print "hello" | "cat >foo"; print close("cat >foo"); }
' >foo2
diff foo1 foo2 || echo 'BAD: T.close (6)'