(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_description) op: assign_op.Equal rhs: {(SQ (Token id:Id.Lit_Chars val:'diff hunk header truncation' span_id:6))} spids: [4] ) ] ) (C {(.)} {(./test-lib.sh)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:N) op: assign_op.Equal rhs: {(SQ (Token id:Id.Lit_Chars val:'\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e' span_id:17))} spids: [15] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:N1) op: assign_op.Equal rhs: {(SQ (Token id:Id.Lit_Chars val:'\xe6\x97\xa5' span_id:22))} spids: [20] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:N2) op: assign_op.Equal rhs: {(SQ (Token id:Id.Lit_Chars val:'\xe6\x97\xa5\xe6\x9c\xac' span_id:27))} spids: [25] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:NS) op: assign_op.Equal rhs: { (DQ ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ($ Id.VSub_DollarName '$N') ) } spids: [30] ) ] ) (C {(test_expect_success)} {(setup)} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:53) (Token id:Id.Lit_Chars val:'\n' span_id:54) (Token id:Id.Lit_Chars val:'\t(\n' span_id:55) (Token id:Id.Lit_Chars val:'\t\techo "A $NS"\n' span_id:56) (Token id:Id.Lit_Chars val:'\t\tfor c in B C D E F G H I J K\n' span_id:57) (Token id:Id.Lit_Chars val:'\t\tdo\n' span_id:58) (Token id:Id.Lit_Chars val:'\t\t\techo " $c"\n' span_id:59) (Token id:Id.Lit_Chars val:'\t\tdone\n' span_id:60) (Token id:Id.Lit_Chars val:'\t\techo "L $NS"\n' span_id:61) (Token id:Id.Lit_Chars val:'\t\tfor c in M N O P Q R S T U V\n' span_id:62) (Token id:Id.Lit_Chars val:'\t\tdo\n' span_id:63) (Token id:Id.Lit_Chars val:'\t\t\techo " $c"\n' span_id:64) (Token id:Id.Lit_Chars val:'\t\tdone\n' span_id:65) (Token id:Id.Lit_Chars val:'\t) >file &&\n' span_id:66) (Token id:Id.Lit_Chars val:'\tgit add file &&\n' span_id:67) (Token id:Id.Lit_Chars val:'\n' span_id:68) (Token id: Id.Lit_Chars val: '\tsed -e "/^ [EP]/s/$/ modified/" <file >file+ &&\n' span_id: 69 ) (Token id:Id.Lit_Chars val:'\tmv file+ file\n' span_id:70) (Token id:Id.Lit_Chars val:'\n' span_id:71) ) } ) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'hunk header truncation with an overly long line' span_id:78))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:82) (Token id:Id.Lit_Chars val:'\n' span_id:83) (Token id: Id.Lit_Chars val: '\tgit diff | sed -n -e "s/^.*@@//p" >actual &&\n' span_id: 84 ) (Token id:Id.Lit_Chars val:'\t(\n' span_id:85) (Token id:Id.Lit_Chars val:'\t\techo " A $N$N$N$N$N$N$N$N$N2"\n' span_id:86) (Token id:Id.Lit_Chars val:'\t\techo " L $N$N$N$N$N$N$N$N$N1"\n' span_id:87) (Token id:Id.Lit_Chars val:'\t) >expected &&\n' span_id:88) (Token id:Id.Lit_Chars val:'\ttest_cmp actual expected\n' span_id:89) (Token id:Id.Lit_Chars val:'\n' span_id:90) ) } ) (C {(test_done)}) ] )