summaryrefslogtreecommitdiffstats
path: root/test-commits.sh
diff options
context:
space:
mode:
Diffstat (limited to 'test-commits.sh')
-rwxr-xr-xtest-commits.sh56
1 files changed, 56 insertions, 0 deletions
diff --git a/test-commits.sh b/test-commits.sh
index 01b07d3..083c38c 100755
--- a/test-commits.sh
+++ b/test-commits.sh
@@ -368,4 +368,60 @@ test_quiet_if_no_remote_master() {
rm_tmp
}
+
+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