(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:'git status with certain file name lengths' span_id:6))} spids: [4] ) ] ) (C {(.)} {(./test-lib.sh)}) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:files) op: assign_op.Equal rhs: {(DQ ('0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z'))} spids: [15] ) ] ) (command.ShFunction name: check body: (command.BraceGroup children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:len) op: assign_op.Equal rhs: {($ Id.VSub_Number '$1')} spids: [28] ) ] ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:prefix) op: assign_op.Equal rhs: {($ Id.VSub_Number '$2')} spids: [32] ) ] ) (command.ForEach iter_name: i iter_words: [{($ Id.VSub_DollarName '$files')}] do_arg_iter: F body: (command.DoGroup children: [ (command.Simple words: [{(Id.Lit_Other ':')}] redirects: [ (redir.Redir op: (Token id:Id.Redir_Great val:'>' span_id:51) fd: -1 arg_word: {($ Id.VSub_DollarName '$prefix') ($ Id.VSub_DollarName '$i')} ) ] ) ] ) ) (C {(test_expect_success)} {(DQ ('status, filename length ') ($ Id.VSub_DollarName '$len'))} { (DQ ('\n') ('\t\tgit add ') ($ Id.VSub_DollarName '$prefix') ('* &&\n') ('\t\tgit status\n') ('\t') ) } ) (C {(rm)} {($ Id.VSub_DollarName '$prefix') (Id.Lit_Star '*')} {(.git/index)}) ] ) ) (C {(check)} {(1)}) (C {(check)} {(2)} {(p)}) (C {(check)} {(3)} {(px)}) (C {(check)} {(4)} {(pre)}) (C {(check)} {(5)} {(pref)}) (C {(check)} {(6)} {(prefi)}) (C {(check)} {(7)} {(prefix)}) (C {(check)} {(8)} {(prefix-)}) (C {(check)} {(9)} {(prefix-p)}) (C {(check)} {(10)} {(prefix-pr)}) (C {(check)} {(11)} {(prefix-pre)}) (C {(check)} {(12)} {(prefix-pref)}) (C {(check)} {(13)} {(prefix-prefi)}) (C {(check)} {(14)} {(prefix-prefix)}) (C {(check)} {(15)} {(prefix-prefix-)}) (C {(check)} {(16)} {(prefix-prefix-p)}) (C {(check)} {(17)} {(prefix-prefix-pr)}) (C {(check)} {(18)} {(prefix-prefix-pre)}) (C {(check)} {(19)} {(prefix-prefix-pref)}) (C {(check)} {(20)} {(prefix-prefix-prefi)}) (C {(check)} {(21)} {(prefix-prefix-prefix)}) (C {(check)} {(22)} {(prefix-prefix-prefix-)}) (C {(check)} {(23)} {(prefix-prefix-prefix-p)}) (C {(check)} {(24)} {(prefix-prefix-prefix-pr)}) (C {(test_done)}) ] )