Being able to run your RSpec tests prior to deploying to Git can save quite a few bugs, such as protecting against breaking your application by deploying a typo. By utilizing Git hooks, you can ensure that you run your test suite before your code gets pushed up to the repository.
To auto run your RSpec tests before the "git push" command is executed, you can perform the following steps:
1. In your project, create a file called: .git/hooks/pre-push
2. Add the following code (link to source code below the guide as well):
#!/bin/sh
echo "Running RSpec"
bundle exec rspec spec
spec=$?
if [ "$spec" = 0 ]
then
echo >&2 "Tests are green, pushing..."
exit 0
else
echo >&2 "Cannot push, tests are failing. Use --no-verify to force push."
exit 1
fi
3. Make the file executable by running the command: chmod u+x .git/hooks/pre-push