Impressionante Phpunit + Git Pre-commit

Para um projeto recente, precisei ter certeza de que todo o meu código está pronto para entrega. Isso significa usar o phpunit para fazer testes em meu novo código. Decidi que queria uma experiência de console interativo, então criei este gancho de pré-confirmação legal que executará um belo teste testdox phpunit e, se houver erros, ele perguntará se você deseja um teste mais detalhado. Se os testes funcionarem, você passará por todas as suas diversões normais do git!

#!/bin/bash

exec < /dev/tty
phpunit
--colors -c $(echo $PWD)/functions/phpunit.xml --testdox
#Get the last processes exit code
rc
=$?
if [[ $rc != 0 ]] ; then
echo
-n "It looks like some of your tests failed. Would you like to see a more detailed test output? (y/n) "
read YN

if [ -z "$YN" ]; then
exit $rc;
elif [ "$YN" != "y" ]; then
exit $rc;
fi
phpunit
--colors -c $(echo $PWD)/functions/phpunit.xml --verbose
fi

exit $rc;

Você pode alterar seu código para se adequar e fazer coisas interessantes, como simplesmente fazer a descoberta automática de testes, etc.