(CommandList children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:test_description) op: Equal rhs: {(SQ <'Tests git rev-list --bisect functionality'>)} spids: [12] ) ] spids: [12] ) (C {(.)} {(./test-lib.sh)}) (C {(.)} {(DQ ($ VSub_Name '$TEST_DIRECTORY')) (/lib-t6000.sh)}) (FuncDef name: test_bisection_diff body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_max_diff) op: Equal rhs: {($ VSub_Number '$1')} spids: [52] ) ] spids: [52] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_bisect_option) op: Equal rhs: {($ VSub_Number '$2')} spids: [56] ) ] spids: [56] ) (C {(shift)} {(2)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_bisection) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(git)} {(rev-list)} {($ VSub_Name '$_bisect_option')} {(DQ ($ VSub_At '$@'))} ) ] ) left_token: <Left_CommandSub '$('> spids: [66 76] ) } spids: [65] ) ] spids: [65] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_list_size) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(git)} {(rev-list)} {(DQ ($ VSub_At '$@'))}) (C {(wc)} {(-l)}) ] negated: False ) ] ) left_token: <Left_CommandSub '$('> spids: [80 94] ) } spids: [79] ) ] spids: [79] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_head) op: Equal rhs: {($ VSub_Number '$1')} spids: [97] ) ] spids: [97] ) (C {(shift)} {(1)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_bisection_size) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (Pipeline children: [ (C {(git)} {(rev-list)} {($ VSub_Name '$_bisection')} {(DQ ($ VSub_At '$@'))} ) (C {(wc)} {(-l)}) ] negated: False ) ] ) left_token: <Left_CommandSub '$('> spids: [107 123] ) } spids: [106] ) ] spids: [106] ) (AndOr children: [ (C {(Lit_Other '[')} {(-n)} {(DQ ($ VSub_Name '$_list_size'))} {(-a)} {(-n)} {(DQ ($ VSub_Name '$_bisection_size'))} {(Lit_Other ']')} ) (C {(error)} {(DQ ('test_bisection_diff failed'))}) ] op_id: Op_DPipe ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_bisect_err) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [ (C {(expr)} {($ VSub_Name '$_list_size')} {(-)} {($ VSub_Name '$_bisection_size')} {(EscapedLiteralPart token:<Lit_EscapedChar '\\*'>)} {(2)} ) ] ) left_token: <Left_CommandSub '$('> spids: [168 180] ) } spids: [167] ) ] spids: [167] ) (AndOr children: [ (C {(test)} {(DQ ($ VSub_Name '$_bisect_err'))} {(-lt)} {(0)}) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_bisect_err) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(expr)} {(0)} {(-)} {($ VSub_Name '$_bisect_err')})] ) left_token: <Left_CommandSub '$('> spids: [196 204] ) } spids: [195] ) ] spids: [195] ) ] op_id: Op_DAmp ) (Sentence child: (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_bisect_err) op: Equal rhs: { (CommandSubPart command_list: (CommandList children: [(C {(expr)} {($ VSub_Name '$_bisect_err')} {(/)} {(2)})] ) left_token: <Left_CommandSub '$('> spids: [208 216] ) } spids: [207] ) ] spids: [207] ) terminator: <Op_Semi ';'> ) (C {(test_expect_success)} { (DQ ('bisection diff ') ($ VSub_Name '$_bisect_option') (' ') ($ VSub_Name '$_head') (' ') ($ VSub_Star '$*') (' <= ') ($ VSub_Name '$_max_diff') ) } {(SQ <'test $_bisect_err -le $_max_diff'>)} ) ] spids: [49] ) spids: [45 48] ) (SimpleCommand words: [{(date)}] redirects: [(Redir op_id:Redir_Great fd:-1 arg_word:{(path0)} spids:[251])] ) (C {(git)} {(update-index)} {(--add)} {(path0)}) (C {(save_tag)} {(tree)} {(git)} {(write-tree)}) (C {(on_committer_date)} {(DQ ('00:00'))} {(hide_error)} {(save_tag)} {(root)} {(unique_commit)} {(root)} {(tree)} ) (C {(on_committer_date)} {(DQ ('00:01'))} {(save_tag)} {(l0)} {(unique_commit)} {(l0)} {(tree)} {(-p)} {(root)} ) (C {(on_committer_date)} {(DQ ('00:02'))} {(save_tag)} {(l1)} {(unique_commit)} {(l1)} {(tree)} {(-p)} {(l0)} ) (C {(on_committer_date)} {(DQ ('00:03'))} {(save_tag)} {(l2)} {(unique_commit)} {(l2)} {(tree)} {(-p)} {(l1)} ) (C {(on_committer_date)} {(DQ ('00:04'))} {(save_tag)} {(a0)} {(unique_commit)} {(a0)} {(tree)} {(-p)} {(l2)} ) (C {(on_committer_date)} {(DQ ('00:05'))} {(save_tag)} {(a1)} {(unique_commit)} {(a1)} {(tree)} {(-p)} {(a0)} ) (C {(on_committer_date)} {(DQ ('00:06'))} {(save_tag)} {(b1)} {(unique_commit)} {(b1)} {(tree)} {(-p)} {(a0)} ) (C {(on_committer_date)} {(DQ ('00:07'))} {(save_tag)} {(c1)} {(unique_commit)} {(c1)} {(tree)} {(-p)} {(b1)} ) (C {(on_committer_date)} {(DQ ('00:08'))} {(save_tag)} {(b2)} {(unique_commit)} {(b2)} {(tree)} {(-p)} {(b1)} ) (C {(on_committer_date)} {(DQ ('00:09'))} {(save_tag)} {(b3)} {(unique_commit)} {(b2)} {(tree)} {(-p)} {(b2)} ) (C {(on_committer_date)} {(DQ ('00:10'))} {(save_tag)} {(c2)} {(unique_commit)} {(c2)} {(tree)} {(-p)} {(c1)} {(-p)} {(b2)} ) (C {(on_committer_date)} {(DQ ('00:11'))} {(save_tag)} {(c3)} {(unique_commit)} {(c3)} {(tree)} {(-p)} {(c2)} ) (C {(on_committer_date)} {(DQ ('00:12'))} {(save_tag)} {(a2)} {(unique_commit)} {(a2)} {(tree)} {(-p)} {(a1)} ) (C {(on_committer_date)} {(DQ ('00:13'))} {(save_tag)} {(a3)} {(unique_commit)} {(a3)} {(tree)} {(-p)} {(a2)} ) (C {(on_committer_date)} {(DQ ('00:14'))} {(save_tag)} {(b4)} {(unique_commit)} {(b4)} {(tree)} {(-p)} {(b3)} {(-p)} {(a3)} ) (C {(on_committer_date)} {(DQ ('00:15'))} {(save_tag)} {(a4)} {(unique_commit)} {(a4)} {(tree)} {(-p)} {(a3)} {(-p)} {(b4)} {(-p)} {(c3)} ) (C {(on_committer_date)} {(DQ ('00:16'))} {(save_tag)} {(l3)} {(unique_commit)} {(l3)} {(tree)} {(-p)} {(a4)} ) (C {(on_committer_date)} {(DQ ('00:17'))} {(save_tag)} {(l4)} {(unique_commit)} {(l4)} {(tree)} {(-p)} {(l3)} ) (C {(on_committer_date)} {(DQ ('00:18'))} {(save_tag)} {(l5)} {(unique_commit)} {(l5)} {(tree)} {(-p)} {(l4)} ) (C {(git)} {(update-ref)} {(HEAD)} { (CommandSubPart command_list: (CommandList children:[(C {(tag)} {(l5)})]) left_token: <Left_CommandSub '$('> spids: [670 674] ) } ) (C {(on_committer_date)} {(DQ ('00:00'))} {(hide_error)} {(save_tag)} {(F)} {(unique_commit)} {(F)} {(tree)} ) (C {(on_committer_date)} {(DQ ('00:01'))} {(save_tag)} {(e8)} {(unique_commit)} {(e8)} {(tree)} {(-p)} {(F)} ) (C {(on_committer_date)} {(DQ ('00:02'))} {(save_tag)} {(e7)} {(unique_commit)} {(e7)} {(tree)} {(-p)} {(e8)} ) (C {(on_committer_date)} {(DQ ('00:03'))} {(save_tag)} {(e6)} {(unique_commit)} {(e6)} {(tree)} {(-p)} {(e7)} ) (C {(on_committer_date)} {(DQ ('00:04'))} {(save_tag)} {(e5)} {(unique_commit)} {(e5)} {(tree)} {(-p)} {(e6)} ) (C {(on_committer_date)} {(DQ ('00:05'))} {(save_tag)} {(f4)} {(unique_commit)} {(f4)} {(tree)} {(-p)} {(F)} ) (C {(on_committer_date)} {(DQ ('00:06'))} {(save_tag)} {(f3)} {(unique_commit)} {(f3)} {(tree)} {(-p)} {(f4)} ) (C {(on_committer_date)} {(DQ ('00:07'))} {(save_tag)} {(f2)} {(unique_commit)} {(f2)} {(tree)} {(-p)} {(f3)} ) (C {(on_committer_date)} {(DQ ('00:08'))} {(save_tag)} {(f1)} {(unique_commit)} {(f1)} {(tree)} {(-p)} {(f2)} ) (C {(on_committer_date)} {(DQ ('00:09'))} {(save_tag)} {(e4)} {(unique_commit)} {(e4)} {(tree)} {(-p)} {(e5)} ) (C {(on_committer_date)} {(DQ ('00:10'))} {(save_tag)} {(e3)} {(unique_commit)} {(e3)} {(tree)} {(-p)} {(e4)} ) (C {(on_committer_date)} {(DQ ('00:11'))} {(save_tag)} {(e2)} {(unique_commit)} {(e2)} {(tree)} {(-p)} {(e3)} ) (C {(on_committer_date)} {(DQ ('00:12'))} {(save_tag)} {(e1)} {(unique_commit)} {(e1)} {(tree)} {(-p)} {(e2)} ) (C {(on_committer_date)} {(DQ ('00:13'))} {(save_tag)} {(E)} {(unique_commit)} {(E)} {(tree)} {(-p)} {(e1)} {(-p)} {(f1)} ) (C {(on_committer_date)} {(DQ ('00:00'))} {(hide_error)} {(save_tag)} {(U)} {(unique_commit)} {(U)} {(tree)} ) (C {(on_committer_date)} {(DQ ('00:01'))} {(save_tag)} {(u0)} {(unique_commit)} {(u0)} {(tree)} {(-p)} {(U)} ) (C {(on_committer_date)} {(DQ ('00:01'))} {(save_tag)} {(u1)} {(unique_commit)} {(u1)} {(tree)} {(-p)} {(u0)} ) (C {(on_committer_date)} {(DQ ('00:02'))} {(save_tag)} {(u2)} {(unique_commit)} {(u2)} {(tree)} {(-p)} {(u0)} ) (C {(on_committer_date)} {(DQ ('00:03'))} {(save_tag)} {(u3)} {(unique_commit)} {(u3)} {(tree)} {(-p)} {(u0)} ) (C {(on_committer_date)} {(DQ ('00:04'))} {(save_tag)} {(u4)} {(unique_commit)} {(u4)} {(tree)} {(-p)} {(u0)} ) (C {(on_committer_date)} {(DQ ('00:05'))} {(save_tag)} {(u5)} {(unique_commit)} {(u5)} {(tree)} {(-p)} {(u0)} ) (C {(on_committer_date)} {(DQ ('00:06'))} {(save_tag)} {(V)} {(unique_commit)} {(V)} {(tree)} {(-p)} {(u1)} {(-p)} {(u2)} {(-p)} {(u3)} {(-p)} {(u4)} {(-p)} {(u5)} ) (FuncDef name: test_sequence body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_bisect_option) op: Equal rhs: {($ VSub_Number '$1')} spids: [1226] ) ] spids: [1226] ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(l0)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(l1)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(l2)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(a0)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(a1)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(a2)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(a3)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(b1)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(b2)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(b3)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(c1)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(c2)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(c3)} {(Lit_Other '^') (root)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(E)} {(Lit_Other '^') (F)}) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(e1)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(e2)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(e3)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(e4)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(e5)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(e6)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(e7)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(f1)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(f2)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(f3)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(f4)} {(Lit_Other '^') (F)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(E)} {(Lit_Other '^') (F)}) (C {(test_bisection_diff)} {(1)} {($ VSub_Name '$_bisect_option')} {(V)} {(Lit_Other '^') (U)}) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(V)} {(Lit_Other '^') (U)} {(Lit_Other '^') (u1)} {(Lit_Other '^') (u2)} {(Lit_Other '^') (u3)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(u1)} {(Lit_Other '^') (U)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(u2)} {(Lit_Other '^') (U)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(u3)} {(Lit_Other '^') (U)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(u4)} {(Lit_Other '^') (U)} ) (C {(test_bisection_diff)} {(0)} {($ VSub_Name '$_bisect_option')} {(u5)} {(Lit_Other '^') (U)} ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' l5 ^root'))} {(SQ <'git rev-list $_bisect_option l5 ^root'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('c3\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1676] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' l5 ^root ^c3'))} {(SQ <'git rev-list $_bisect_option l5 ^root ^c3'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('b4\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1693] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' l5 ^root ^c3 ^b4'))} {(SQ <'git rev-list $_bisect_option l5 ^c3 ^b4'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('l3\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1710] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' l3 ^root ^c3 ^b4'))} {(SQ <'git rev-list $_bisect_option l3 ^root ^c3 ^b4'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('a4\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1727] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' l5 ^b3 ^a3 ^b4 ^a4'))} {(SQ <'git rev-list $_bisect_option l3 ^b3 ^a3 ^a4'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('l3\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1744] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' l4 ^a2 ^a3 ^b ^a4'))} {(SQ <'git rev-list $_bisect_option l4 ^a2 ^a3 ^a4'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('l3\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1771] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' l3 ^a2 ^a3 ^b ^a4'))} {(SQ <'git rev-list $_bisect_option l3 ^a2 ^a3 ^a4'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('l3\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1788] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' a4 ^a2 ^a3 ^b4'))} {(SQ <'git rev-list $_bisect_option a4 ^a2 ^a3 ^b4'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('c2\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1819] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' a4 ^a2 ^a3 ^b4 ^c2'))} {(SQ <'git rev-list $_bisect_option a4 ^a2 ^a3 ^b4 ^c2'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('c3\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1836] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' a4 ^a2 ^a3 ^b4 ^c2 ^c3'))} {(SQ <'git rev-list $_bisect_option a4 ^a2 ^a3 ^b4 ^c2 ^c3'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('a4\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1853] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' a4 ^a2 ^a3 ^b4'))} {(SQ <'git rev-list $_bisect_option a4 ^a2 ^a3 ^b4'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('c2\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1884] ) ] ) (SimpleCommand words: [ {(test_output_expect_success)} {(DQ ($ VSub_Name '$_bisect_option') (' c3 ^a2 ^a3 ^b4 ^c2'))} {(SQ <'git rev-list $_bisect_option c3 ^a2 ^a3 ^b4 ^c2'>)} ] redirects: [ (HereDoc op_id: Redir_DLess fd: -1 body: {(DQ ('c3\n'))} do_expansion: True here_end: EOF was_filled: True spids: [1901] ) ] ) ] spids: [1223] ) spids: [1219 1222] ) (C {(test_sequence)} {(DQ (--bisect))}) (C {(test_done)}) ] )