testmaps: also check hashes of .prt files. run vis processes in parallel.

This commit is contained in:
Eric Wasylishen 2021-10-03 19:26:40 -06:00
parent b01e9ef7b1
commit baf1bdf732
2 changed files with 20 additions and 3 deletions

View File

@ -47,6 +47,8 @@ e1m1-bspxbrushes.bsp \
e1m1-bsp29-onlyents.bsp \ e1m1-bsp29-onlyents.bsp \
qbspfeatures.bsp" qbspfeatures.bsp"
HASH_CHECK_PRTS=${HASH_CHECK_BSPS//.bsp/.prt}
qbsp -noverbose qbsp_func_detail.map || exit 1 qbsp -noverbose qbsp_func_detail.map || exit 1
qbsp -noverbose quake_map_source/E1M1.map e1m1-bsp29.bsp || exit 1 qbsp -noverbose quake_map_source/E1M1.map e1m1-bsp29.bsp || exit 1
@ -69,18 +71,22 @@ qbsp -onlyents E1M1-edited-ents.map e1m1-bsp29-onlyents.bsp || exit 1
qbsp -noverbose qbspfeatures.map || exit 1 qbsp -noverbose qbspfeatures.map || exit 1
if [[ $UPDATE_HASHES -ne 0 ]]; then if [[ $UPDATE_HASHES -ne 0 ]]; then
sha256sum ${HASH_CHECK_BSPS} > qbsp.sha256sum || exit 1 sha256sum ${HASH_CHECK_BSPS} ${HASH_CHECK_PRTS} > qbsp.sha256sum || exit 1
else else
sha256sum --strict --check qbsp.sha256sum || exit 1 sha256sum --strict --check qbsp.sha256sum || exit 1
fi fi
# now run vis # now run vis
# FIXME: vis output is nondeterministic when run with multiple threads! # since vis is slower, launch all as background processes, and then wait for all of them to finish
# FIXME: vis output is nondeterministic when run with multiple threads, so force 1 thread per process
for bsp in ${HASH_CHECK_BSPS}; do for bsp in ${HASH_CHECK_BSPS}; do
vis -nostate -threads 1 ${bsp} || exit 1 vis -nostate -threads 1 ${bsp} &
done done
# we don't get the exit status this way, but the hash check will test the resulting visdata
wait
if [[ $UPDATE_HASHES -ne 0 ]]; then if [[ $UPDATE_HASHES -ne 0 ]]; then
sha256sum ${HASH_CHECK_BSPS} > qbsp-vis.sha256sum || exit 1 sha256sum ${HASH_CHECK_BSPS} > qbsp-vis.sha256sum || exit 1
else else

View File

@ -9,3 +9,14 @@ d289427e3c8a7046dce509a83401f6732a9c5f8194f8beb3eee431e33215656c *e1m1-bsp29.bsp
015c5fb3f350dfb10c031ed3ae44b3e094fbde38c48dec0897d0710fcbc7666c *e1m1-bspxbrushes.bsp 015c5fb3f350dfb10c031ed3ae44b3e094fbde38c48dec0897d0710fcbc7666c *e1m1-bspxbrushes.bsp
af7bc468d76aa1b11d1881a3378877059c6fd33fb37bea555d332e17d0e1e23c *e1m1-bsp29-onlyents.bsp af7bc468d76aa1b11d1881a3378877059c6fd33fb37bea555d332e17d0e1e23c *e1m1-bsp29-onlyents.bsp
9f6db65a0c8a3eaa369deb3bb3168b5da69f23eb80a12788ff50d3c30b8a469a *qbspfeatures.bsp 9f6db65a0c8a3eaa369deb3bb3168b5da69f23eb80a12788ff50d3c30b8a469a *qbspfeatures.bsp
9c3627864390dee7b9649cd48aeed00c16f8f5d33c5a6f8e0ce67c8f73cd4135 *qbsp_func_detail.prt
f7f0653499cff3b38bf053a2ccabebe22f3937baab9c50202dfa345a0ff49eb0 *e1m1-bsp29.prt
f7f0653499cff3b38bf053a2ccabebe22f3937baab9c50202dfa345a0ff49eb0 *e1m1-bsp2.prt
f7f0653499cff3b38bf053a2ccabebe22f3937baab9c50202dfa345a0ff49eb0 *e1m1-2psb.prt
f7f0653499cff3b38bf053a2ccabebe22f3937baab9c50202dfa345a0ff49eb0 *e1m1-hexen2.prt
f7f0653499cff3b38bf053a2ccabebe22f3937baab9c50202dfa345a0ff49eb0 *e1m1-hexen2-bsp2.prt
f7f0653499cff3b38bf053a2ccabebe22f3937baab9c50202dfa345a0ff49eb0 *e1m1-hexen2-2psb.prt
f7f0653499cff3b38bf053a2ccabebe22f3937baab9c50202dfa345a0ff49eb0 *e1m1-hlbsp.prt
f7f0653499cff3b38bf053a2ccabebe22f3937baab9c50202dfa345a0ff49eb0 *e1m1-bspxbrushes.prt
f7f0653499cff3b38bf053a2ccabebe22f3937baab9c50202dfa345a0ff49eb0 *e1m1-bsp29-onlyents.prt
2d19e6aad96e6887640427ecd1bfeb484f078090e935b3cce789300a8eb5ee3c *qbspfeatures.prt