xref: /aosp_15_r20/external/toybox/tests/install.test (revision cf5a6c84e2b8763fc1a7db14496fd4742913b199)
1*cf5a6c84SAndroid Build Coastguard Worker#!/bin/bash
2*cf5a6c84SAndroid Build Coastguard Worker
3*cf5a6c84SAndroid Build Coastguard Worker# TODO: fill this out.
4*cf5a6c84SAndroid Build Coastguard Worker# TODO: "make install" means something else, so no test_install, only callable
5*cf5a6c84SAndroid Build Coastguard Worker# from "make tests"...
6*cf5a6c84SAndroid Build Coastguard Worker
7*cf5a6c84SAndroid Build Coastguard Worker[ -f testing.sh ] && . testing.sh
8*cf5a6c84SAndroid Build Coastguard Worker
9*cf5a6c84SAndroid Build Coastguard Worker#testing "name" "command" "result" "infile" "stdin"
10*cf5a6c84SAndroid Build Coastguard Worker
11*cf5a6c84SAndroid Build Coastguard Workerdd if=/dev/urandom of=random bs=64 count=1 2> /dev/null
12*cf5a6c84SAndroid Build Coastguard Workertesting "install -D exists" \
13*cf5a6c84SAndroid Build Coastguard Worker  "mkdir -p a; touch a/b; install -D random a/b && cmp random a/b && echo yes" \
14*cf5a6c84SAndroid Build Coastguard Worker  "yes\n" "" ""
15*cf5a6c84SAndroid Build Coastguard Workerrm -rf a random
16*cf5a6c84SAndroid Build Coastguard Workertesting "install -D -t creates directory" \
17*cf5a6c84SAndroid Build Coastguard Worker  "touch a; install -Dt b a && echo yes" \
18*cf5a6c84SAndroid Build Coastguard Worker  "yes\n" "" ""
19*cf5a6c84SAndroid Build Coastguard Workerrm -rf a b
20*cf5a6c84SAndroid Build Coastguard Worker
21*cf5a6c84SAndroid Build Coastguard Workertesting "install -d" "umask 0 && install -d potato && stat -c%a potato" \
22*cf5a6c84SAndroid Build Coastguard Worker  "755\n" "" ""
23*cf5a6c84SAndroid Build Coastguard Workerrmdir potato
24*cf5a6c84SAndroid Build Coastguard Workertestcmd "-dm" "-dm 02750 potato && stat -c%a potato" "2750\n" "" ""
25*cf5a6c84SAndroid Build Coastguard Workerrmdir potato
26*cf5a6c84SAndroid Build Coastguard Workertestcmd '' '-dm +x potato && stat -c%a potato' '111\n' '' ''
27