(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]}) ) ) (= scope= flags=0 words=[] bindings=[('test_strategy', {[DQ [LIT_CHARS standalone]]})]) (= scope= flags=0 words=[] bindings=[('genrule_strategy', {[DQ [LIT_CHARS local]]})]) (If (Com {[LIT_OTHER "["]} {[VarSub #]} {[LIT_CHARS -ge]} {[LIT_CHARS 1]} {[LIT_OTHER "]"]}) (List (= scope= flags=0 words=[] bindings=[('test_strategy', {[VarSub 1]})]) (= scope= flags=0 words=[] bindings=[('genrule_strategy', {[VarSub 1]})]) (Com {[LIT_CHARS shift]}) ) ) (Com {[LIT_CHARS mkdir]} {[LIT_CHARS pkg]} {[LIT_CHARS pkg/java]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS pkg/BUILD]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=False body_word={[LIT_CHARS "java_binary(name = \"javabin\",\n"] [LIT_CHARS " main_class = \"ExitZero\",\n"] [LIT_CHARS " srcs = [ \"java/ExitZero.java\", ])\n"] [LIT_CHARS "java_test(name = \"javatest\",\n"] [LIT_CHARS " main_class = \"ExitZero\",\n"] [LIT_CHARS " use_testrunner = 0,\n"] [LIT_CHARS " srcs = [ \"java/ExitZero.java\", ])\n"] [LIT_CHARS "py_binary(name = \"pybin\",\n"] [LIT_CHARS " srcs = [ \"pybin.py\", ])\n"] [LIT_CHARS "py_test(name = \"pytest\",\n"] [LIT_CHARS " srcs = [ \"pytest.py\", ])\n"] [LIT_CHARS "sh_binary(name = \"sh_runs_javabin\",\n"] [LIT_CHARS " srcs = [ \"sh_runs_javabin.sh\", ],\n"] [LIT_CHARS " data = [ \":javabin\", ])\n"] [LIT_CHARS "sh_test(name = \"sh_runs_javatest\",\n"] [LIT_CHARS " srcs = [ \"sh_runs_javatest.sh\", ],\n"] [LIT_CHARS " data = [ \":javatest\", ])\n"] [LIT_CHARS "sh_binary(name = \"sh_runs_pybin\",\n"] [LIT_CHARS " srcs = [ \"sh_runs_pybin.sh\", ],\n"] [LIT_CHARS " data = [ \":pybin\", ])\n"] [LIT_CHARS "sh_test(name = \"sh_runs_pytest\",\n"] [LIT_CHARS " srcs = [ \"sh_runs_pytest.sh\", ],\n"] [LIT_CHARS " data = [ \":pytest\", ])\n"] [LIT_CHARS "genrule(name = \"genrule_runs_javabin\",\n"] [LIT_CHARS " tools = [ \":javabin\", \":sh_runs_javabin\", ],\n"] [LIT_CHARS " outs = [ \"dummy1\", ],\n"] [LIT_CHARS " cmd = \"$(location :javabin) && $(location :sh_runs_javabin) && >$@\")\n"] [LIT_CHARS "genrule(name = \"genrule_runs_pybin\",\n"] [LIT_CHARS " tools = [ \":pybin\", \":sh_runs_pybin\", ],\n"] [LIT_CHARS " outs = [ \"dummy2\", ],\n"] [LIT_CHARS " cmd = \"$(location :pybin) && $(location :sh_runs_pybin) && >$@\")\n"]} 0), > ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS pkg/java/ExitZero.java]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=False body_word={[LIT_CHARS "public class ExitZero {\n"] [LIT_CHARS " public static void main(String[] args) { }\n"] [LIT_CHARS "}\n"]} 0), > ) (Com {[LIT_CHARS touch]} {[LIT_CHARS pkg/pybin.py]}) (Com {[LIT_CHARS touch]} {[LIT_CHARS pkg/pytest.py]}) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS pkg/sh_runs_javabin.sh]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=False body_word={[LIT_CHARS "#!/bin/bash\n"] [LIT_CHARS "exec $0.runfiles/*/pkg/javabin\n"]} 0), > ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS pkg/sh_runs_javatest.sh]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=False body_word={[LIT_CHARS "#!/bin/bash\n"] [LIT_CHARS "exec $TEST_SRCDIR/*/pkg/javatest\n"]} 0), > ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS pkg/sh_runs_pybin.sh]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=False body_word={[LIT_CHARS "#!/bin/bash\n"] [LIT_CHARS "exec $0.runfiles/*/pkg/pybin\n"]} 0), > ) (Com {[LIT_CHARS cat]} < (FilenameRedirectNode filename={[LIT_CHARS pkg/sh_runs_pytest.sh]} "> 1), (HereDocRedirectNode here_end='EOF' do_expansion=False body_word={[LIT_CHARS "#!/bin/bash\n"] [LIT_CHARS "exec $TEST_SRCDIR/*/pkg/pytest\n"]} 0), > ) (Com {[LIT_CHARS chmod]} {[LIT_OTHER "+"] [LIT_CHARS x]} {[LIT_CHARS pkg/] [LIT_OTHER "*"] [LIT_CHARS .sh]}) (Com {[LIT_CHARS unset]} {[LIT_CHARS TEST_SRCDIR]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS javabin]}) (Com {[VarSub PRODUCT_NAME] [LIT_CHARS -bin/pkg/javabin]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS run]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS javabin]}) (Com {[VarSub PRODUCT_NAME] [LIT_CHARS -bin/pkg/javabin.runfiles/] [LIT_OTHER "*"] [LIT_CHARS /pkg/javabin]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS javatest]}) (Com {[VarSub PRODUCT_NAME] [LIT_CHARS -bin/pkg/javatest]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS run]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS javatest]}) (Com {[VarSub PRODUCT_NAME] [LIT_CHARS -bin/pkg/javatest.runfiles/] [LIT_OTHER "*"] [LIT_CHARS /pkg/javatest]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS test]} {[LIT_CHARS --test_strategy] [LIT_OTHER "="] [DQ [VarSub test_strategy]]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS javatest]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS pybin]}) (Com {[VarSub PRODUCT_NAME] [LIT_CHARS -bin/pkg/pybin]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS run]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS pybin]}) (Com {[VarSub PRODUCT_NAME] [LIT_CHARS -bin/pkg/pybin.runfiles/] [LIT_OTHER "*"] [LIT_CHARS /pkg/pybin]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS pytest]}) (Com {[VarSub PRODUCT_NAME] [LIT_CHARS -bin/pkg/pytest]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS run]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS pytest]}) (Com {[VarSub PRODUCT_NAME] [LIT_CHARS -bin/pkg/pytest.runfiles/] [LIT_OTHER "*"] [LIT_CHARS /pkg/pytest]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS test]} {[LIT_CHARS --test_strategy] [LIT_OTHER "="] [DQ [VarSub test_strategy]]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS pytest]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS sh_runs_javabin]}) (Com {[VarSub PRODUCT_NAME] [LIT_CHARS -bin/pkg/sh_runs_javabin]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS run]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS sh_runs_javabin]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS sh_runs_javatest]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS test]} {[LIT_CHARS --test_strategy] [LIT_OTHER "="] [DQ [VarSub test_strategy]]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS sh_runs_javatest]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS sh_runs_pybin]}) (Com {[VarSub PRODUCT_NAME] [LIT_CHARS -bin/pkg/sh_runs_pybin]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS run]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS sh_runs_pybin]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS sh_runs_pytest]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS test]} {[LIT_CHARS --test_strategy] [LIT_OTHER "="] [DQ [VarSub test_strategy]]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS sh_runs_pytest]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS clean]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS --genrule_strategy] [LIT_OTHER "="] [DQ [VarSub genrule_strategy]]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS genrule_runs_pybin]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS clean]}) (Com {[LIT_CHARS bazel]} {[LIT_CHARS build]} {[LIT_CHARS --genrule_strategy] [LIT_OTHER "="] [DQ [VarSub genrule_strategy]]} {[LIT_CHARS //pkg] [LIT_OTHER ":"] [LIT_CHARS genrule_runs_javabin]}) (Com {[LIT_CHARS echo]} {[LIT_CHARS PASS]}) )