1*cf5a6c84SAndroid Build Coastguard Worker#!/bin/bash 2*cf5a6c84SAndroid Build Coastguard Worker 3*cf5a6c84SAndroid Build Coastguard Worker[ -f testing.sh ] && . testing.sh 4*cf5a6c84SAndroid Build Coastguard Worker 5*cf5a6c84SAndroid Build Coastguard Worker#testing "name" "command" "result" "infile" "stdin" 6*cf5a6c84SAndroid Build Coastguard Worker 7*cf5a6c84SAndroid Build Coastguard Workermkdir one 8*cf5a6c84SAndroid Build Coastguard Workertesting "rmdir" "rmdir one && [ ! -d one ] && echo yes" "yes\n" "" "" 9*cf5a6c84SAndroid Build Coastguard Worker 10*cf5a6c84SAndroid Build Coastguard Workertouch walrus 11*cf5a6c84SAndroid Build Coastguard Workertesting "file" \ 12*cf5a6c84SAndroid Build Coastguard Worker "rmdir walrus 2> /dev/null || [ -f walrus ] && echo yes" "yes\n" "" "" 13*cf5a6c84SAndroid Build Coastguard Worker 14*cf5a6c84SAndroid Build Coastguard Workermkdir one two 15*cf5a6c84SAndroid Build Coastguard Workertesting "one two" \ 16*cf5a6c84SAndroid Build Coastguard Worker "rmdir one two 2> /dev/null && [ ! -d one ] && [ ! -d two ] && echo yes" \ 17*cf5a6c84SAndroid Build Coastguard Worker "yes\n" "" "" 18*cf5a6c84SAndroid Build Coastguard Worker 19*cf5a6c84SAndroid Build Coastguard Workermkdir one two three 20*cf5a6c84SAndroid Build Coastguard Workertesting "one missing two file three" \ 21*cf5a6c84SAndroid Build Coastguard Worker "rmdir one missing two walrus three 2> /dev/null || [ ! -d three ] && echo yes" \ 22*cf5a6c84SAndroid Build Coastguard Worker "yes\n" "" "" 23*cf5a6c84SAndroid Build Coastguard Workerrm walrus 24*cf5a6c84SAndroid Build Coastguard Worker 25*cf5a6c84SAndroid Build Coastguard Workermkdir one 26*cf5a6c84SAndroid Build Coastguard Workerchmod 000 one 27*cf5a6c84SAndroid Build Coastguard Workertesting "mode 000" "rmdir one && [ ! -d one ] && echo yes" "yes\n" "" "" 28*cf5a6c84SAndroid Build Coastguard Worker 29*cf5a6c84SAndroid Build Coastguard Workermkdir temp 30*cf5a6c84SAndroid Build Coastguard Workertouch temp/thing 31*cf5a6c84SAndroid Build Coastguard Workertesting "non-empty" \ 32*cf5a6c84SAndroid Build Coastguard Worker "rmdir temp 2>/dev/null || [ -d temp ] && echo yes" "yes\n" "" "" 33*cf5a6c84SAndroid Build Coastguard Workertesting "-p dir/file" \ 34*cf5a6c84SAndroid Build Coastguard Worker "rmdir -p temp/thing 2>/dev/null || [ -f temp/thing ] && echo yes" \ 35*cf5a6c84SAndroid Build Coastguard Worker "yes\n" "" "" 36*cf5a6c84SAndroid Build Coastguard Worker 37*cf5a6c84SAndroid Build Coastguard Workermkdir -p temp/one/two/three 38*cf5a6c84SAndroid Build Coastguard Workertesting "-p part of path" \ 39*cf5a6c84SAndroid Build Coastguard Worker "rmdir -p temp/one/two/three 2>/dev/null || [ -d temp ] && [ ! -e temp/one ] && echo yes" \ 40*cf5a6c84SAndroid Build Coastguard Worker "yes\n" "" "" 41*cf5a6c84SAndroid Build Coastguard Workerrm -rf temp 42*cf5a6c84SAndroid Build Coastguard Worker 43*cf5a6c84SAndroid Build Coastguard Workerskipnot [ $UID -eq 0 ] 44*cf5a6c84SAndroid Build Coastguard Workertesting '-p abspath' \ 45*cf5a6c84SAndroid Build Coastguard Worker 'mkdir -p /test/2/3 && rmdir -p /test/2/3 && [ ! -e /test ] && echo yes' \ 46*cf5a6c84SAndroid Build Coastguard Worker 'yes\n' '' '' 47*cf5a6c84SAndroid Build Coastguard Worker 48*cf5a6c84SAndroid Build Coastguard Workermkdir -p one/two/three 49*cf5a6c84SAndroid Build Coastguard Workertesting "-p one/two/three" \ 50*cf5a6c84SAndroid Build Coastguard Worker "rmdir -p one/two/three && [ ! -e one ] && echo yes" "yes\n" "" "" 51*cf5a6c84SAndroid Build Coastguard Worker 52*cf5a6c84SAndroid Build Coastguard Workermkdir -p one/two/three 53*cf5a6c84SAndroid Build Coastguard Workertesting "-p one/two/three/" \ 54*cf5a6c84SAndroid Build Coastguard Worker "rmdir -p one/two/three/ && [ ! -e one ] && echo yes" "yes\n" "" "" 55*cf5a6c84SAndroid Build Coastguard Worker 56*cf5a6c84SAndroid Build Coastguard Worker#mkdir -p one/two/three 57*cf5a6c84SAndroid Build Coastguard Worker#chmod 000 one/two/three one/two one 58*cf5a6c84SAndroid Build Coastguard Worker#testing "-p one/two/three" \ 59*cf5a6c84SAndroid Build Coastguard Worker# "rmdir -p one/two/three && [ ! -e one ] && echo yes" "yes\n" "" "" 60