view scripts/test/mkdir.test @ 1189:95ae2805622f draft

Add Szabolcs Nagy's deflate/inflate code from git://git.suckless.org/flate Confirmed with him on IRC it's ok to use under toybox license, glued the files together and hammered square peg into round hole, no other changes yet.
author Rob Landley <rob@landley.net>
date Fri, 31 Jan 2014 06:01:30 -0600
parents 2115856395e2
children c6c5565cc859
line wrap: on
line source

#!/bin/bash

[ -f testing.sh ] && . testing.sh

#testing "name" "command" "result" "infile" "stdin"

testing "mkdir" "mkdir one && [ -d one ] && echo yes" "yes\n" "" ""
rmdir one

touch existing
testing "mkdir existing" \
	"mkdir existing 2> /dev/null || [ -f existing ] && echo yes" "yes\n" "" ""
rm existing

testing "mkdir one two" \
	"mkdir one two && [ -d one ] && [ -d two ] && echo yes" "yes\n" "" ""
rmdir one two

testing "mkdir missing/one" \
	"mkdir missing/one 2> /dev/null || [ ! -d missing ] && echo yes" "yes\n" "" ""

testing "mkdir -p" \
	"mkdir -p one/two/three && [ -d one/two/three ] && echo yes" "yes\n" "" ""
rm -rf one

mkdir existing
testing "mkdir -p existing" "mkdir -p existing && echo yes" "yes\n" "" ""
rmdir existing

umask 123
testing "mkdir (default permissions)" \
	"mkdir one && stat -c %a one" "654\n" "" ""
rmdir one

testing "mkdir -m 124" \
	"mkdir -m 124 one && stat -c %a one" "124\n" "" ""
rmdir one

umask 000
testing "mkdir -p -m 653" \
	"mkdir -p -m 653 one/two && stat -c %a one && stat -c %a one/two" \
	"777\n653\n" "" ""
rm -rf one

testing "mkdir -p one/two/ (trailing slash)" \
	"mkdir -p one/two/ &&  [ -d one/two ] && echo yes" "yes\n" "" ""
rm -rf one

umask 022
testing "mkdir -p -m 777 (022 umask)" \
	"mkdir -p -m 777 one/two && stat -c %a one && stat -c %a one/two" \
	"755\n777\n" "" ""
rm -rf one

umask 377
testing "mkdir -p -m 777 (377 umask)" \
	"mkdir -p -m 777 one/two && stat -c %a one && stat -c %a one/two" \
	"700\n777\n" "" ""
umask 002
rm -rf one

testing "mkdir -vp" "mkdir -vp walrus 2>&1" \
	"mkdir: created directory 'walrus'\n" "" ""

testing "mkdir -vp exists" "mkdir -vp walrus 2>&1" \
	"" "" ""