Code

Add a small patch-mode testing library
[git.git] / t / lib-patch-mode.sh
1 . ./test-lib.sh
3 set_state () {
4         echo "$3" > "$1" &&
5         git add "$1" &&
6         echo "$2" > "$1"
7 }
9 save_state () {
10         noslash="$(echo "$1" | tr / _)" &&
11         cat "$1" > _worktree_"$noslash" &&
12         git show :"$1" > _index_"$noslash"
13 }
15 set_and_save_state () {
16         set_state "$@" &&
17         save_state "$1"
18 }
20 verify_state () {
21         test "$(cat "$1")" = "$2" &&
22         test "$(git show :"$1")" = "$3"
23 }
25 verify_saved_state () {
26         noslash="$(echo "$1" | tr / _)" &&
27         verify_state "$1" "$(cat _worktree_"$noslash")" "$(cat _index_"$noslash")"
28 }
30 save_head () {
31         git rev-parse HEAD > _head
32 }
34 verify_saved_head () {
35         test "$(cat _head)" = "$(git rev-parse HEAD)"
36 }