(command.CommandList children: [ (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:test_description) op: assign_op.Equal rhs: {(SQ (Token id:Id.Lit_Chars val:'Tests log -L performance' span_id:6))} spids: [4] ) ] ) (C {(.)} {(./perf-lib.sh)}) (C {(test_perf_default_repo)}) (C {(test_expect_success)} {(SQ (Token id:Id.Lit_Chars val:'select a file' span_id:26))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:30) (Token id:Id.Lit_Chars val:'\tgit ls-tree HEAD | grep ^100644 |\n' span_id:31) (Token id:Id.Lit_Chars val:'\tsort -k 3 | head -1 | cut -f 2 >filelist\n' span_id:32) ) } ) (command.ShAssignment pairs: [ (assign_pair lhs: (sh_lhs_expr.Name name:file) op: assign_op.Equal rhs: { (command_sub left_token: (Token id:Id.Left_DollarParen val:'$(' span_id:37) command_list: (command.CommandList children:[(C {(cat)} {(filelist)})]) ) } spids: [36] ) ] ) (C {(export)} {(file)}) (C {(test_perf)} {(SQ (Token id:Id.Lit_Chars val:'git rev-list --topo-order (baseline)' span_id:51))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:55) (Token id: Id.Lit_Chars val: '\tgit rev-list --topo-order HEAD >/dev/null\n' span_id: 56 ) ) } ) (C {(test_perf)} {(SQ (Token id:Id.Lit_Chars val:'git log --follow (baseline for -M)' span_id:63))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:67) (Token id: Id.Lit_Chars val: '\tgit log --oneline --follow -- "$file" >/dev/null\n' span_id: 68 ) ) } ) (C {(test_perf)} {(SQ (Token id:Id.Lit_Chars val:'git log -L (renames off)' span_id:75))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:79) (Token id: Id.Lit_Chars val: '\tgit log --no-renames -L 1:"$file" >/dev/null\n' span_id: 80 ) ) } ) (C {(test_perf)} {(SQ (Token id:Id.Lit_Chars val:'git log -L (renames on)' span_id:87))} { (SQ (Token id:Id.Lit_Chars val:'\n' span_id:91) (Token id:Id.Lit_Chars val:'\tgit log -M -L 1:"$file" >/dev/null\n' span_id:92) ) } ) (C {(test_done)}) ] )