diff options
author | Michael Allen <michael@michaelallen.io> | 2015-08-10 19:51:09 +0100 |
---|---|---|
committer | Michael Allen <michael@michaelallen.io> | 2015-08-10 19:51:09 +0100 |
commit | b27e644f6359b6a04d1be7d6a9f679496ed28349 (patch) | |
tree | d8f0251c0a0c1a34c43619b8532408a9b323a257 | |
parent | c7d0d53b2f3fa6acef62651e23b2c4d165ecfbd3 (diff) | |
download | git-sonar-b27e644f6359b6a04d1be7d6a9f679496ed28349.tar.gz git-sonar-b27e644f6359b6a04d1be7d6a9f679496ed28349.zip |
Test the bash and zsh commit function
-rwxr-xr-x | test-local-commit.sh | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/test-local-commit.sh b/test-local-commit.sh new file mode 100755 index 0000000..68fe467 --- /dev/null +++ b/test-local-commit.sh @@ -0,0 +1,73 @@ +scriptDir="$(cd "$(dirname "$0")"; pwd)" + +source "$scriptDir/git-base.sh" + +tmpfile="" + +cd_to_tmp() { + tmpfile="/tmp/git-prompt-tests-$(time_now)$1" + mkdir -p "$tmpfile" + cd "$tmpfile" +} + +rm_tmp() { + cd $scriptDir + rm -rf /tmp/git-prompt-tests* +} + +test_zsh_and_bash_local_commits() { + local zsh_up="%{[green]%}↑%{%}" + local zsh_both="%{[yellow]%}⇵%{%}" + local zsh_down="%{[red]%}↓%{%}" + + printf -v bash_up '\033[1;32m↑\033[0m' + printf -v bash_both '\033[1;33m⇵\033[0m' + printf -v bash_down '\033[1;31m↓\033[0m' + + cd_to_tmp "remote" + + assertEquals "" "$(zsh_color_local_commits)" + assertEquals "" "$(bash_color_local_commits)" + + git init --quiet + touch README + git add . + git commit -m "initial commit" --quiet + remote="$(pwd)" + + cd_to_tmp "new" + git init --quiet + git remote add origin $remote + git fetch origin --quiet + git checkout master --quiet + repo="$(pwd)" + + assertEquals "" "$(zsh_color_local_commits)" + assertEquals "" "$(bash_color_local_commits)" + + cd "$repo" + echo "bar" > bar + git add . + git commit -m "test commit" --quiet + + assertEquals " 1$zsh_up" "$(zsh_color_local_commits)" + assertEquals " 1$bash_up" "$(bash_color_local_commits)" + + cd "$remote" + echo "foo" > foo + git add . + git commit -m "test commit" --quiet + + cd "$repo" + git fetch origin --quiet + + assertEquals " 1${zsh_both}1" "$(zsh_color_local_commits)" + assertEquals " 1${bash_both}1" "$(bash_color_local_commits)" + + git reset --hard HEAD^ --quiet + + assertEquals " 1$zsh_down" "$(zsh_color_local_commits)" + assertEquals " 1$bash_down" "$(bash_color_local_commits)" +} + +. ./shunit/shunit2 |