tests: add some more actions to test-issue-6028, describe what's being done
This patch does two things: it explains what's happening in the test file so
it's easier to understand, and also it adds checks that make sure something
like swapping merge parents is not accidentally breaking anything.
The primary reason to touch this test file was that it was broken by a change
in core's merge.graft() that erroneously swapped merge parents. Since only
evolve uses merge.graft() for merge commits and there aren't any tests in core
for it, let's test it here. Plus, this test case is pretty simple and these
additional checks don't make it too complicated.
#!/bin/bash
set -euo pipefail
# Prepare pandoc filters
if [ -d pandocfilters/.git ]; then
(cd pandocfilters && git remote update && git merge --ff-only)
else
git clone https://github.com/Lothiraldan/pandocfilters.git
fi
pip2 install pandocfilters
pip2 install pygraphviz
pip2 install panflute
pip2 install hg+https://bitbucket.org/octobus/mercurial_docgraph
pip2 install hg-evolve
mkdir -p graphs output
CMD_NOT_FOUND=0
check_command() {
cmd=$1
if ! which "$cmd" >/dev/null 2>&1; then
echo "Error: command '$cmd' not found in \$PATH"
echo "Please install '$cmd'"
CMD_NOT_FOUND=1
else
echo "$cmd command was found"
fi
}
check_command pandoc
check_command aha
if [ "$CMD_NOT_FOUND" -ne "0" ]; then
exit 1
fi
# Prepare directory for repositories generated by the training.t file
mkdir -p base-repos
rm -Rf base-repos/*