summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Allen <michael@michaelallen.io>2015-08-10 19:51:09 +0100
committerMichael Allen <michael@michaelallen.io>2015-08-10 19:51:09 +0100
commitb27e644f6359b6a04d1be7d6a9f679496ed28349 (patch)
treed8f0251c0a0c1a34c43619b8532408a9b323a257
parentc7d0d53b2f3fa6acef62651e23b2c4d165ecfbd3 (diff)
downloadgit-sonar-b27e644f6359b6a04d1be7d6a9f679496ed28349.tar.gz
git-sonar-b27e644f6359b6a04d1be7d6a9f679496ed28349.zip
Test the bash and zsh commit function
-rwxr-xr-xtest-local-commit.sh73
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