lib-rebase: style: use write_script, <<-\EOF

Signed-off-by: Andrew Pimlott <andrew@pimlott.net> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Andrew Pimlott committed Jul 1, 2013 at 09:23 UTC a49528155b8a35b34d00d0c2ace528e72c1fef06
1 file changed +36 -38
t/lib-rebase.sh
+36 -38
@@ -22,48 +22,46 @@
22 # ">" -- Add a blank line.
23
24 set_fake_editor () {
25 - echo "#!$SHELL_PATH" >fake-editor.sh
26 - cat >> fake-editor.sh <<\EOF
27 -case "$1" in
28 -*/COMMIT_EDITMSG)
29 - test -z "$EXPECT_HEADER_COUNT" ||
30 - test "$EXPECT_HEADER_COUNT" = "$(sed -n '1s/^# This is a combination of \(.*\) commits\./\1/p' < "$1")" ||
25 + write_script fake-editor.sh <<-\EOF
26 + case "$1" in
27 + */COMMIT_EDITMSG)
28 + test -z "$EXPECT_HEADER_COUNT" ||
29 + test "$EXPECT_HEADER_COUNT" = "$(sed -n '1s/^# This is a combination of \(.*\) commits\./\1/p' < "$1")" ||
30 + exit
31 + test -z "$FAKE_COMMIT_MESSAGE" || echo "$FAKE_COMMIT_MESSAGE" > "$1"
32 + test -z "$FAKE_COMMIT_AMEND" || echo "$FAKE_COMMIT_AMEND" >> "$1"
33 exit
32 - test -z "$FAKE_COMMIT_MESSAGE" || echo "$FAKE_COMMIT_MESSAGE" > "$1"
33 - test -z "$FAKE_COMMIT_AMEND" || echo "$FAKE_COMMIT_AMEND" >> "$1"
34 - exit
35 - ;;
36 -esac
37 -test -z "$EXPECT_COUNT" ||
38 - test "$EXPECT_COUNT" = $(sed -e '/^#/d' -e '/^$/d' < "$1" | wc -l) ||
39 - exit
40 -test -z "$FAKE_LINES" && exit
41 -grep -v '^#' < "$1" > "$1".tmp
42 -rm -f "$1"
43 -echo 'rebase -i script before editing:'
44 -cat "$1".tmp
45 -action=pick
46 -for line in $FAKE_LINES; do
47 - case $line in
48 - squash|fixup|edit|reword)
49 - action="$line";;
50 - exec*)
51 - echo "$line" | sed 's/_/ /g' >> "$1";;
52 - "#")
53 - echo '# comment' >> "$1";;
54 - ">")
55 - echo >> "$1";;
56 - *)
57 - sed -n "${line}s/^pick/$action/p" < "$1".tmp >> "$1"
58 - action=pick;;
34 + ;;
35 esac
60 -done
61 -echo 'rebase -i script after editing:'
62 -cat "$1"
63 -EOF
36 + test -z "$EXPECT_COUNT" ||
37 + test "$EXPECT_COUNT" = $(sed -e '/^#/d' -e '/^$/d' < "$1" | wc -l) ||
38 + exit
39 + test -z "$FAKE_LINES" && exit
40 + grep -v '^#' < "$1" > "$1".tmp
41 + rm -f "$1"
42 + echo 'rebase -i script before editing:'
43 + cat "$1".tmp
44 + action=pick
45 + for line in $FAKE_LINES; do
46 + case $line in
47 + squash|fixup|edit|reword)
48 + action="$line";;
49 + exec*)
50 + echo "$line" | sed 's/_/ /g' >> "$1";;
51 + "#")
52 + echo '# comment' >> "$1";;
53 + ">")
54 + echo >> "$1";;
55 + *)
56 + sed -n "${line}s/^pick/$action/p" < "$1".tmp >> "$1"
57 + action=pick;;
58 + esac
59 + done
60 + echo 'rebase -i script after editing:'
61 + cat "$1"
62 + EOF
63
64 test_set_editor "$(pwd)/fake-editor.sh"
66 - chmod a+x fake-editor.sh
65 }
66
67 # After set_cat_todo_editor, rebase -i will write the todo list (ignoring