Files
actions-runner-controller/test/entrypoint/entrypoint_unittest.sh
Sebastien Le Digabel ec0915ce7c Adding some unit testing for entrypoint.sh
The unit tests are simulating a run for entrypoint. It creates some
dummy config.sh and runsvc.sh and makes sure the logic behind
entrypoint.sh is correct.

Unfortunately the entrypoint.sh contains some sections that are not
mockable so I had to put some logic in there too.

Testing includes for now:
- the normal scenario
- the normal non-ephemeral scenario
- the configuration failure scenario

Also tested the entrypoint.sh on a real runner, still works as expected.
2021-09-06 08:51:28 +09:00

38 lines
806 B
Bash
Executable File

#!/bin/bash
source logging.sh
for unittest in ./should*; do
log "**********************************"
log " UNIT TEST: ${unittest}"
log "**********************************"
log ""
cd ${unittest}
./test.sh
ret_code=$?
cd ..
log ""
log ""
if [ "${ret_code}" = "0" ]; then
success "Completed: unit test ${unittest}"
else
error "Completed: unit test ${unittest} with errors"
failed="true"
fi
done
if [ -n "${failed:-}" ]; then
error ""
error "*************************************"
error "All unit tests completed, with errors"
error "*************************************"
exit 1
else
success ""
success "***************************************"
success "All unit tests completed with no errors"
success "***************************************"
fi