(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: 
            {
              (SQ <"git rev-list trivial path optimization test\n"> <"\n"> <"   d/z1\n"> 
                <"   b0                             b1\n"> <"   o------------------------*----o master\n"> <"  /                        /\n"> 
                <" o---------o----o----o----o side\n"> <" a0        c0   c1   a1   c2\n"> <" d/f0      d/f1\n"> <" d/z0\n"> <"\n">
              )
            }
          spids: [4]
        )
      ]
      spids: [4]
    )
    (C {(.)} {(./test-lib.sh)})
    (C {(test_expect_success)} {(setup)} 
      {
        (SQ <"\n"> <"\techo Hello >a &&\n"> <"\tmkdir d &&\n"> <"\techo World >d/f &&\n"> 
          <"\techo World >d/z &&\n"> <"\tgit add a d &&\n"> <"\ttest_tick &&\n"> <"\tgit commit -m \"Initial commit\" &&\n"> 
          <"\tgit rev-parse --verify HEAD &&\n"> <"\tgit tag initial\n">
        )
      }
    )
    (C {(test_expect_success)} {(path-optimization)} 
      {
        (SQ <"\n"> <"\ttest_tick &&\n"> 
          <"\tcommit=$(echo \"Unchanged tree\" | git commit-tree \"HEAD^{tree}\" -p HEAD) &&\n"> <"\ttest $(git rev-list $commit | wc -l) = 2 &&\n"> 
          <"\ttest $(git rev-list $commit -- . | wc -l) = 1\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"further setup">)} 
      {
        (SQ <"\n"> <"\tgit checkout -b side &&\n"> <"\techo Irrelevant >c &&\n"> 
          <"\techo Irrelevant >d/f &&\n"> <"\tgit add c d/f &&\n"> <"\ttest_tick &&\n"> 
          <"\tgit commit -m \"Side makes an irrelevant commit\" &&\n"> <"\tgit tag side_c0 &&\n"> <"\techo \"More Irrelevancy\" >c &&\n"> <"\tgit add c &&\n"> 
          <"\ttest_tick &&\n"> <"\tgit commit -m \"Side makes another irrelevant commit\" &&\n"> <"\techo Bye >a &&\n"> 
          <"\tgit add a &&\n"> <"\ttest_tick &&\n"> <"\tgit commit -m \"Side touches a\" &&\n"> <"\tgit tag side_a1 &&\n"> 
          <"\techo \"Yet more Irrelevancy\" >c &&\n"> <"\tgit add c &&\n"> <"\ttest_tick &&\n"> 
          <"\tgit commit -m \"Side makes yet another irrelevant commit\" &&\n"> <"\tgit checkout master &&\n"> <"\techo Another >b &&\n"> <"\techo Munged >d/z &&\n"> 
          <"\tgit add b d/z &&\n"> <"\ttest_tick &&\n"> <"\tgit commit -m \"Master touches b\" &&\n"> <"\tgit tag master_b0 &&\n"> 
          <"\tgit merge side &&\n"> <"\techo Touched >b &&\n"> <"\tgit add b &&\n"> <"\ttest_tick &&\n"> 
          <"\tgit commit -m \"Master touches b again\"\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"path optimization 2">)} 
      {
        (SQ <"\n"> <"\tgit rev-parse side_a1 initial >expected &&\n"> 
          <"\tgit rev-list HEAD -- a >actual &&\n"> <"\ttest_cmp expected actual\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"pathspec with leading path">)} 
      {
        (SQ <"\n"> <"\tgit rev-parse master^ master_b0 side_c0 initial >expected &&\n"> 
          <"\tgit rev-list HEAD -- d >actual &&\n"> <"\ttest_cmp expected actual\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"pathspec with glob (1)">)} 
      {
        (SQ <"\n"> <"\tgit rev-parse master^ master_b0 side_c0 initial >expected &&\n"> 
          <"\tgit rev-list HEAD -- \"d/*\" >actual &&\n"> <"\ttest_cmp expected actual\n">
        )
      }
    )
    (C {(test_expect_success)} {(SQ <"pathspec with glob (2)">)} 
      {
        (SQ <"\n"> <"\tgit rev-parse side_c0 initial >expected &&\n"> 
          <"\tgit rev-list HEAD -- \"d/[a-m]*\" >actual &&\n"> <"\ttest_cmp expected actual\n">
        )
      }
    )
    (C {(test_done)})
  ]
)