(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: [1692] ) ] ) (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: [1708] ) ] ) (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: [1724] ) ] ) (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: [1740] ) ] ) (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: [1766] ) ] ) (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: [1782] ) ] ) (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: [1812] ) ] ) (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: [1828] ) ] ) (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: [1844] ) ] ) (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: [1874] ) ] ) (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: [1890] ) ] ) ] spids: [1223] ) spids: [1219 1222] ) (C {(test_sequence)} {(DQ (--bisect))}) (C {(test_done)}) ] )