#!/usr/bin/env bash VIM="/Applications/MacVim.app/Contents/MacOS/Vim -v" status=0 # Execute the tests. for editor in "$VIM" nvim; do for testcase in test*.vim; do $editor -N -u NONE --cmd 'let g:gitgutter_async=0' -S $testcase -c 'quit!' git reset HEAD fixture.txt > /dev/null git checkout fixture.txt done # Verify the results. echo "$editor:" echo count_ok=0 count_fail=0 for expected in *.expected; do name=${expected%.*} actual=$name.actual if diff $expected $actual; then count_ok=$((count_ok + 1)) echo "$name ok" rm $actual else count_fail=$((count_fail + 1)) echo "$name failed" fi done # Print results. echo echo "$((count_ok + count_fail)) tests" echo "$count_ok ok" echo "$count_fail failed" echo status=$(($status + $count_fail)) done exit $status