(List (Com {[LIT_CHARS set]} {[LIT_CHARS -eu]}) (= scope= flags=0 words=[] bindings=[('CURRENT_DIR', {[DQ [ComSub (AndOr OP_AND_IF (Com {[LIT_CHARS cd]} {[DQ [ComSub (Com {[LIT_CHARS dirname]} {[DQ [VarSub BASH_SOURCE bracket_op=(Index {A Atom NODE_ARITH_WORD {[AS_NUM_LITERAL 0]}})]]})]]}) (Com {[LIT_CHARS pwd]}) )]]})]) (AndOr OP_OR_IF (Com {[LIT_CHARS source]} {[DQ [VarSub CURRENT_DIR][LIT_CHARS /../integration_test_setup.sh]]}) (List (Com {[LIT_CHARS echo]} {[DQ [LIT_CHARS "integration_test_setup.sh not found!"]]} < (DescriptorRedirectNode target={[LIT_CHARS 2]} &"> 1), > ) (Com {[LIT_CHARS exit]} {[LIT_CHARS 1]}) ) ) (FunctionDef test_execroot_structure [] (List (= scope= flags=0 words=[] bindings=[('ws_name', {[DQ [LIT_CHARS dooby_dooby_doo]]})]) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS WORKSPACE]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=True body_word={[DQ [LIT_CHARS "workspace(name = "][RIGHT_D_QUOTE "\""][VarSub ws_name][RIGHT_D_QUOTE "\""][LIT_CHARS ")\n"]]} 0), > ) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS dir]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS dir/BUILD]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=False body_word={[LIT_CHARS "genrule(\n"] [LIT_CHARS " name = \"use-srcs\",\n"] [LIT_CHARS " srcs = [\"BUILD\"],\n"] [LIT_CHARS " cmd = \"cp $< $@\",\n"] [LIT_CHARS " outs = [\"used-srcs\"],\n"] [LIT_CHARS ")\n"]} 0), > ) (Fork (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS -s]} {[LIT_CHARS //dir] [LIT_OTHER ":"] [LIT_CHARS use-srcs]}) ) (AndOr OP_OR_IF (Com < (FilenameRedirectNode filename={[VarSub TEST_log]} "> 1), > ) (Com {[LIT_CHARS fail]} {[DQ [LIT_CHARS "expected success"]]}) ) (Com {[LIT_CHARS test]} {[LIT_CHARS -e]} {[DQ [ComSub (Com {[LIT_CHARS bazel]} {[LIT_CHARS info]} {[LIT_CHARS execution_root]})][LIT_CHARS /../][VarSub ws_name]]}) ) ) (Com {[LIT_CHARS run_suite]} {[DQ [LIT_CHARS "execution root tests"]]}) )