(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_description) op: assign_op.Equal rhs: { (SQ <'git rebase --whitespace=fix\n'> <'\n'> <'This test runs git rebase --whitespace=fix and make sure that it works.\n'> ) } spids: [4] ) ] ) (C {<.>} {<./test-lib.sh>}) (command.Simple words: [{<cat>}] redirects: [ (redir.Redir op:<Id.Redir_Great '>'> fd:-1 arg_word:{<file>}) (redir.HereDoc op: <Id.Redir_DLess '<<'> fd: -1 here_begin: {<EOF>} here_end_span_id: 33 stdin_parts: [<'a\n'> <'b\n'> <'c\n'> <'\n'>] ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir.Redir op:<Id.Redir_Great '>'> fd:-1 arg_word:{<expect-first>}) (redir.HereDoc op: <Id.Redir_DLess '<<'> fd: -1 here_begin: {<EOF>} here_end_span_id: 50 stdin_parts: [<'a\n'> <'b\n'> <'c\n'>] ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir.Redir op:<Id.Redir_Great '>'> fd:-1 arg_word:{<second>}) (redir.HereDoc op: <Id.Redir_DLess '<<'> fd: -1 here_begin: {<EOF>} here_end_span_id: 75 stdin_parts: [<'a\n'> <'b\n'> <'c\n'> <'\n'> <'d\n'> <'e\n'> <'f\n'> <'\n'> <'\n'> <'\n'> <'\n'>] ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir.Redir op:<Id.Redir_Great '>'> fd:-1 arg_word:{<expect-second>}) (redir.HereDoc op: <Id.Redir_DLess '<<'> fd: -1 here_begin: {<EOF>} here_end_span_id: 96 stdin_parts: [<'a\n'> <'b\n'> <'c\n'> <'\n'> <'d\n'> <'e\n'> <'f\n'>] ) ] ) (C {<test_expect_success>} {(SQ <'blank line at end of file; extend at end of file'>)} { (SQ <'\n'> <'\tgit commit --allow-empty -m "Initial empty commit" &&\n'> <'\tgit add file && git commit -m first &&\n'> <'\tmv second file &&\n'> <'\tgit add file &&\tgit commit -m second &&\n'> <'\tgit rebase --whitespace=fix HEAD^^ &&\n'> <'\tgit diff --exit-code HEAD^:file expect-first &&\n'> <'\ttest_cmp file expect-second\n'> ) } ) (command.Simple words: [{<sed>} {<-e> (SQ <s/Z//>)}] redirects: [ (redir.Redir op:<Id.Redir_Great '>'> fd:-1 arg_word:{<third>}) (redir.HereDoc op: <Id.Redir_DLess '<<'> fd: -1 here_begin: {<EOF>} here_end_span_id: 147 stdin_parts: [ <'a\n'> <'b\n'> <'c\n'> <'\n'> <'d\n'> <'e\n'> <'f\n'> <' Z\n'> <' Z\n'> <'h\n'> <'i\n'> <'j\n'> <'k\n'> <'l\n'> ] ) ] ) (command.Simple words: [{<sed>} {<-e> (SQ <'s/ //g'>)}] redirects: [ (redir.Redir op:<Id.Redir_Less '<'> fd:-1 arg_word:{<third>}) (redir.Redir op:<Id.Redir_Great '>'> fd:-1 arg_word:{<expect-third>}) ] ) (C {<test_expect_success>} {(SQ <'two blanks line at end of file; extend at end of file'>)} { (SQ <'\n'> <'\tcp third file && git add file && git commit -m third &&\n'> <'\tgit rebase --whitespace=fix HEAD^^ &&\n'> <'\tgit diff --exit-code HEAD^:file expect-second &&\n'> <'\ttest_cmp file expect-third\n'> ) } ) (C {<test_expect_success>} {(SQ <'same, but do not remove trailing spaces'>)} { (SQ <'\n'> <'\tgit config core.whitespace "-blank-at-eol" &&\n'> <'\tgit reset --hard HEAD^ &&\n'> <'\tcp third file && git add file && git commit -m third &&\n'> <'\tgit rebase --whitespace=fix HEAD^^ &&\n'> <'\tgit diff --exit-code HEAD^:file expect-second &&\n'> <'\ttest_cmp file third\n'> ) } ) (command.Simple words: [{<sed>} {<-e> (SQ <s/Z//>)}] redirects: [ (redir.Redir op:<Id.Redir_Great '>'> fd:-1 arg_word:{<beginning>}) (redir.HereDoc op: <Id.Redir_DLess '<<'> fd: -1 here_begin: {<EOF>} here_end_span_id: 212 stdin_parts: [<'a\n'> <'\t\t Z\n'> <' Z\n'>] ) ] ) (command.Simple words: [{<cat>}] redirects: [ (redir.Redir op:<Id.Redir_Great '>'> fd:-1 arg_word:{<expect-beginning>}) (redir.HereDoc op: <Id.Redir_DLess '<<'> fd: -1 here_begin: {<EOF>} here_end_span_id: 231 stdin_parts: [<'a\n'> <'\n'> <'\n'> <'1\n'> <'2\n'> <'3\n'> <'4\n'> <'5\n'>] ) ] ) (C {<test_expect_success>} {(SQ <'at beginning of file'>)} { (SQ <'\n'> <'\tgit config core.whitespace "blank-at-eol" &&\n'> <'\tcp beginning file &&\n'> <'\tgit commit -m beginning file &&\n'> <'\tfor i in 1 2 3 4 5; do\n'> <'\t\techo $i\n'> <'\tdone >> file &&\n'> <'\tgit commit -m more file\t&&\n'> <'\tgit rebase --whitespace=fix HEAD^^ &&\n'> <'\ttest_cmp file expect-beginning\n'> ) } ) (C {<test_done>}) ] )