diff --git a/t/deps/dirtest/.gitignore b/t/deps/dirtest/.gitignore new file mode 100644 index 0000000..b105280 --- /dev/null +++ b/t/deps/dirtest/.gitignore @@ -0,0 +1,2 @@ +log +dir1/stinky diff --git a/t/deps/dirtest/clean.do b/t/deps/dirtest/clean.do new file mode 100644 index 0000000..3e6bcce --- /dev/null +++ b/t/deps/dirtest/clean.do @@ -0,0 +1 @@ +rm -f *~ .*~ dir1/*~ dir1/.*~ dir1/stinky dir1/log log diff --git a/t/deps/dirtest/dir1/all.do b/t/deps/dirtest/dir1/all.do new file mode 100644 index 0000000..dab7111 --- /dev/null +++ b/t/deps/dirtest/dir1/all.do @@ -0,0 +1,2 @@ +redo-ifchange stinky +echo $$ >>log diff --git a/t/deps/dirtest/dir1/stinky.do b/t/deps/dirtest/dir1/stinky.do new file mode 100644 index 0000000..074c4d1 --- /dev/null +++ b/t/deps/dirtest/dir1/stinky.do @@ -0,0 +1 @@ +echo "I'm stinky" diff --git a/t/deps/dirtest/t1.do b/t/deps/dirtest/t1.do new file mode 100644 index 0000000..b9b84b9 --- /dev/null +++ b/t/deps/dirtest/t1.do @@ -0,0 +1,2 @@ +redo-ifchange dir1/ +echo $$ >>log diff --git a/t/deps/dirtest/t2.do b/t/deps/dirtest/t2.do new file mode 100644 index 0000000..e01695e --- /dev/null +++ b/t/deps/dirtest/t2.do @@ -0,0 +1,2 @@ +redo-ifchange dir1 +echo $$ >>log diff --git a/t/deps/dirtest/t3.do b/t/deps/dirtest/t3.do new file mode 100644 index 0000000..48e8643 --- /dev/null +++ b/t/deps/dirtest/t3.do @@ -0,0 +1,2 @@ +redo-ifchange dir1/all +echo $$ >>log diff --git a/t/deps/dirtest/test.do b/t/deps/dirtest/test.do new file mode 100644 index 0000000..e48de59 --- /dev/null +++ b/t/deps/dirtest/test.do @@ -0,0 +1,19 @@ +touch t?.do +for first in t1 t2 t3; do + for second in t1 t2 t3; do + rm -f log dir1/log dir1/stinky + . ../../flush-cache.sh + redo $first + touch $second.do + . ../../flush-cache.sh + redo $second + . ../../flush-cache.sh + redo-ifchange $second + C1="$(wc -l $second, c1=$C1, c2=$C2" >&2 + exit 55 + fi + done +done diff --git a/t/deps/test.do b/t/deps/test.do index dc03f0c..34ccbe9 100644 --- a/t/deps/test.do +++ b/t/deps/test.do @@ -1 +1,2 @@ -redo test1 test2 ifchange-fail overwrite basic/test +redo test1 test2 ifchange-fail overwrite basic/test dirtest/test + diff --git a/t/flush-cache.sh b/t/flush-cache.sh index 83e87ba..eabf3a1 100644 --- a/t/flush-cache.sh +++ b/t/flush-cache.sh @@ -1,3 +1,3 @@ -echo "Flushing redo cache..." >&2 +#echo "Flushing redo cache..." >&2 find "$REDO_BASE/.redo" -name 'built^*' -o -name 'mark^*' | xargs rm -f >&2