wesnoth/utils/update_pathfinding
P. J. McDermott 39fb741309 Make TeamColorizer and update_pathfinding executable
These scripts get installed but were missing execute mode bits.
2024-02-15 17:27:44 -06:00

24 lines
972 B
Bash
Executable File

#!/bin/sh
# Produces output suitable for data/test/macros/pathfind_answers.cfg.
# Expects to be run from the repository root.
# You may have to adjust PATH when calling this so the right wesnoth binary is used.
# set GENERATE_ANSWERS macro in test file to 1 to generate answers
testfile=data/test/scenarios/wml_tests/ScenarioWML/EventWML/ActionWML/InternalActionsWML/characterize_pathfinding.cfg
sed -i.bak '/^#define GENERATE_ANSWERS/{n;s/0/1/;}' "$testfile" || exit
if cmp -s "$testfile" "$testfile.bak"
then
printf 'Failed to change GENERATE_ANSWERS macro in %s!\n' "$testfile" >&2
exit 1
fi
# run unit test to generate answers
for i in 1 2 3 4 5 6 7
do
printf '#define GENERATED_REACHABILITY_ANSWERS_%s\n ' "$i"
wesnoth --nocache --log-debug=wml --noreplaycheck --unit characterize_pathfinding_reach_"$i" 2>&1 | sed -n 's/^.*: \([ [:digit:]]*\) ,/\1/p' | paste -sd,
printf '#enddef\n\n'
done
# restore test file
mv "$testfile.bak" "$testfile"