(command.CommandList children: [ (command.Simple blame_tok: <set> more_env: [] words: [{<set>} {<-o>} {<nounset>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <set> more_env: [] words: [{<set>} {<-o>} {<pipefail>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <set> more_env: [] words: [{<set>} {<-o>} {<errexit>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <source> more_env: [] words: [{<source>} {<'test/common.sh'>}] redirects: [] do_fork: T ) (command.ShFunction name_tok: <time-tool> name: time-tool body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <Id.Left_DollarParen '$('> more_env: [] words: [ { (CommandSub left_token: <Id.Left_DollarParen '$('> child: (command.Simple blame_tok: <dirname> more_env: [] words: [{<dirname>} {($ Id.VSub_Number 0)}] redirects: [] do_fork: T ) right: <Id.Eof_RParen _> ) <'/time.py'> } {(DQ ($ Id.VSub_At '@'))} ] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <test-tsv> name: test-tsv body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'out='> <'_tmp/time.tsv'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <rm> more_env: [] words: [{<rm>} {<-f>} {($ Id.VSub_DollarName out)}] redirects: [] do_fork: T ) (command.ForEach keyword: <Id.KW_For for> iter_names: [i] iterable: (for_iter.Words words:[{<1>} {<2>} {<3>}]) semi_tok: <Id.Op_Semi _> body: (command.DoGroup left: <Id.KW_Do do> children: [ (command.Simple blame_tok: <time-tool> more_env: [] words: [ {<time-tool>} {<--tsv>} {<-o>} {($ Id.VSub_DollarName out)} {<-->} {<sleep>} {<0.0> (${ Id.VSub_Name i)} ] redirects: [] do_fork: T ) ] right: <Id.KW_Done done> ) redirects: [] ) (command.Simple blame_tok: <cat> more_env: [] words: [{<cat>} {($ Id.VSub_DollarName out)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <test-cannot-serialize> name: test-cannot-serialize body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <local> more_env: [] words: [{<local>} {<Id.Lit_VarLike 'out='> <'_tmp/time2.tsv'>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <rm> more_env: [] words: [{<rm>} {<-f>} {($ Id.VSub_DollarName out)}] redirects: [] do_fork: T ) (command.Simple blame_tok: <set> more_env: [] words: [{<set>} {<Id.Lit_Other '+'> <o>} {<errexit>}] redirects: [] do_fork: T ) (command.Sentence child: (command.Simple blame_tok: <time-tool> more_env: [] words: [ {<time-tool>} {<--tsv>} {<-o>} {($ Id.VSub_DollarName out)} {<--field>} { (SingleQuoted left: <Id.Left_DollarSingleQuote '$\''> tokens: [<Id.Char_OneChar '\\n'>] right: <Id.Right_SingleQuote '\''> ) } {<-->} {<sleep>} {<0.001>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) (command.ShAssignment left: <Id.Lit_VarLike 'status='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'status='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'status='> name:status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '?')} ) ] redirects: [] ) (command.AndOr children: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {($ Id.VSub_DollarName status)} {<Id.Lit_Equals '='>} {<1>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <fail> more_env: [] words: [{<fail>} {(DQ <'Unexpected status '> ($ Id.VSub_DollarName status))}] redirects: [] do_fork: T ) ] ops: [<Id.Op_DPipe _>] ) (command.Sentence child: (command.Simple blame_tok: <time-tool> more_env: [] words: [ {<time-tool>} {<--tsv>} {<-o>} {($ Id.VSub_DollarName out)} {<--field>} { (SingleQuoted left: <Id.Left_DollarSingleQuote '$\''> tokens: [<Id.Char_OneChar '\\t'>] right: <Id.Right_SingleQuote '\''> ) } {<-->} {<sleep>} {<0.001>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) (command.ShAssignment left: <Id.Lit_VarLike 'status='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'status='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'status='> name:status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '?')} ) ] redirects: [] ) (command.AndOr children: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {($ Id.VSub_DollarName status)} {<Id.Lit_Equals '='>} {<1>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <fail> more_env: [] words: [{<fail>} {(DQ <'Unexpected status '> ($ Id.VSub_DollarName status))}] redirects: [] do_fork: T ) ] ops: [<Id.Op_DPipe _>] ) (command.Sentence child: (command.Simple blame_tok: <time-tool> more_env: [] words: [ {<time-tool>} {<--tsv>} {<-o>} {($ Id.VSub_DollarName out)} {<--field>} {(SQ <'"'>)} {<-->} {<sleep>} {<0.001>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) (command.ShAssignment left: <Id.Lit_VarLike 'status='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'status='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'status='> name:status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '?')} ) ] redirects: [] ) (command.AndOr children: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {($ Id.VSub_DollarName status)} {<Id.Lit_Equals '='>} {<1>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <fail> more_env: [] words: [{<fail>} {(DQ <'Unexpected status '> ($ Id.VSub_DollarName status))}] redirects: [] do_fork: T ) ] ops: [<Id.Op_DPipe _>] ) (command.Sentence child: (command.Simple blame_tok: <time-tool> more_env: [] words: [ {<time-tool>} {<--tsv>} {<-o>} {($ Id.VSub_DollarName out)} {<--field>} {(SQ <'\\'>)} {<-->} {<sleep>} {<0.001>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) (command.ShAssignment left: <Id.Lit_VarLike 'status='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'status='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'status='> name:status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '?')} ) ] redirects: [] ) (command.AndOr children: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {($ Id.VSub_DollarName status)} {<Id.Lit_Equals '='>} {<0>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <fail> more_env: [] words: [{<fail>} {(DQ <'Unexpected status '> ($ Id.VSub_DollarName status))}] redirects: [] do_fork: T ) ] ops: [<Id.Op_DPipe _>] ) (command.Sentence child: (command.Simple blame_tok: <time-tool> more_env: [] words: [ {<time-tool>} {<--tsv>} {<-o>} {($ Id.VSub_DollarName out)} {<--field>} {(SQ <' '>)} {<-->} {<sleep>} {<0.001>} ] redirects: [] do_fork: T ) terminator: <Id.Op_Semi _> ) (command.ShAssignment left: <Id.Lit_VarLike 'status='> pairs: [ (AssignPair left: <Id.Lit_VarLike 'status='> lhs: (sh_lhs_expr.Name left:<Id.Lit_VarLike 'status='> name:status) op: assign_op.Equal rhs: {($ Id.VSub_QMark '?')} ) ] redirects: [] ) (command.AndOr children: [ (command.Simple blame_tok: <test> more_env: [] words: [{<test>} {($ Id.VSub_DollarName status)} {<Id.Lit_Equals '='>} {<0>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <fail> more_env: [] words: [{<fail>} {(DQ <'Unexpected status '> ($ Id.VSub_DollarName status))}] redirects: [] do_fork: T ) ] ops: [<Id.Op_DPipe _>] ) (command.Simple blame_tok: <set> more_env: [] words: [{<set>} {<-o>} {<errexit>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <cat> more_env: [] words: [{<cat>} {($ Id.VSub_DollarName out)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.ShFunction name_tok: <all-passing> name: all-passing body: (BraceGroup left: <Id.Lit_LBrace '{'> children: [ (command.Simple blame_tok: <test-tsv> more_env: [] words: [{<test-tsv>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <test-cannot-serialize> more_env: [] words: [{<test-cannot-serialize>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>}] redirects: [] do_fork: T ) (command.Simple blame_tok: <echo> more_env: [] words: [{<echo>} {(DQ <'All tests in '> ($ Id.VSub_Number 0) <' passed.'>)}] redirects: [] do_fork: T ) ] redirects: [] right: <Id.Lit_RBrace '}'> ) ) (command.Simple blame_tok: <Id.Left_DoubleQuote '"'> more_env: [] words: [{(DQ ($ Id.VSub_At '@'))}] redirects: [] do_fork: T ) ] )