Elie De Brauwer | 528e3ba | 2012-02-12 14:14:58 +0100 | [diff] [blame] | 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 |
Rob Landley | 3e7c259 | 2012-02-13 21:13:05 -0600 | [diff] [blame^] | 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" "" "" |
Elie De Brauwer | 528e3ba | 2012-02-12 14:14:58 +0100 | [diff] [blame] | 21 | |
| 22 | # A suffix should be a real suffix, only a the end. |
Rob Landley | 3e7c259 | 2012-02-13 21:13:05 -0600 | [diff] [blame^] | 23 | testing "basename invalid suffix" "basename isthisasuffix? suffix" "isthisasuffix?\n" "" "" |