Home | History | Annotate | Download | only in tests
      1 #!/bin/bash
      2 
      3 [ -f testing.sh ] && . testing.sh
      4 
      5 #testing "name" "command" "result" "infile" "stdin"
      6 
      7 # Removal of extra /'s
      8 testing "basename /-only" "basename ///////" "/\n" "" ""
      9 testing "basename trailing /" "basename a//////" "a\n" "" ""
     10 testing "basename combined" "basename /////a///b///c///d/////" "d\n" "" ""
     11 
     12 # Standard suffix behavior.
     13 testing "basename suffix" "basename a/b/c/d.suffix .suffix" "d\n" "" ""
     14 
     15 # A suffix cannot be the entire result.
     16 testing "basename suffix=result" "basename .txt .txt" ".txt\n" "" ""
     17 
     18 # Deal with suffix appearing in the filename
     19 testing "basename reappearing suffix 1" "basename a.txt.txt .txt" "a.txt\n" "" ""
     20 testing "basename reappearing suffix 2" "basename a.txt.old .txt" "a.txt.old\n" "" ""
     21 
     22 # A suffix should be a real suffix, only a the end.
     23 testing "basename invalid suffix" "basename isthisasuffix? suffix" "isthisasuffix?\n" "" ""
     24