(CommandList children: [ (C {(Lit_Other ':')} { (BracedVarSub token: <VSub_Name DIR> suffix_op: (StringUnary op_id: VTest_ColonEquals arg_word: { (CommandSubPart command_list: (CommandList children: [ (AndOr ops: [Op_DAmp] children: [ (C {(cd)} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(dirname)} { (DQ (BracedVarSub token: <VSub_Name BASH_SOURCE> bracket_op: (ArrayIndex expr: (ArithWord w:{(Lit_Digits 0)}) ) spids: [65 70] ) ) } ) ] ) left_token: <Left_CommandSub '$('> spids: [61 72] ) ) } ) (C {(pwd)}) ] ) ] ) left_token: <Left_CommandSub '$('> spids: [57 78] ) } ) spids: [54 79] ) } ) (AndOr ops: [Op_DPipe] children: [ (C {(source)} {(${ VSub_Name DIR) (/testenv.sh)}) (BraceGroup children: [ (Sentence child: (SimpleCommand words: [{(echo)} {(DQ ('testenv.sh not found!'))}] redirects: [(Redir op_id:Redir_GreatAnd fd:16777215 arg_word:{(2)} spids:[98])] ) terminator: <Op_Semi ';'> ) (Sentence child: (ControlFlow token:<ControlFlow_Exit exit> arg_word:{(1)}) terminator: <Op_Semi ';'> ) ] spids: [90] ) ] ) (C {(Lit_Other ':')} { (BracedVarSub token: <VSub_Name COMMAND_ALIASES> suffix_op: (StringUnary op_id:VTest_ColonEquals arg_word:{(bazel)}) spids: [115 119] ) } ) (C {(Lit_Other ':')} { (BracedVarSub token: <VSub_Name COMPLETION> suffix_op: (StringUnary op_id: VTest_ColonEquals arg_word: {(DQ ($ VSub_Name '$TEST_SRCDIR') (/io_bazel/scripts/bazel-complete.bash))} ) spids: [127 134] ) } ) (C {(Lit_Other ':')} { (BracedVarSub token: <VSub_Name PACKAGE_PATH_PREFIX> suffix_op: (StringUnary op_id:VTest_ColonEquals arg_word:{}) spids: [142 145] ) } ) (FuncDef name: array_join body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:joiner) op: Equal rhs: {(DQ ($ VSub_Number '$1'))} spids: [170] ) ] spids: [168] ) (C {(shift)}) (C {(echo)} {(-n)} {(DQ ($ VSub_Number '$1'))}) (C {(shift)}) (ForEach iter_name: i iter_words: [{(DQ ($ VSub_At '$@'))}] do_arg_iter: F body: (DoGroup children: [(C {(echo)} {(-n)} {(DQ (${ VSub_Name joiner) (${ VSub_Name i))})] spids: [202 219] ) spids: [196 200] ) ] spids: [165] ) spids: [161 164] ) (FuncDef name: expand body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:input) op: Equal rhs: {(DQ ($ VSub_Number '$1'))} spids: [266] ) (assign_pair lhs: (LhsName name:flags) op: Equal rhs: {(DQ ($ VSub_Number '$2'))} spids: [271] ) (assign_pair lhs: (LhsName name:stderr_file) op: Equal rhs: {(DQ ($ VSub_Number '$3'))} spids: [276] ) ] spids: [264] ) (Pipeline children: [ (BraceGroup children: [ (C {(echo)} {(DQ ($ VSub_Name '$flags'))}) (C {(echo)} {(DQ ('source ') ($ VSub_Name '$COMPLETION'))}) (ForEach iter_name: i iter_words: [ { (BracedVarSub token: <VSub_Name COMMAND_ALIASES> bracket_op: (WholeArray op_id:Lit_At) spids: [342 347] ) } ] do_arg_iter: F body: (DoGroup children: [ (C {(echo)} { (DQ ('alias ') ($ VSub_Name '$i') ('=') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) ('echo ') ($ VSub_Name '$i') ("'") (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ) } ) ] spids: [350 367] ) spids: [341 348] ) (C {(echo)} {(-en)} {(DQ ($ VSub_Name '$input') ("'"))}) ] spids: [282] ) (SimpleCommand words: [{(bash)} {(--norc)} {(-i)}] redirects: [ (Redir op_id: Redir_Great fd: 2 arg_word: {(DQ ($ VSub_Name '$stderr_file'))} spids: [390] ) ] ) (C {(sed)} {(-e)} {(SQ <'s/^\\('>) (DQ (CommandSubPart command_list: (CommandList children: [ (C {(array_join)} {(DQ (Lit_Other '\\') ('|'))} { (BracedVarSub token: <VSub_Name COMMAND_ALIASES> bracket_op: (WholeArray op_id:Lit_At) spids: [414 419] ) } ) ] ) left_token: <Left_CommandSub '$('> spids: [406 420] ) ) (SQ <'\\) /\\1 /'>) } ) ] negated: F ) ] spids: [261] ) spids: [257 260] ) (FuncDef name: assert_expansion body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:prefix) op: Equal rhs: {($ VSub_Number '$1')} spids: [450] ) (assign_pair lhs: (LhsName name:expected) op: Equal rhs: {($ VSub_Number '$2')} spids: [453] ) (assign_pair lhs: (LhsName name:flags) op: Equal rhs: { (BracedVarSub token: <VSub_Number 3> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{}) spids: [457 460] ) } spids: [456] ) ] spids: [448] ) (ForEach iter_name: i iter_words: [ { (BracedVarSub token: <VSub_Name COMMAND_ALIASES> bracket_op: (WholeArray op_id:Lit_At) spids: [469 474] ) } ] do_arg_iter: F body: (DoGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:nprefix) op: Equal rhs: {(DQ ($ VSub_Name '$i') (' ') ($ VSub_Name '$prefix'))} spids: [482] ) ] spids: [480] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:nexpected) op: Equal rhs: {(DQ ($ VSub_Name '$i') (' ') ($ VSub_Name '$expected'))} spids: [492] ) ] spids: [490] ) (C {(assert_equals)} {(DQ ($ VSub_Name '$nexpected'))} { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(expand)} {(DQ ($ VSub_Name '$nprefix') (Lit_Other '\\') (t))} {(DQ ($ VSub_Name '$flags'))} {(DQ (/dev/null))} ) ] ) left_token: <Left_CommandSub '$('> spids: [507 523] ) ) } ) ] spids: [477 527] ) spids: [468 475] ) ] spids: [445] ) spids: [441 444] ) (FuncDef name: assert_expansion_error_not_contains body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:prefix) op: Equal rhs: {($ VSub_Number '$1')} spids: [563] ) (assign_pair lhs: (LhsName name:not_expected) op: Equal rhs: {($ VSub_Number '$2')} spids: [566] ) (assign_pair lhs: (LhsName name:flags) op: Equal rhs: { (BracedVarSub token: <VSub_Number 3> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{}) spids: [570 573] ) } spids: [569] ) ] spids: [561] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:temp_file) op: Equal rhs: { (DQ (CommandSubPart command_list: (CommandList children: [ (C {(mktemp)} {(DQ (${ VSub_Name TEST_TMPDIR) (/tmp.stderr.XXXXXX))}) ] ) left_token: <Left_CommandSub '$('> spids: [580 589] ) ) } spids: [578] ) ] spids: [576] ) (ForEach iter_name: i iter_words: [ { (BracedVarSub token: <VSub_Name COMMAND_ALIASES> bracket_op: (WholeArray op_id:Lit_At) spids: [599 604] ) } ] do_arg_iter: F body: (DoGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:nprefix) op: Equal rhs: {(DQ ($ VSub_Name '$i') (' '))} spids: [612] ) ] spids: [610] ) (SimpleCommand words: [ {(expand)} {(DQ ($ VSub_Name '$nprefix') (Lit_Other '\\') (t))} {(DQ ($ VSub_Name '$flags'))} {(DQ ($ VSub_Name '$temp_file'))} ] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(/dev/null)} spids: [635] ) ] ) (C {(assert_not_contains)} {(DQ ($ VSub_Name '$not_expected'))} {(DQ ($ VSub_Name '$temp_file'))} ) ] spids: [607 651] ) spids: [598 605] ) ] spids: [558] ) spids: [554 557] ) (FuncDef name: make_empty_packages body: (BraceGroup children: [ (C {(touch)} {(video/streamer2/testing/BUILD)}) (C {(touch)} { (BracedVarSub token: <VSub_Name PACKAGE_PATH_PREFIX> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{}) spids: [674 677] ) (video/streamer2/stuff/BUILD) } ) (C {(touch)} {(video/streamer2/names/BUILD)}) ] spids: [664] ) spids: [660 663] ) (FuncDef name: make_packages body: (BraceGroup children: [ (AndOr ops: [Op_DPipe] children: [ (C {(mkdir)} {(-p)} {(video/streamer2/testing)}) (C {(fail)} {(DQ ('mkdir failed'))}) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(video/streamer2/BUILD)} spids: [712] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ("cc_library(name='task_lib', ...)\n") ("cc_library(name='token_bucket', ...)\n") ("cc_library(name='with_special+_,=-.@~chars', ...)\n") ("#cc_library(name='comment_build_target_1old', ...)\n") ("#cc_library(name='comment_build_target_2old', ...)\n") ("cc_library(name='comment_build_target_2new', ...)\n") ("#cc_test(name='token_bucket_t_1old', ...)\n") ("#cc_test(name='token_bucket_t_2old', ...)\n") ("cc_test(name='token_bucket_test', ...)\n") ("cc_binary(name='token_bucket_binary', ...)\n") ("java_binary ( name = 'JavaBinary', ...)\n") ('java_binary (\n') (" name = 'AnotherJavaBinary'\n") (' ...\n') (')\n') ("cc_binary(other='thing', name='pybin', ...)\n") ("genrule(name='checks/thingy', ...)\n") ("#cc_binary(name='comment_run_target_1old', ...)\n") ("#cc_binary(name='comment_run_target_2old', ...)\n") ("cc_binary(name='comment_run_target_2new', ...)\n") ) } do_expansion: True here_end: EOF was_filled: T spids: [715] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(mkdir)} {(-p)} { (BracedVarSub token: <VSub_Name PACKAGE_PATH_PREFIX> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{}) spids: [745 748] ) (video/streamer2/stuff) } ) (C {(fail)} {(DQ ('mkdir failed'))}) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: { (BracedVarSub token: <VSub_Name PACKAGE_PATH_PREFIX> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{}) spids: [763 766] ) (video/streamer2/stuff/BUILD) } spids: [762] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ("cc_library(name='stuff', ...)\n"))} do_expansion: True here_end: EOF was_filled: T spids: [769] ) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(mkdir)} {(-p)} {(video/streamer2/names)}) (C {(fail)} {(DQ ('mkdir failed'))}) ] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(video/streamer2/names/BUILD)} spids: [793] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: {(DQ ('genrule(\n') (" name = 'foo',\n") (" cmd = ('name=foo'),\n") (')\n'))} do_expansion: True here_end: EOF was_filled: T spids: [796] ) ] ) (AndOr ops: [Op_DPipe] children: [(C {(mkdir)} {(-p)} {(dash)}) (C {(fail)} {(DQ ('mkdir failed'))})] ) (SimpleCommand words: [{(cat)}] redirects: [ (Redir op_id: Redir_Great fd: 16777215 arg_word: {(dash/BUILD)} spids: [823] ) (HereDoc op_id: Redir_DLess fd: 16777215 body: { (DQ ('cc_library(\n') (' name = ') (Right_DoubleQuote '"') (mia-bid-multiplier-mixer-module) (Right_DoubleQuote '"') (',\n') (')\n') ) } do_expansion: True here_end: EOF was_filled: T spids: [826] ) ] ) (C {(mkdir)} {(-p)} {(video/notapackage)}) ] spids: [692] ) spids: [688 691] ) (C {(source)} {(${ VSub_Name COMPLETION)}) (FuncDef name: assert_expansion_function body: (BraceGroup children: [ (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:ws) op: Equal rhs: {(${ VSub_Name PWD)} spids: [868] ) ] spids: [866] ) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:function) op: Equal rhs: {(DQ ($ VSub_Number '$1'))} spids: [876] ) (assign_pair lhs: (LhsName name:displacement) op: Equal rhs: {(DQ ($ VSub_Number '$2'))} spids: [881] ) (assign_pair lhs: (LhsName name:type) op: Equal rhs: {(DQ ($ VSub_Number '$3'))} spids: [886] ) (assign_pair lhs: (LhsName name:expected) op: Equal rhs: {(DQ ($ VSub_Number '$4'))} spids: [891] ) (assign_pair lhs: (LhsName name:current) op: Equal rhs: {(DQ ($ VSub_Number '$5'))} spids: [896] ) ] spids: [874] ) (C {(disable_errexit)}) (Assignment keyword: Assign_Local pairs: [ (assign_pair lhs: (LhsName name:actual_result) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(eval)} { (DQ (_bazel__) (${ VSub_Name function) (' ') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) (${ VSub_Name ws) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) (${ VSub_Name displacement) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) (${ VSub_Name current) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) (' ') (EscapedLiteralPart token: <Lit_EscapedChar '\\"'> ) (${ VSub_Name type) (EscapedLiteralPart token:<Lit_EscapedChar '\\"'>) ) } ) ] ) left_token: <Left_CommandSub '$('> spids: [908 941] ) } spids: [907] ) ] spids: [905] ) (C {(enable_errexit)}) (C {(assert_equals)} { (DQ (CommandSubPart command_list: (CommandList children: [(C {(echo)} {(-ne)} {(DQ (${ VSub_Name expected))})] ) left_token: <Left_CommandSub '$('> spids: [950 960] ) ) } {(DQ (${ VSub_Name actual_result))} ) ] spids: [863] ) spids: [859 862] ) (FuncDef name: test_expand_rules_in_package body: (BraceGroup children: [ (C {(make_packages)}) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label)} {(DQ ('stuff '))} {(DQ ('//video/streamer2/stuff:'))} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label)} {(SQ <'task_lib '>)} {(SQ <'video/streamer2:ta'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label)} {(SQ <'with_special+_,=-.@~chars '>)} {(SQ <'video/streamer2:with_s'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ (video/))} {(label)} {(SQ <'task_lib '>)} {(SQ <'streamer2:ta'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ (video/))} {(label)} {(SQ )} {(SQ <'video/streamer2:ta'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ (video/))} {(label)} {(SQ <'with_special+_,=-.@~chars '>)} {(SQ <'streamer2:with_s'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label)} {(SQ <'token_bucket_test \\ntoken_bucket_binary '>)} {(SQ <'video/streamer2:token_bucket_'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label)} {(SQ <'stuff '>)} {(SQ <'video/streamer2/stuff:s'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label)} {(SQ )} {(SQ <'video/streamer2:comment_build_target_1o'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label)} {(SQ <'comment_build_target_2new '>)} {(SQ <'video/streamer2:comment_build_target_2'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-test)} {(SQ <'token_bucket_test '>)} {(SQ <'video/streamer2:to'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-test)} {(SQ )} {(SQ <'video/streamer2:token_bucket_t_1o'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-test)} {(SQ <'token_bucket_test '>)} {(SQ <'video/streamer2:token_bucket_t'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-test)} {(SQ <'token_bucket_test '>)} {(SQ <'video/streamer2:'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-test)} {(SQ <'all '>)} {(SQ <'video/streamer2:a'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-bin)} {(SQ <'token_bucket_binary '>)} {(SQ <'video/streamer2:to'>)} ) (SimpleCommand words: [ {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-bin)} {(SQ <'token_bucket_test \\ntoken_bucket_binary '>)} {(SQ <'video/streamer2:to'>)} ] more_env: [ (env_pair name: BAZEL_COMPLETION_ALLOW_TESTS_FOR_RUN val: {(true)} spids: [1396] ) ] ) (SimpleCommand words: [ {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-bin)} {(SQ <'token_bucket_test '>)} {(SQ <'video/streamer2:token_bucket_t'>)} ] more_env: [(env_pair name:BAZEL_COMPLETION_ALLOW_TESTS_FOR_RUN val:{(1)} spids:[1432])] ) (SimpleCommand words: [ {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-bin)} {(SQ <'token_bucket_binary '>)} {(SQ <'video/streamer2:to'>)} ] more_env: [ (env_pair name: BAZEL_COMPLETION_ALLOW_TESTS_FOR_RUN val: {(false)} spids: [1468] ) ] ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-bin)} {(SQ )} {(SQ <'video/streamer2:comment_run_target_1o'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-bin)} {(SQ <'comment_run_target_2new '>)} {(SQ <'video/streamer2:comment_run_target_2'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-bin)} {(SQ <'JavaBinary '>)} {(SQ <'video/streamer2:J'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-bin)} {(SQ <'pybin '>)} {(SQ <'video/streamer2:py'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label-bin)} {(SQ <'AnotherJavaBinary '>)} {(SQ <'video/streamer2:A'>)} ) (C {(assert_expansion_function)} {(DQ (expand_rules_in_package))} {(DQ )} {(label)} {(SQ <'foo '>)} {(SQ <'video/streamer2/names:'>)} ) ] spids: [976] ) spids: [972 975] ) (FuncDef name: test_expand_package_name body: (BraceGroup children: [ (C {(make_packages)}) (C {(assert_expansion_function)} {(DQ (expand_package_name))} {(DQ )} {(DQ )} {(DQ (//video/streamer2/stuff/) (Lit_Other '\\') ('n//video/streamer2/stuff:'))} {(DQ (//video/streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (expand_package_name))} {(DQ )} {(DQ )} {(DQ (//video/notapackage/))} {(DQ (//video/nota))} ) (C {(assert_expansion_function)} {(DQ (expand_package_name))} {(DQ )} {(DQ )} {(DQ (video/streamer2/stuff/) (Lit_Other '\\') ('nvideo/streamer2/stuff:'))} {(DQ (video/streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (expand_package_name))} {(DQ )} {(DQ )} {(DQ (video/notapackage/))} {(DQ (video/nota))} ) (C {(assert_expansion_function)} {(DQ (expand_package_name))} {(DQ (video/))} {(DQ )} {(DQ )} {(DQ (video/streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (expand_package_name))} {(DQ (video/))} {(DQ )} {(DQ )} {(DQ (video/nota))} ) (C {(assert_expansion_function)} {(DQ (expand_package_name))} {(DQ (video/))} {(DQ )} {(DQ (streamer2/stuff/) (Lit_Other '\\') ('nstreamer2/stuff:'))} {(DQ (streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (expand_package_name))} {(DQ (video/))} {(DQ )} {(DQ (notapackage/))} {(DQ (nota))} ) (C {(assert_expansion_function)} {(DQ (expand_package_name))} {(DQ )} {(DQ (label-package))} {(DQ (//video/streamer2/stuff/) (Lit_Other '\\') ('n//video/streamer2/stuff '))} {(DQ (//video/streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (expand_package_name))} {(DQ )} {(DQ (label-package))} {(DQ (//video/notapackage/))} {(DQ (//video/nota))} ) ] spids: [1657] ) spids: [1653 1656] ) (FuncDef name: test_expand_target_pattern body: (BraceGroup children: [ (C {(make_packages)}) (C {(assert_expansion_function)} {(DQ (expand_target_pattern))} {(DQ )} {(label)} {(DQ ('stuff '))} {(DQ ('//video/streamer2/stuff:'))} ) (C {(assert_expansion_function)} {(DQ (expand_target_pattern))} {(DQ )} {(label)} {(DQ (//video/streamer2/stuff/) (Lit_Other '\\') ('n//video/streamer2/stuff:'))} {(DQ (//video/streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (expand_target_pattern))} {(DQ )} {(label)} {(DQ ('stuff '))} {(DQ ('video/streamer2/stuff:'))} ) (C {(assert_expansion_function)} {(DQ (expand_target_pattern))} {(DQ )} {(label)} {(DQ (video/streamer2/stuff/) (Lit_Other '\\') ('nvideo/streamer2/stuff:'))} {(DQ (video/streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (expand_target_pattern))} {(DQ (video/))} {(label)} {(DQ ('stuff '))} {(DQ ('streamer2/stuff:'))} ) (C {(assert_expansion_function)} {(DQ (expand_target_pattern))} {(DQ (video/))} {(label)} {(DQ (streamer2/stuff/) (Lit_Other '\\') ('nstreamer2/stuff:'))} {(DQ (streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (expand_target_pattern))} {(DQ (video/))} {(label)} {(DQ ('stuff '))} {(DQ ('//video/streamer2/stuff:'))} ) (C {(assert_expansion_function)} {(DQ (expand_target_pattern))} {(DQ (video/))} {(label)} {(DQ (//video/streamer2/stuff/) (Lit_Other '\\') ('n//video/streamer2/stuff:'))} {(DQ (//video/streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (expand_target_pattern))} {(DQ (video/))} {(label)} {(DQ )} {(DQ ('video/streamer2/stuff:'))} ) (C {(assert_expansion_function)} {(DQ (expand_target_pattern))} {(DQ (video/))} {(label)} {(DQ )} {(DQ (video/streamer2/stu))} ) ] spids: [1942] ) spids: [1938 1941] ) (FuncDef name: test_complete_pattern body: (BraceGroup children: [ (C {(make_packages)}) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(label)} {(DQ ('stuff '))} {(DQ ('//video/streamer2/stuff:'))} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(label)} {(DQ (//video/streamer2/stuff/) (Lit_Other '\\') ('n//video/streamer2/stuff:'))} {(DQ (//video/streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(label-package)} {(DQ (//video/streamer2/stuff/) (Lit_Other '\\') ('n//video/streamer2/stuff '))} {(DQ (//video/streamer2/stu))} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(command)} {(DQ ('clean '))} {(DQ (clea))} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(info-key)} {(DQ ('install_base '))} {(DQ (install_b))} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(SQ <'{clean,add}'>)} {(DQ ('clean '))} {(DQ (clea))} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(SQ <'command|{abc,def}'>)} {(DQ ('abc '))} {(DQ (ab))} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(SQ <'command|{abc,def}'>)} {(DQ ('clean '))} {(DQ (clea))} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(label)} {(DQ ('stuff '))} {(DQ ('//video/streamer2/stuff:'))} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(label)} {(SQ <'task_lib '>)} {(SQ <'video/streamer2:ta'>)} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ )} {(label)} {(SQ <'with_special+_,=-.@~chars '>)} {(SQ <'video/streamer2:with_s'>)} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ (video/))} {(label)} {(DQ ('stuff '))} {(DQ ('//video/streamer2/stuff:'))} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ (video/))} {(label)} {(SQ <'task_lib '>)} {(SQ <'streamer2:ta'>)} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ (video/))} {(label)} {(SQ )} {(SQ <'video/streamer2:ta'>)} ) (C {(assert_expansion_function)} {(DQ (complete_pattern))} {(DQ (video/))} {(label)} {(SQ <'with_special+_,=-.@~chars '>)} {(SQ <'streamer2:with_s'>)} ) ] spids: [2203] ) spids: [2199 2202] ) (FuncDef name: test_basic_subcommand_expansion body: (BraceGroup children: [ (C {(assert_expansion)} {(SQ <bui>)} {(SQ <'build '>)}) (C {(assert_expansion)} {(SQ <hel>)} {(SQ <'help '>)}) (C {(assert_expansion)} {(SQ <shut>)} {(SQ <'shutdown '>)}) ] spids: [2583] ) spids: [2579 2582] ) (FuncDef name: test_common_options body: (BraceGroup children: [ (C {(assert_expansion)} {(SQ <--h>)} {(SQ <--host_jvm_>)}) (C {(assert_expansion)} {(SQ <--host_jvm_a>)} {(SQ <'--host_jvm_args='>)}) ] spids: [2635] ) spids: [2631 2634] ) (FuncDef name: test_build_options body: (BraceGroup children: [ (C {(assert_expansion)} {(SQ <'build --keep_g'>)} {(SQ <'build --keep_going '>)}) (C {(assert_expansion)} {(SQ <'build --expe'>)} {(SQ <'build --experimental_'>)}) (C {(assert_expansion)} {(SQ <'help --cros'>)} {(SQ <'help --cros'>)}) (C {(assert_expansion)} {(SQ <'build --test_stra'>)} {(SQ <'build --test_strategy='>)}) ] spids: [2674] ) spids: [2670 2673] ) (FuncDef name: test_query_options body: (BraceGroup children: [ (C {(assert_expansion)} {(SQ <'query --out'>)} {(SQ <'query --output='>)}) (C {(make_packages)}) (C {(assert_expansion)} {(SQ <'query video/streamer2:ta'>)} {(SQ <'query video/streamer2:task_lib '>)} ) (C {(assert_expansion)} {(SQ <'query //video/streamer2:ta'>)} {(SQ <'query //video/streamer2:task_lib '>)} ) ] spids: [2743] ) spids: [2739 2742] ) (FuncDef name: test_run_options body: (BraceGroup children: [ (C {(assert_expansion)} {(SQ <'run --keep_g'>)} {(SQ <'run --keep_going '>)}) (C {(assert_expansion)} {(SQ <'run --expe'>)} {(SQ <'run --experimental_'>)}) ] spids: [2798] ) spids: [2794 2797] ) (FuncDef name: test_tristate_option body: (BraceGroup children: [ (C {(assert_expansion)} {(SQ <'build --nocache_test_result'>)} {(SQ <'build --nocache_test_results '>)} ) ] spids: [2841] ) spids: [2837 2840] ) (FuncDef name: make_dirs body: (BraceGroup children: [ (AndOr ops: [Op_DPipe] children: [ (C {(mkdir)} {(-p)} {(video/streamer2/testing)}) (C {(fail)} {(DQ ('mkdir failed'))}) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(mkdir)} {(-p)} { (BracedVarSub token: <VSub_Name PACKAGE_PATH_PREFIX> suffix_op: (StringUnary op_id:VTest_ColonHyphen arg_word:{}) spids: [2889 2892] ) (video/streamer2/stuff) } ) (C {(fail)} {(DQ ('mkdir failed'))}) ] ) (AndOr ops: [Op_DPipe] children: [ (C {(mkdir)} {(-p)} {(video/streamer2/names)}) (C {(fail)} {(DQ ('mkdir failed'))}) ] ) ] spids: [2867] ) spids: [2863 2866] ) (FuncDef name: test_directory_expansion body: (BraceGroup children: [ (C {(make_dirs)}) (C {(assert_expansion)} {(SQ <'build vide'>)} {(SQ <'build video/'>)}) (C {(assert_expansion)} {(SQ <'build video/'>)} {(SQ <'build video/streamer2/'>)}) (C {(assert_expansion)} {(SQ <'build video/streamer2/t'>)} {(SQ <'build video/streamer2/testing/'>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2/s'>)} {(SQ <'build video/streamer2/stuff/'>)} ) (C {(make_empty_packages)}) (C {(assert_expansion)} {(SQ <'build video/streamer2/t'>)} {(SQ <'build video/streamer2/testing'>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2/s'>)} {(SQ <'build video/streamer2/stuff'>)} ) (C {(assert_expansion)} {(SQ <'build //vide'>)} {(SQ <'build //video/'>)}) (C {(assert_expansion)} {(SQ <'build //video/'>)} {(SQ <'build //video/streamer2/'>)}) (C {(assert_expansion)} {(SQ <'build //video/streamer2/t'>)} {(SQ <'build //video/streamer2/testing'>)} ) (C {(assert_expansion)} {(SQ <'build //video/streamer2/s'>)} {(SQ <'build //video/streamer2/stuff'>)} ) ] spids: [2926] ) spids: [2922 2925] ) (FuncDef name: test_directory_expansion_in_subdir body: (BraceGroup children: [ (C {(make_dirs)}) (AndOr ops: [Op_DPipe] children: [ (SimpleCommand words: [{(cd)} {(video)}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[3103])] ) (ControlFlow token:<ControlFlow_Exit exit>) ] ) (C {(assert_expansion)} {(SQ <'build vide'>)} {(SQ <'build vide'>)}) (C {(assert_expansion)} {(SQ <'build video/'>)} {(SQ <'build video/'>)}) (C {(assert_expansion)} {(SQ <'build video/streamer2/t'>)} {(SQ <'build video/streamer2/t'>)}) (C {(assert_expansion)} {(SQ <'build video/streamer2/s'>)} {(SQ <'build video/streamer2/s'>)}) (C {(assert_expansion)} {(SQ <'build //vide'>)} {(SQ <'build //video/'>)}) (C {(assert_expansion)} {(SQ <'build //video/'>)} {(SQ <'build //video/streamer2/'>)}) (C {(assert_expansion)} {(SQ <'build //video/streamer2/t'>)} {(SQ <'build //video/streamer2/testing/'>)} ) (C {(assert_expansion)} {(SQ <'build //video/streamer2/s'>)} {(SQ <'build //video/streamer2/stuff/'>)} ) (C {(assert_expansion)} {(SQ <'build streamer2/t'>)} {(SQ <'build streamer2/testing/'>)}) (C {(assert_expansion)} {(SQ <'build streamer2/s'>)} {(SQ <'build streamer2/stuff/'>)}) ] spids: [3088] ) spids: [3084 3087] ) (FuncDef name: test_target_expansion body: (BraceGroup children: [ (C {(make_packages)}) (C {(assert_expansion)} {(SQ <'build video/streamer2:ta'>)} {(SQ <'build video/streamer2:task_lib '>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2:with_s'>)} {(SQ <'build video/streamer2:with_special+_,=-.@~chars '>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2:to'>)} {(SQ <'build video/streamer2:token_bucket'>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2/s'>)} {(SQ <'build video/streamer2/stuff'>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2/stuff:s'>)} {(SQ <'build video/streamer2/stuff:stuff '>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2:comment_build_target_1o'>)} {(SQ <'build video/streamer2:comment_build_target_1o'>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2:comment_build_target_2'>)} {(SQ <'build video/streamer2:comment_build_target_2new '>)} ) (C {(assert_expansion)} {(SQ <'test video/streamer2:to'>)} {(SQ <'test video/streamer2:token_bucket_test '>)} ) (C {(assert_expansion)} {(SQ <'test video/streamer2:token_bucket_t_1o'>)} {(SQ <'test video/streamer2:token_bucket_t_1o'>)} ) (C {(assert_expansion)} {(SQ <'test video/streamer2:token_bucket_t'>)} {(SQ <'test video/streamer2:token_bucket_test '>)} ) (C {(assert_expansion_error_not_contains)} {(SQ <'test video/streamer2:match'>)} {(SQ <'syntax error'>)} ) (C {(assert_expansion)} {(SQ <'test video/streamer2:'>)} {(SQ <'test video/streamer2:token_bucket_test '>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2:a'>)} {(SQ <'build video/streamer2:all '>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:to'>)} {(SQ <'run video/streamer2:token_bucket_binary '>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:to'>)} {(SQ <'run video/streamer2:token_bucket_'>)} {(SQ <'BAZEL_COMPLETION_ALLOW_TESTS_FOR_RUN=true'>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:token_bucket_t'>)} {(SQ <'run video/streamer2:token_bucket_test '>)} {(SQ <'BAZEL_COMPLETION_ALLOW_TESTS_FOR_RUN=1'>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:to'>)} {(SQ <'run video/streamer2:token_bucket_binary '>)} {(SQ <'BAZEL_COMPLETION_ALLOW_TESTS_FOR_RUN=false'>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:to'>)} {(SQ <'run video/streamer2:token_bucket_binary '>)} {(SQ <'BAZEL_COMPLETION_ALLOW_TESTS_FOR_RUN=0'>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:to'>)} {(SQ <'run video/streamer2:token_bucket_binary '>)} {(SQ <'BAZEL_COMPLETION_ALLOW_TESTS_FOR_RUN=junk'>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:to'>)} {(SQ <'run video/streamer2:token_bucket_binary '>)} {(SQ <'BAZEL_COMPLETION_ALLOW_TESTS_FOR_RUN='>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:comment_run_target_1o'>)} {(SQ <'run video/streamer2:comment_run_target_1o'>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:comment_run_target_2'>)} {(SQ <'run video/streamer2:comment_run_target_2new '>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:J'>)} {(SQ <'run video/streamer2:JavaBinary '>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:py'>)} {(SQ <'run video/streamer2:pybin '>)} ) (C {(assert_expansion)} {(SQ <'run video/streamer2:A'>)} {(SQ <'run video/streamer2:AnotherJavaBinary '>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2/names:'>)} {(SQ <'build video/streamer2/names:foo '>)} ) (SimpleCommand words: [ {(assert_expansion)} {(SQ <'build dash:m'>)} {(SQ <'build dash:mia-bid-multiplier-mixer-module '>)} ] more_env: [(env_pair name:LC_ALL val:{(en_US.UTF-8)} spids:[3810])] ) ] spids: [3262] ) spids: [3258 3261] ) (FuncDef name: test_target_expansion_in_subdir body: (BraceGroup children: [ (C {(make_packages)}) (SimpleCommand words: [{(cd)} {(video)}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[3849])] ) (C {(assert_expansion)} {(SQ <'build streamer2:ta'>)} {(SQ <'build streamer2:task_lib '>)}) (C {(assert_expansion)} {(SQ <'build streamer2:to'>)} {(SQ <'build streamer2:token_bucket'>)}) (C {(assert_expansion)} {(SQ <'build streamer2/s'>)} {(SQ <'build streamer2/stuff'>)}) (C {(assert_expansion)} {(SQ <'build streamer2/stuff:s'>)} {(SQ <'build streamer2/stuff:stuff '>)} ) (C {(assert_expansion)} {(SQ <'build video/streamer2:ta'>)} {(SQ <'build video/streamer2:ta'>)} ) (C {(assert_expansion)} {(SQ <'build //video/streamer2:ta'>)} {(SQ <'build //video/streamer2:task_lib '>)} ) ] spids: [3834] ) spids: [3830 3833] ) (FuncDef name: test_target_expansion_in_package body: (BraceGroup children: [ (C {(make_packages)}) (SimpleCommand words: [{(cd)} {(video/streamer2)}] redirects: [(Redir op_id:Redir_Great fd:2 arg_word:{(/dev/null)} spids:[3970])] ) (C {(assert_expansion)} {(SQ <'build :ta'>)} {(SQ <'build :task_lib '>)}) (C {(assert_expansion)} {(SQ <'build :to'>)} {(SQ <'build :token_bucket'>)}) (C {(assert_expansion)} {(SQ <'build :checks/th'>)} {(SQ <'build :checks/thingy '>)}) (C {(assert_expansion)} {(SQ <'build s'>)} {(SQ <'build stuff'>)}) (C {(assert_expansion)} {(SQ <'build :s'>)} {(SQ <'build :s'>)}) ] spids: [3955] ) spids: [3951 3954] ) (FuncDef name: test_help body: (BraceGroup children: [ (C {(assert_expansion)} {(SQ <'help qu'>)} {(SQ <'help query '>)}) (C {(assert_expansion)} {(SQ <'help bui'>)} {(SQ <'help build '>)}) (C {(assert_expansion)} {(SQ <'help shut'>)} {(SQ <'help shutdown '>)}) (C {(assert_expansion)} {(SQ <'help start'>)} {(SQ <'help startup_options '>)}) ] spids: [4058] ) spids: [4054 4057] ) (FuncDef name: test_info body: (BraceGroup children: [ (C {(assert_expansion)} {(SQ <'info commi'>)} {(SQ <'info committed-heap-size '>)}) (C {(assert_expansion)} {(SQ <'info i'>)} {(SQ <'info install_base '>)}) (C {(assert_expansion)} {(SQ <'info --show_m'>)} {(SQ <'info --show_make_env '>)}) ] spids: [4123] ) spids: [4119 4122] ) (C {(run_suite)} {(DQ ("Tests of bash completion of 'blaze' command."))}) ] )