license change
[lnf] / test / test
index afbb6306a3fed7172407340f09a3a964cd9fbc96..c3b90e166a0d7cc6d02dea10b7de23437aff6b3d 100755 (executable)
--- a/test/test
+++ b/test/test
@@ -1,4 +1,27 @@
 #!/bin/bash
+# I, Ian Kelling, follow the GNU license recommendations at
+# https://www.gnu.org/licenses/license-recommendations.en.html. They
+# recommend that small programs, < 300 lines, be licensed under the
+# Apache License 2.0. This file contains or is part of one or more small
+# programs. If a small program grows beyond 300 lines, I plan to switch
+# its license to GPL.
+
+# Copyright 2024 Ian Kelling
+
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+
+#     http://www.apache.org/licenses/LICENSE-2.0
+
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+
+
 # some basic sanity / verification
 
 # I don't recommend actually running this unless you have a reason to,
 case1() {
     touch b
     lnf -T a b
-    [[ -L b ]] 
+    [[ -L b ]]
 }
 
 # 2 arguments, test that directory in link location is removed and replaced with a link
 case2() {
     mkdir b
     lnf -T a b
-    [[ -L b ]] 
+    [[ -L b ]]
 }
 
 # single argument, test that an existing non-empty directory is removed and replaced by a link
@@ -27,7 +50,7 @@ case3() {
     mkdir a
     touch a/b
     lnf ../a
-    [[ -L a ]] 
+    [[ -L a ]]
 }
 
 # 4 arguments, 2 of the link locations already contain files.
@@ -37,14 +60,14 @@ case4() {
     touch a/b
     touch a/c
     lnf b c d a
-    [[ -L a/b && -L a/c && -L a/d ]] 
+    [[ -L a/b && -L a/c && -L a/d ]]
 }
 
 # 2 arguments, test that link is made correctly
 case5() {
     mkdir b
     lnf a b
-    [[ -L b/a ]] 
+    [[ -L b/a ]]
 }
 
 
@@ -61,7 +84,8 @@ docases() {
     done
 }
 
-source ${0%/*}/../lnf-function
+PATH="$(readlink -f ${0%/*}/..):$PATH"
+
 # might want to undo this if things go wrong
 # set -x
 
@@ -69,12 +93,13 @@ source ${0%/*}/../lnf-function
 set -E;
 trap 'echo "${BASH_COMMAND:+BASH_COMMAND=\"$BASH_COMMAND\" }
 ${FUNCNAME:+FUNCNAME=\"$FUNCNAME\" }${LINENO:+LINENO=\"$LINENO\"  }\$?=$?"' ERR
-cd $(mktemp -d)
+tempdir=$(mktemp -d)
+cd $tempdir
 docases
 # test again, using rm -rf in place of trash-put.
-# assumes that rm is in /bin and trash-put is in /usr/bin
-PATH="${PATH//:\/usr\/bin}"
-PATH="${PATH//\/usr\/bin:}"
+trash-put() { rm -rf -- "$@"; }
+export -f trash-put
 docases
 
+rm -rf $tempdir
 echo tests concluded