@@ -136,22 +136,31 @@ test_cmd_eq 6 wc -l < .lake/outputs.jsonl
136136
137137# Verify all artifacts end up in the cache directory with `restoreAllArtifacts`
138138test_cmd cp -r " $CACHE_DIR " .lake/cache-backup
139- test_cmd rm -rf " $CACHE_DIR "
139+ test_cmd rm -rf " $CACHE_DIR " .lake/build
140140test_run build -R -KrestoreAll=true \
141141 test:exe Test:static Test:shared +Test:o.export +Test:o.noexport +Module
142- test_cached test:exe !
143- test_cached Test:static !
144- test_cached Test:shared !
145- test_cached +Test:o.export !
146- test_cached +Test:o.noexport !
147- test_cached +Test:dynlib !
148- test_cached +Test:olean !
149- test_cached +Test:ilean !
150- test_cached +Test:c !
151- test_cached +Module:olean !
152- test_cached +Module:olean.server !
153- test_cached +Module:olean.private !
154- test_cached +Module:ir !
142+ test_restored () {
143+ target=" $1 " ; shift
144+ art=" $( $LAKE query $target ) "
145+ echo " ! artifact cached: $target -> $art "
146+ test ! " $( norm_dirname " $art " ) " = " $CACHE_DIR /artifacts"
147+ if [ -n " ${1:- } " ]; then
148+ test " $( basename " $art " ) " = " $1 "
149+ fi
150+ }
151+ test_restored test:exe
152+ test_restored Test:static
153+ test_restored Test:shared
154+ test_restored +Test:o.export Test.c.o.export
155+ test_restored +Test:o.noexport Test.c.o.noexport
156+ test_restored +Test:dynlib
157+ test_restored +Test:olean Test.olean
158+ test_restored +Test:ilean Test.ilean
159+ test_restored +Test:c Test.c
160+ test_restored +Module:olean Module.olean
161+ test_restored +Module:olean.server Module.olean.server
162+ test_restored +Module:olean.private Module.olean.private
163+ test_restored +Module:ir Module.ir
155164
156165# Verify that invalid outputs do not break Lake
157166if command -v jq > /dev/null; then # skip if no jq found
0 commit comments