(CommandList children: [ (Sentence child: (C {(.)} { (DQ (BracedVarSub token: <VSub_Name srcdir> suffix_op: (StringUnary op_id:VTest_Equals arg_word:{(.)}) spids: [47 51] ) (/tests/init.sh) ) } ) terminator: <Op_Semi ';'> ) (C {(path_prepend_)} {(./src)}) (C {(print_ver_)} {(nice)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:tests) op: Equal rhs: { (SQ <'\n'> <'0 empty 10\n'> <'1 -1 1\n'> <'2 -12 12\n'> <'3 -1:-2 2\n'> <'4 -n:1 1\n'> <'5 -n:1:-2 2\n'> <'6 -n:1:-+12 12\n'> <'7 -2:-n:1 1\n'> <'8 -2:-n:12 12\n'> <'9 -+1 1\n'> <'10 -+12 12\n'> <'11 -+1:-+12 12\n'> <'12 -n:+1 1\n'> <'13 --1:-2 2\n'> <'14 --1:-2:-13 13\n'> <'15 --1:-n:2 2\n'> <'16 --1:-n:2:-3 3\n'> <'17 --1:-n:2:-13 13\n'> <'18 -n:-1:-12 12\n'> <'19 --1:-12 12\n'> <'NA LAST NA\n'> ) } spids: [65] ) ] spids: [65] ) (C {(set)} {($ VSub_Name '$tests')}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:niceness) op: Equal rhs: { (CommandSubPart command_list: (CommandList children:[(C {(nice)})]) left_token: <Left_CommandSub '$('> spids: [100 102] ) } spids: [99] ) ] spids: [99] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(DQ ($ VSub_Name '$niceness'))} {(Lit_Other '=')} {(0)}) terminator: <Op_Semi ';'> ) ] action: [(C {(Lit_Other ':')} {(ok)})] spids: [16777215 117] ) ] else_action: [(C {(skip_)} {(DQ ('this test must be run at nice level 0'))})] spids: [124 133] ) (While cond: [(Sentence child:(C {(Lit_Other ':')}) terminator:<Op_Semi ';'>)] body: (DoGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_name) op: Equal rhs: {($ VSub_Number '$1')} spids: [144] ) ] spids: [144] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:args) op: Equal rhs: {($ VSub_Number '$2')} spids: [148] ) ] spids: [148] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:expected_result) op: Equal rhs: {($ VSub_Number '$3')} spids: [152] ) ] spids: [152] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {($ VSub_Name '$args')} {(Lit_Other '=')} {(empty)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:args) op:Equal rhs:{(SQ )} spids:[166])] spids: [166] ) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(x) ($ VSub_Name '$args')} {(Lit_Other '=')} {(xLAST)}) (ControlFlow token:<ControlFlow_Break break>) ] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:args) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(echo)} {(x) ($ VSub_Name '$args')}) (C {(tr)} {(Lit_Other ':')} {(SQ <' '>)}) (C {(sed)} {(SQ <'s/^x//'>)}) ] negated: F ) ] ) left_token: <Left_CommandSub '$('> spids: [186 205] ) } spids: [185] ) ] spids: [185] ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other '=')} {(yes)}) terminator: <Op_Semi ';'> ) ] action: [ (Pipeline children: [ (C {(echo)} {(DQ ('test ') ($ VSub_Name '$test_name') ('... '))}) (C {(tr)} {(-d)} {(SQ <'\\n'>)}) ] negated: F ) ] spids: [16777215 221] ) ] spids: [16777215 247] ) (AndOr ops: [Op_DAmp Op_DPipe] children: [ (C {(test)} {(x) (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [{(nice)} {($ VSub_Name '$args')} {(nice)}] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [260] ) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [253 263] ) } {(Lit_Other '=')} {(x) ($ VSub_Name '$expected_result')} ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:ok) op:Equal rhs:{(ok)} spids:[274])] spids: [274] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:ok) op: Equal rhs: {(FAIL)} spids: [279] ) (assign_pair lhs: (LhsName name:fail) op: Equal rhs: {(1)} spids: [282] ) ] spids: [279] ) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(DQ ($ VSub_Name '$VERBOSE'))} {(Lit_Other '=')} {(yes)}) (C {(echo)} {($ VSub_Name '$ok')}) ] ) (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>) (Sentence child:(C {(shift)}) terminator:<Op_Semi ';'>) (C {(shift)}) ] spids: [141 311] ) ) (If arms: [ (if_arm cond: [ (Sentence child: (C {(test)} {(x) (CommandSubPart command_list: (CommandList children: [ (SimpleCommand words: [{(nice)} {(-n)} {(-1)} {(nice)}] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/null)} spids: [331] ) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [322 334] ) } {(Lit_Other '=')} {(x0)} ) terminator: <Op_Semi ';'> ) ] action: [ (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(nice)} {(-n)} {(-1)} {(true)}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(err)} spids:[357])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[363])] spids: [363] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(test)} {(-s)} {(err)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[375])] spids: [375] ) ] ) (AndOr ops: [Op_DPipe] children: [(C {(mv)} {(err)} {(exp)}) (C {(framework_failure_)})] ) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(nice)} {(--1)} {(true)}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(err)} spids:[396])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[402])] spids: [402] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(compare)} {(exp)} {(err)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[414])] spids: [414] ) ] ) (If arms: [ (if_arm cond: [ (Sentence child: (AndOr ops: [Op_DAmp] children: [(C {(test)} {(-w)} {(/dev/full)}) (C {(test)} {(-c)} {(/dev/full)})] ) terminator: <Op_Semi ';'> ) ] action: [ (SimpleCommand words: [{(nice)} {(-n)} {(-1)} {(nice)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(out)} spids: [450] ) (Redir op_id: Redir_Great fd: 2 arg_word: {(/dev/full)} spids: [454] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(test)} {($ VSub_QMark '$?')} {(Lit_Other '=')} {(125)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:fail) op: Equal rhs: {(1)} spids: [469] ) ] spids: [469] ) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-s)} {(out)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:fail) op: Equal rhs: {(1)} spids: [481] ) ] spids: [481] ) ] ) ] spids: [16777215 439] ) ] spids: [16777215 485] ) ] spids: [16777215 342] ) ] else_action: [ (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(nice)} {(-n)} {(-1)} {(nice)}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(err)} spids:[502])] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[508])] spids: [508] ) ] ) (AndOr ops: [Op_DAmp] children: [ (C {(test)} {(-s)} {(err)}) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[520])] spids: [520] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(test)} {(x) (CommandSubPart command_list: (CommandList children:[(C {(nice)} {(-n)} {(-1)} {(nice)})]) left_token: <Left_CommandSub '$('> spids: [527 535] ) } {(Lit_Other '=')} {(x-1)} ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[543])] spids: [543] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(test)} {(x) (CommandSubPart command_list: (CommandList children:[(C {(nice)} {(--1)} {(nice)})]) left_token: <Left_CommandSub '$('> spids: [550 556] ) } {(Lit_Other '=')} {(x-1)} ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:fail) op:Equal rhs:{(1)} spids:[564])] spids: [564] ) ] ) ] spids: [487 567] ) (C {(Exit)} {($ VSub_Name '$fail')}) ] )