#!/bin/bash # We should save a change's description when an upload fails. set -e . ./test-lib.sh # Back up any previously-saved description the user might have. BACKUP_FILE="$HOME/.git_cl_description_backup" BACKUP_FILE_TMP="$BACKUP_FILE.tmp" if [ -e "$BACKUP_FILE" ]; then mv "$BACKUP_FILE" "$BACKUP_FILE_TMP" fi setup_initgit setup_gitgit ( set -e cd git-git DESC="this is the description" # Create a branch and check in a file. git checkout -q --track -b work origin echo foo >> test git add test; git commit -q -m "$DESC" # Try to upload the change to an unresolvable hostname; git-cl should fail. export EDITOR=$(which true) git config rietveld.server bogus.example.com:80 test_expect_failure "uploading to bogus server" "$GIT_CL upload 2>/dev/null" # Check that the change's description was saved. test_expect_success "description was backed up" \ "grep -q '$DESC' '$BACKUP_FILE'" ) SUCCESS=$? cleanup # Restore the previously-saved description. rm -f "$BACKUP_FILE" if [ -e "$BACKUP_FILE_TMP" ]; then mv "$BACKUP_FILE_TMP" "$BACKUP_FILE" fi if [ $SUCCESS == 0 ]; then echo PASS fi