]> Cypherpunks.ru repositories - goredo.git/blob - t/redo-sh.tests/ood_1/test
Add redo-ood related redo.sh-tests/ood_* unittests
[goredo.git] / t / redo-sh.tests / ood_1 / test
1 #!/bin/sh -eu
2 # When invoked, redo-ood must output targets for which a dependency
3 # changed.
4
5 >all.do printf 'redo-ifchange a
6 '
7
8 >a.do cat <<EOF
9 redo-ifchange b
10 printf '0
11 '
12 EOF
13
14 >b printf '1
15 '
16
17 redo
18 <a read -r a1
19 <b read -r b1
20
21 ood1=$(redo-ood)
22
23 >b printf '2
24 '
25 <b read -r b2
26
27 ood2=$(redo-ood)
28
29 test 0 -eq "${a1}"
30 test 1 -eq "${b1}"
31 test 2 -eq "${b2}"
32
33 test -z "${ood1}"
34 test -n "${ood2}"
35
36 . ../stat_inode.rc
37
38 inode_a=$(stat_inode a)
39 inodes_ood=$(stat_inode "${ood2}")
40
41 test "${inode_a}" = "${inodes_ood}"