summaryrefslogtreecommitdiffstats
path: root/test/test-files.sh
diff options
context:
space:
mode:
authorMalfurious <m@lfurio.us>2021-08-23 07:35:24 -0400
committerMalfurious <m@lfurio.us>2021-08-23 07:35:24 -0400
commit0175c1c40f9567a401a986d85ab6d6f5365eec7a (patch)
tree6e631a29735ab0c5ca0f1650934da3a24eecff62 /test/test-files.sh
parent6c08d333a74aacd1fa9d14de9abab38ede4a8e88 (diff)
downloadgit-sonar-0175c1c40f9567a401a986d85ab6d6f5365eec7a.tar.gz
git-sonar-0175c1c40f9567a401a986d85ab6d6f5365eec7a.zip
Remove unit tests
I don't particularly wish to maintain these tests for a few reasons: * Many of them make assertions strictly about rendered text / UI * Many of them test external systems and touch the disk * There are platform-dependent details that complicate several tests. So, the tests are removed. Ideally, the main script is reworked into something simple enough it doesn't necessarily warrant heavy testing. Signed-off-by: Malfurious <m@lfurio.us>
Diffstat (limited to 'test/test-files.sh')
-rwxr-xr-xtest/test-files.sh274
1 files changed, 0 insertions, 274 deletions
diff --git a/test/test-files.sh b/test/test-files.sh
deleted file mode 100755
index fff5144..0000000
--- a/test/test-files.sh
+++ /dev/null
@@ -1,274 +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_untracked_files() {
- cd_to_tmp
- git init --quiet
-
- assertEquals "" "$(untracked_status)"
-
- touch foo
- assertEquals "1?" "$(untracked_status)"
-
- git add --all
- assertEquals "" "$(untracked_status)"
-
- rm_tmp
-}
-
-test_unstaged_modified_files() {
- cd_to_tmp
- git init --quiet
-
- assertEquals "" "$(unstaged_status)"
-
- touch foo
- touch bar
- git add --all
- git commit -m "foo and bar" >/dev/null
-
- echo "foo" >> foo
- assertEquals "1M" "$(unstaged_status)"
-
- echo "bar" >> bar
- assertEquals "2M" "$(unstaged_status)"
-
- rm_tmp
-}
-
-test_unstaged_deleted_files() {
- cd_to_tmp
- git init --quiet
-
- assertEquals "" "$(unstaged_status)"
-
- touch foo
- touch bar
- git add --all
- git commit -m "foo and bar" >/dev/null
-
- rm foo
- assertEquals "1D" "$(unstaged_status)"
-
- rm bar
- assertEquals "2D" "$(unstaged_status)"
-
- rm_tmp
-}
-
-test_staged_added_files() {
- cd_to_tmp
- git init --quiet
-
- assertEquals "" "$(staged_status)"
-
- touch foo
- git add --all
- assertEquals "1A" "$(staged_status)"
-
- touch bar
- git add --all
- assertEquals "2A" "$(staged_status)"
-
- rm_tmp
-}
-
-test_staged_modified_files() {
- cd_to_tmp
- git init --quiet
-
- assertEquals "" "$(staged_status)"
-
- touch foo
- touch bar
- git add --all
- git commit -m "foo and bar" >/dev/null
-
- echo "foo" >> foo
- git add --all
- assertEquals "1M" "$(staged_status)"
-
- echo "bar" >> bar
- git add --all
- assertEquals "2M" "$(staged_status)"
-
- rm_tmp
-}
-
-test_staged_deleted_files() {
- cd_to_tmp
- git init --quiet
-
- assertEquals "" "$(staged_status)"
-
- touch foo
- touch bar
- git add --all
- git commit -m "foo and bar" >/dev/null
-
- rm foo
- git add --all
- assertEquals "1D" "$(staged_status)"
-
- rm bar
- git add --all
- assertEquals "2D" "$(staged_status)"
-
- rm_tmp
-}
-
-test_staged_renamed_files() {
- cd_to_tmp
- git init --quiet
-
- assertEquals "" "$(staged_status)"
-
- touch foo
- touch bar
- git add --all
- git commit -m "foo and bar" >/dev/null
-
- mv foo foo2
- git add --all
- assertEquals "1R" "$(staged_status)"
-
- mv bar bar2
- git add --all
- assertEquals "2R" "$(staged_status)"
-
- rm_tmp
-}
-
-test_conflicted_both_changes() {
- cd_to_tmp
- git init --quiet
-
- git checkout -b foo --quiet
- echo "foo" >> foo
- git add --all
- git commit -m "foo" --quiet
-
- git checkout -b foo2 --quiet
- echo "bar" >> foo
- git add --all
- git commit -m "bar" --quiet
-
- git checkout foo --quiet
- echo "foo2" >> foo
- git add --all
- git commit -m "foo2" --quiet
-
- assertEquals "" "$(conflicted_status)"
-
- git merge foo2 >/dev/null
-
- assertEquals "1B" "$(conflicted_status)"
-
- rm_tmp
-}
-
-test_conflicted_them_changes() {
- cd_to_tmp
- git init --quiet
-
- git checkout -b foo --quiet
- echo "foo" >> foo
- git add --all
- git commit -m "foo" --quiet
-
- git checkout -b foo2 --quiet
- rm foo
- git add --all
- git commit -m "delete foo" --quiet
-
- git checkout foo --quiet
- echo "foo2" >> foo
- git add --all
- git commit -m "foo2" --quiet
-
- assertEquals "" "$(conflicted_status)"
-
- git merge foo2 >/dev/null
-
- assertEquals "1T" "$(conflicted_status)"
-
- rm_tmp
-}
-
-test_conflicted_us_changes() {
- cd_to_tmp
- git init --quiet
-
- git checkout -b foo --quiet
- echo "foo" >> foo
- git add --all
- git commit -m "foo" --quiet
-
- git checkout -b foo2 --quiet
- echo "bar" >> foo
- git add --all
- git commit -m "bar" --quiet
-
- git checkout foo --quiet
- rm foo
- git add --all
- git commit -m "delete foo" --quiet
-
- assertEquals "" "$(conflicted_status)"
-
- git merge foo2 >/dev/null
-
- assertEquals "1U" "$(conflicted_status)"
-
- rm_tmp
-}
-
-test_is_dirty() {
- cd_to_tmp
-
- assertFalse "not in repo" is_dirty
-
- git init --quiet
- assertFalse "in repo and clean" is_dirty
-
- touch foo
- assertTrue "untracked files" is_dirty
-
- mkdir sneakSubDir
- cd sneakSubDir
- assertTrue "untracked files while in an empty sub dir" is_dirty
-
- cd ../
-
- git add --all
- assertTrue "staged addition files" is_dirty
-
- git commit -m "inital commit" --quiet
-
- assertFalse "commited and clean" is_dirty
-
- echo "foo" >> foo
- assertTrue "modified file unstaged" is_dirty
-
- git add --all
- assertTrue "modified file staged" is_dirty
-
- rm_tmp
-}
-
-. ./shunit/shunit2