(CommandList children: [ (AndOr children: [ (C {(Lit_Other "[")} {(-z)} {(DQ ($ VSub_Name "$TEST_SRCDIR"))} {(Lit_Other "]")}) (BraceGroup children: [ (Sentence child: (SimpleCommand words: [{(echo)} {(DQ ("TEST_SRCDIR not set!"))}] redirects: [(Redir op_id:Redir_GreatAnd fd:-1 arg_word:{(2)} spids:[72])] ) terminator: <Op_Semi ";"> ) (Sentence child:(C {(exit)} {(1)}) terminator:<Op_Semi ";">) ] spids: [64] ) ] op_id: Op_DAmp ) (AndOr children: [ (C {(source)} {(DQ (${ VSub_Name TEST_SRCDIR) (/io_bazel/src/test/shell/unittest.bash))}) (BraceGroup children: [ (Sentence child: (SimpleCommand words: [{(echo)} {(DQ ("Failed to source unittest.bash"))}] redirects: [(Redir op_id:Redir_GreatAnd fd:-1 arg_word:{(2)} spids:[108])] ) terminator: <Op_Semi ";"> ) (Sentence child:(C {(exit)} {(1)}) terminator:<Op_Semi ";">) ] spids: [100] ) ] op_id: Op_DPipe ) (FuncDef name: set_up body: (BraceGroup children: [ (C {(mkdir)} {(-p)} {($ VSub_Name "$TEST_TMPDIR") (/workspace)}) (C {(cd)} {($ VSub_Name "$TEST_TMPDIR") (/workspace)}) (C {(touch)} {($ VSub_Name "$TEST_TMPDIR") (/workspace/WORKSPACE)}) ] spids: [124] ) spids: [120 123] ) (FuncDef name: tear_down body: (BraceGroup children: [(C {(rm)} {(-fr)} {($ VSub_Name "$TEST_TMPDIR") (/workspace/) (Lit_Other "*")})] spids: [153] ) spids: [149 152] ) ] )