toybox/tests/mkdir.test
<<
>>
Prefs
   1#!/bin/bash
   2
   3[ -f testing.sh ] && . testing.sh
   4
   5#testing "name" "command" "result" "infile" "stdin"
   6
   7testing "mkdir" "mkdir one && [ -d one ] && echo yes" "yes\n" "" ""
   8rmdir one
   9
  10touch existing
  11testing "existing file" \
  12        "mkdir existing 2> /dev/null || [ -f existing ] && echo yes" "yes\n" "" ""
  13rm existing
  14
  15mkdir existing
  16testing "existing dir" \
  17        "mkdir existing 2> /dev/null || echo yes" "yes\n" "" ""
  18rmdir existing
  19
  20testing "one two" \
  21        "mkdir one two && [ -d one ] && [ -d two ] && echo yes" "yes\n" "" ""
  22rmdir one two
  23
  24testing "missing/one" \
  25        "mkdir missing/one 2> /dev/null || [ ! -d missing ] && echo yes" "yes\n" "" ""
  26
  27testing "-p" \
  28        "mkdir -p one/two/three && [ -d one/two/three ] && echo yes" "yes\n" "" ""
  29rm -rf one
  30
  31mkdir existing
  32testing "-p existing" "mkdir -p existing && echo yes" "yes\n" "" ""
  33rmdir existing
  34
  35umask 123
  36testing "(default permissions)" \
  37        "mkdir one && stat -c %a one" "654\n" "" ""
  38rmdir one
  39
  40testing "-m 124" \
  41        "mkdir -m 124 one && stat -c %a one" "124\n" "" ""
  42rmdir one
  43
  44umask 000
  45testing "-p -m 653" \
  46        "mkdir -p -m 653 one/two && stat -c %a one && stat -c %a one/two" \
  47        "777\n653\n" "" ""
  48rm -rf one
  49
  50testing "-p one/two/ (trailing slash)" \
  51        "mkdir -p one/two/ &&  [ -d one/two ] && echo yes" "yes\n" "" ""
  52rm -rf one
  53
  54umask 022
  55testing "-p -m 777 (022 umask)" \
  56        "mkdir -p -m 777 one/two && stat -c %a one && stat -c %a one/two" \
  57        "755\n777\n" "" ""
  58rm -rf one
  59
  60umask 377
  61testing "-p -m 777 (377 umask)" \
  62        "mkdir -p -m 777 one/two && stat -c %a one && stat -c %a one/two" \
  63        "700\n777\n" "" ""
  64umask 002
  65rm -rf one
  66
  67testing "-vp" "mkdir -vp walrus 2>&1" \
  68        "mkdir: created directory 'walrus'\n" "" ""
  69
  70testing "-vp exists" "mkdir -vp walrus 2>&1" \
  71        "" "" ""
  72rm -rf walrus
  73
  74touch two
  75testing "continue after fail" \
  76        "mkdir -m 777 one two three 2>/dev/null || stat -c %a three" \
  77        "777\n" "" ""
  78rm -rf one two three
  79