diff options
Diffstat (limited to 'test/test-commits.sh')
-rwxr-xr-x | test/test-commits.sh | 436 |
1 files changed, 0 insertions, 436 deletions
diff --git a/test/test-commits.sh b/test/test-commits.sh deleted file mode 100755 index 4593918..0000000 --- a/test/test-commits.sh +++ /dev/null @@ -1,436 +0,0 @@ -#!/bin/bash -scriptDir="$(cd "$(dirname "$0")"; pwd)" - -source "$scriptDir/sonar-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_commits_with_no_commits() { - cd_to_tmp - git init --quiet - - assertEquals "0" "$(commits_ahead_of_remote)" - assertEquals "0" "$(commits_behind_of_remote)" - - rm_tmp -} - -test_commits_behind_no_remote() { - cd_to_tmp - git init --quiet - - echo "foo" > foo - git add . - git commit -m "test commit" --quiet - assertEquals "0" "$(commits_behind_of_remote)" - - rm_tmp -} - -test_commits_ahead_no_remote() { - cd_to_tmp - git init --quiet - - echo "foo" > foo - git add . - git commit -m "test commit" --quiet - assertEquals "0" "$(commits_ahead_of_remote)" - - echo "bar" > bar - git add . - git commit -m "test commit" --quiet - assertEquals "0" "$(commits_ahead_of_remote)" - - rm_tmp -} - -test_commits_ahead_with_remote() { - cd_to_tmp "remote" - git init --quiet - touch README - git add . - git commit -m "initial commit" --quiet - remoteLocation="$(pwd)" - - cd_to_tmp "new" - git init --quiet - git remote add origin $remoteLocation - git fetch origin --quiet - git checkout master --quiet - repoLocation="$(pwd)" - - cd "$remoteLocation" - echo "foo" > foo - git add . - git commit -m "test commit" --quiet - cd "$repoLocation" - git fetch origin --quiet - assertEquals "1" "$(commits_ahead_of_remote)" - - cd "$remoteLocation" - echo "bar" > bar - git add . - git commit -m "test commit" --quiet - cd "$repoLocation" - git fetch origin --quiet - assertEquals "2" "$(commits_ahead_of_remote)" - - rm_tmp -} - -test_commits_ahead_with_remote() { - cd_to_tmp "remote" - git init --quiet - touch README - git add . - git commit -m "initial commit" --quiet - remoteLocation="$(pwd)" - - cd_to_tmp "new" - git init --quiet - git remote add origin $remoteLocation - git fetch origin --quiet - git checkout master --quiet - - echo "foo" > foo - git add . - git commit -m "test commit" --quiet - assertEquals "1" "$(commits_ahead_of_remote)" - - echo "bar" > bar - git add . - git commit -m "test commit" --quiet - assertEquals "2" "$(commits_ahead_of_remote)" - - rm_tmp -} - -test_remote_ahead_master() { - cd_to_tmp "remote" - git init --quiet - touch README - git add . - git commit -m "initial commit" --quiet - remoteLocation="$(pwd)" - - cd_to_tmp "new" - git init --quiet - git remote add origin $remoteLocation - git fetch origin --quiet - git checkout master --quiet - - git checkout -b foo --quiet - git push --quiet -u origin foo >/dev/null - - echo "foo" > foo - git add . - git commit -m "test commit" --quiet - assertEquals "0" "$(remote_ahead_of_master)" - git push --quiet - assertEquals "1" "$(remote_ahead_of_master)" - - echo "bar" > bar - git add . - git commit -m "test commit" --quiet - assertEquals "1" "$(remote_ahead_of_master)" - git push --quiet - assertEquals "2" "$(remote_ahead_of_master)" - - rm_tmp -} - -test_remote_behind_master() { - cd_to_tmp "remote" - git init --bare --quiet - remoteLocation="$(pwd)" - - cd_to_tmp "new" - git init --quiet - git remote add origin $remoteLocation - git fetch origin --quiet - git checkout -b master --quiet - touch README - git add README - git commit -m "initial commit" --quiet - - git push --quiet -u origin master >/dev/null - git reset --quiet --hard HEAD - - git checkout -b foo --quiet - git push --quiet -u origin foo >/dev/null - - assertEquals "0" "$(remote_behind_of_master)" - git checkout master --quiet - echo "foo" > foo - git add . - git commit -m "test commit" --quiet - git push --quiet >/dev/null - git checkout foo --quiet - assertEquals "1" "$(remote_behind_of_master)" - - git checkout master --quiet - echo "bar" > bar - git add . - git commit -m "test commit" --quiet - git push --quiet >/dev/null - git checkout foo --quiet - assertEquals "2" "$(remote_behind_of_master)" - - rm_tmp -} - -test_remote_branch_starts_with_local_branch_name() { - cd_to_tmp "remote" - git init --bare --quiet - remoteLocation="$(pwd)" - - cd_to_tmp "local" - git init --quiet - git remote add origin $remoteLocation - git fetch origin --quiet - - git checkout -b master --quiet - touch README - git add README - git commit -m "initial commit" --quiet - - git push --quiet -u origin master >/dev/null - git reset --quiet --hard HEAD - - git checkout -b foobar --quiet - touch foobarfile - git add foobarfile - git commit -m "added foobar" --quiet - git push --quiet -u origin foobar >/dev/null - - git checkout -b foo --quiet - - assertEquals "0" "$(remote_ahead_of_master)" - assertEquals "0" "$(remote_behind_of_master)" - assertEquals "0" "$(commits_behind_of_remote)" - assertEquals "0" "$(commits_ahead_of_remote)" - - rm_tmp -} -test_remote_branch_ends_with_local_branch_name() { - cd_to_tmp "remote" - git init --bare --quiet - remoteLocation="$(pwd)" - - cd_to_tmp "local" - git init --quiet - git remote add origin $remoteLocation - git fetch origin --quiet - - git checkout -b master --quiet - touch README - git add README - git commit -m "initial commit" --quiet - - git push --quiet -u origin master >/dev/null - git reset --quiet --hard HEAD - - git checkout -b foobar --quiet - touch foobarfile - git add foobarfile - git commit -m "added foobar" --quiet - git push --quiet -u origin foobar >/dev/null - - git checkout -b bar --quiet - - assertEquals "0" "$(remote_ahead_of_master)" - assertEquals "0" "$(remote_behind_of_master)" - assertEquals "0" "$(commits_behind_of_remote)" - assertEquals "0" "$(commits_ahead_of_remote)" - - rm_tmp -} - -test_dont_call_remote_branch_name() { - cd_to_tmp "remote" - git init --bare --quiet - remoteLocation="$(pwd)" - - cd_to_tmp "new" - git init --quiet - git remote add origin $remoteLocation - git fetch origin --quiet - git checkout -b master --quiet - touch README - git add README - git commit -m "initial commit" --quiet - - git push --quiet -u origin master >/dev/null - git reset --quiet --hard HEAD - - git checkout -b foo --quiet - git push --quiet -u origin foo >/dev/null - - remote_branch="$(remote_branch_name)" - - debug_output="$( - { - set -x - output="$( - remote_behind_of_master "$remote_branch"; - remote_ahead_of_master "$remote_branch"; - commits_ahead_of_remote "$remote_branch"; - commits_behind_of_remote "$remote_branch"; - )" - set +x - } 2>&1 - echo "$output" - )" - - #Grep through the output and look for remote_branch_name being called - usages="$(echo "$debug_output" | grep 'remote_branch_name' | wc -l )" - - #wc -l has a weird output - if [[ $OSTYPE == darwin* ]];then - expected=" 0" - else - expected="0" - fi; - assertEquals "$expected" "$usages" - - rm_tmp -} -test_dont_remote_if_remote_is_master() { - cd_to_tmp - git init --quiet - - remote_branch="origin/master" - - debug_output="$( - { - set -x - output="$( - remote_behind_of_master "$remote_branch"; - remote_ahead_of_master "$remote_branch"; - )" - set +x - } 2>&1 - echo "$output" - )" - - usages="$(echo "$debug_output" | grep 'git rev-list' | wc -l )" - - if [[ $OSTYPE == darwin* ]];then - expected=" 0" - else - expected="0" - fi; - assertEquals "$expected" "$usages" - - rm_tmp -} - -test_quiet_if_no_remote_master() { - cd_to_tmp "remote" - git init --quiet - touch README - git add . - git checkout -b foo --quiet - git commit -m "initial commit" --quiet - remoteLocation="$(pwd)" - - cd_to_tmp "new" - git init --quiet - git remote add origin $remoteLocation - git fetch origin --quiet - git checkout foo --quiet - repoLocation="$(pwd)" - - remote_branch="$(remote_branch_name)" - - debug_output="$( - { - output="$( - remote_behind_of_master "$remote_branch"; - )" - } 2>&1 - echo "$output" - )" - - assertEquals "0" "$debug_output" - debug_output="$( - { - output="$( - remote_ahead_of_master "$remote_branch"; - )" - } 2>&1 - echo "$output" - )" - - assertEquals "0" "$debug_output" - - rm_tmp -} - -test_local_commits() { - local up="↑" - local both="⇵" - local down="↓" - - cd_to_tmp "remote" - - assertEquals "" "$(zsh_color_local_commits)" - assertEquals "" "$(bash_color_local_commits)" - assertEquals "" "$(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)" - assertEquals "" "$(color_local_commits)" - - cd "$repo" - echo "bar" > bar - git add . - git commit -m "test commit" --quiet - - assertEquals "1$up" "$(zsh_color_local_commits)" - assertEquals "1$up" "$(bash_color_local_commits)" - assertEquals "1$up" "$(color_local_commits)" - - cd "$remote" - echo "foo" > foo - git add . - git commit -m "test commit" --quiet - - cd "$repo" - git fetch origin --quiet - - assertEquals "1${both}1" "$(zsh_color_local_commits)" - assertEquals "1${both}1" "$(bash_color_local_commits)" - assertEquals "1${both}1" "$(color_local_commits)" - - git reset --hard HEAD^ --quiet - - assertEquals "1$down" "$(zsh_color_local_commits)" - assertEquals "1$down" "$(bash_color_local_commits)" - assertEquals "1$down" "$(color_local_commits)" -} - -. ./shunit/shunit2 |