(command.CommandList children: [ (command.Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (lhs_expr.LhsName name:test_description spids:[12]) op: Equal rhs: {(SQ <'git-status ignored files'>)} spids: [12] ) ] spids: [12] ) (C {(.)} {(./test-lib.sh)}) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 36 stdin_parts: [('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('?? untracked/\n')] ) ] ) (C {(test_expect_success)} {(SQ <'status untracked directory with --ignored'>)} { (SQ <'\n'> <'\techo "ignored" >.gitignore &&\n'> <'\tmkdir untracked &&\n'> <'\t: >untracked/ignored &&\n'> <'\t: >untracked/uncommitted &&\n'> <'\tgit status --porcelain --ignored >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (C {(test_expect_success)} {(SQ <'same with gitignore starting with BOM'>)} { (SQ <'\n'> <'\tprintf "\\357\\273\\277ignored\\n" >.gitignore &&\n'> <'\tmkdir -p untracked &&\n'> <'\t: >untracked/ignored &&\n'> <'\t: >untracked/uncommitted &&\n'> <'\tgit status --porcelain --ignored >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 86 stdin_parts: [ ('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('?? untracked/uncommitted\n') ('!! untracked/ignored\n') ] ) ] ) (C {(test_expect_success)} {(SQ <'status untracked directory with --ignored -u'>)} { (SQ <'\n'> <'\tgit status --porcelain --ignored -u >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 111 stdin_parts: [('?? untracked/uncommitted\n') ('!! untracked/ignored\n')] ) ] ) (C {(test_expect_success)} {(SQ <'status prefixed untracked directory with --ignored'>)} { (SQ <'\n'> <'\tgit status --porcelain --ignored untracked/ >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 137 stdin_parts: [('?? untracked/uncommitted\n') ('!! untracked/ignored\n')] ) ] ) (C {(test_expect_success)} {(SQ <'status prefixed untracked sub-directory with --ignored -u'>)} { (SQ <'\n'> <'\tgit status --porcelain --ignored -u untracked/ >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 165 stdin_parts: [('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('!! ignored/\n')] ) ] ) (C {(test_expect_success)} {(SQ <'status ignored directory with --ignore'>)} { (SQ <'\n'> <'\trm -rf untracked &&\n'> <'\tmkdir ignored &&\n'> <'\t: >ignored/uncommitted &&\n'> <'\tgit status --porcelain --ignored >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 196 stdin_parts: [ ('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('!! ignored/uncommitted\n') ] ) ] ) (C {(test_expect_success)} {(SQ <'status ignored directory with --ignore -u'>)} { (SQ <'\n'> <'\tgit status --porcelain --ignored -u >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 223 stdin_parts: [('?? .gitignore\n') ('?? actual\n') ('?? expected\n')] ) ] ) (C {(test_expect_success)} {(SQ <'status empty untracked directory with --ignore'>)} { (SQ <'\n'> <'\trm -rf ignored &&\n'> <'\tmkdir untracked-ignored &&\n'> <'\tmkdir untracked-ignored/test &&\n'> <'\tgit status --porcelain --ignored >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 253 stdin_parts: [('?? .gitignore\n') ('?? actual\n') ('?? expected\n')] ) ] ) (C {(test_expect_success)} {(SQ <'status empty untracked directory with --ignore -u'>)} { (SQ <'\n'> <'\tgit status --porcelain --ignored -u >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 281 stdin_parts: [ ('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('!! untracked-ignored/\n') ] ) ] ) (C {(test_expect_success)} {(SQ <'status untracked directory with ignored files with --ignore'>)} { (SQ <'\n'> <'\t: >untracked-ignored/ignored &&\n'> <'\t: >untracked-ignored/test/ignored &&\n'> <'\tgit status --porcelain --ignored >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 312 stdin_parts: [ ('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('!! untracked-ignored/ignored\n') ('!! untracked-ignored/test/ignored\n') ] ) ] ) (C {(test_expect_success)} {(SQ <'status untracked directory with ignored files with --ignore -u'>)} { (SQ <'\n'> <'\tgit status --porcelain --ignored -u >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 339 stdin_parts: [('?? .gitignore\n') ('?? actual\n') ('?? expected\n')] ) ] ) (C {(test_expect_success)} {(SQ <'status ignored tracked directory with --ignore'>)} { (SQ <'\n'> <'\trm -rf untracked-ignored &&\n'> <'\tmkdir tracked &&\n'> <'\t: >tracked/committed &&\n'> <'\tgit add tracked/committed &&\n'> <'\tgit commit -m. &&\n'> <'\techo "tracked" >.gitignore &&\n'> <'\tgit status --porcelain --ignored >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 372 stdin_parts: [('?? .gitignore\n') ('?? actual\n') ('?? expected\n')] ) ] ) (C {(test_expect_success)} {(SQ <'status ignored tracked directory with --ignore -u'>)} { (SQ <'\n'> <'\tgit status --porcelain --ignored -u >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 399 stdin_parts: [('?? .gitignore\n') ('?? actual\n') ('?? expected\n')] ) ] ) (C {(test_expect_success)} {(SQ <'status ignored tracked directory and ignored file with --ignore'>)} { (SQ <'\n'> <'\techo "committed" >>.gitignore &&\n'> <'\tgit status --porcelain --ignored >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 427 stdin_parts: [('?? .gitignore\n') ('?? actual\n') ('?? expected\n')] ) ] ) (C {(test_expect_success)} {(SQ <'status ignored tracked directory and ignored file with --ignore -u'>)} {(SQ <'\n'> <'\tgit status --porcelain --ignored -u >actual &&\n'> <'\ttest_cmp expected actual\n'>)} ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 455 stdin_parts: [ ('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('!! tracked/uncommitted\n') ] ) ] ) (C {(test_expect_success)} {(SQ <'status ignored tracked directory and uncommitted file with --ignore'>)} { (SQ <'\n'> <'\techo "tracked" >.gitignore &&\n'> <'\t: >tracked/uncommitted &&\n'> <'\tgit status --porcelain --ignored >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 485 stdin_parts: [ ('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('!! tracked/uncommitted\n') ] ) ] ) (C {(test_expect_success)} {(SQ <'status ignored tracked directory and uncommitted file with --ignore -u'>)} {(SQ <'\n'> <'\tgit status --porcelain --ignored -u >actual &&\n'> <'\ttest_cmp expected actual\n'>)} ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 513 stdin_parts: [('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('!! tracked/ignored/\n')] ) ] ) (C {(test_expect_success)} { (SQ < 'status ignored tracked directory with uncommitted file in untracked subdir with --ignore' > ) } { (SQ <'\n'> <'\trm -rf tracked/uncommitted &&\n'> <'\tmkdir tracked/ignored &&\n'> <'\t: >tracked/ignored/uncommitted &&\n'> <'\tgit status --porcelain --ignored >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 544 stdin_parts: [ ('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('!! tracked/ignored/uncommitted\n') ] ) ] ) (C {(test_expect_success)} { (SQ < 'status ignored tracked directory with uncommitted file in untracked subdir with --ignore -u' > ) } {(SQ <'\n'> <'\tgit status --porcelain --ignored -u >actual &&\n'> <'\ttest_cmp expected actual\n'>)} ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 572 stdin_parts: [ ('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('!! tracked/ignored/uncommitted\n') ] ) ] ) (C {(test_expect_success)} { (SQ < 'status ignored tracked directory with uncommitted file in tracked subdir with --ignore' > ) } { (SQ <'\n'> <'\t: >tracked/ignored/committed &&\n'> <'\tgit add -f tracked/ignored/committed &&\n'> <'\tgit commit -m. &&\n'> <'\tgit status --porcelain --ignored >actual &&\n'> <'\ttest_cmp expected actual\n'> ) } ) (command.SimpleCommand words: [{(cat)}] redirects: [ (redir.Redir op:<Redir_Great '>'> fd:16777215 arg_word:{(expected)}) (redir.HereDoc op: <Redir_DLess '<<'> fd: 16777215 here_begin: {(word_part.EscapedLiteralPart token:<Lit_EscapedChar '\\E'>) (OF)} here_end_span_id: 603 stdin_parts: [ ('?? .gitignore\n') ('?? actual\n') ('?? expected\n') ('!! tracked/ignored/uncommitted\n') ] ) ] ) (C {(test_expect_success)} { (SQ < 'status ignored tracked directory with uncommitted file in tracked subdir with --ignore -u' > ) } {(SQ <'\n'> <'\tgit status --porcelain --ignored -u >actual &&\n'> <'\ttest_cmp expected actual\n'>)} ) (C {(test_done)}) ] )