aboutsummaryrefslogtreecommitdiff
path: root/tests/link.test
diff options
context:
space:
mode:
authorRob Landley <rob@landley.net>2014-09-20 13:09:14 -0500
committerRob Landley <rob@landley.net>2014-09-20 13:09:14 -0500
commit387edf547eb09b27ca6d49772eb048d729f09cf4 (patch)
tree59d482f33735690cab6d90723393afa1e2c8dce5 /tests/link.test
parentd3df423a6cde0c6282658ff628574771d3824d71 (diff)
downloadtoybox-387edf547eb09b27ca6d49772eb048d729f09cf4.tar.gz
Move testsuite out of scripts/test into its own top level tests directory, and make ctrl-c kill "make test" more reliably.
Diffstat (limited to 'tests/link.test')
-rwxr-xr-xtests/link.test26
1 files changed, 26 insertions, 0 deletions
diff --git a/tests/link.test b/tests/link.test
new file mode 100755
index 00000000..769a7b67
--- /dev/null
+++ b/tests/link.test
@@ -0,0 +1,26 @@
+#!/bin/bash
+
+# Copyright 2014 Divya Kothari <divya.s.kothari@gmail.com>
+# Copyright 2014 Naha Maggu <maggu.neha@gmail.com>
+
+[ -f testing.sh ] && . testing.sh
+
+#testing "name" "command" "result" "infile" "stdin"
+
+echo "" >foo
+testing "link fails on non-existent file" "link foo/foo baz || echo GOOD" "GOOD\n" "" ""
+rm -f foo bar
+
+echo file1 > file
+testing "ln create_hardlink" "link file hlink && [ file -ef hlink ] &&
+ echo 'yes'; rm -rf hlink" "yes\n" "" ""
+
+echo hlink1 > hlink
+set +e
+testing "ln preserves_hardlinks" "link file hlink 2>/dev/null || echo 'yes'; rm -rf hlink" \
+ "yes\n" "" ""
+
+echo file1 > file
+testing "ln create_hardlink_and_remove_sourcefile" "link file hlink &&
+ [ file -ef hlink ] && rm -rf file && [ -f hlink ] && echo 'yes'; rm -f file hlink" \
+ "yes\n" "" ""