(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: {(SQ <'--show-all --parents does not rewrite TREESAME commits'>)}
          spids: [4]
        )
      ]
      spids: [4]
    )
    (C {(.)} {(./test-lib.sh)})
    (C {(test_expect_success)} {(SQ <'set up --show-all --parents test'>)} 
      {
        (SQ <'\n'> <'\ttest_commit one foo.txt &&\n'> <'\tcommit1=$(git rev-list -1 HEAD) &&\n'> 
          <'\ttest_commit two bar.txt &&\n'> <'\tcommit2=$(git rev-list -1 HEAD) &&\n'> <'\ttest_commit three foo.txt &&\n'> 
          <'\tcommit3=$(git rev-list -1 HEAD)\n'> <'\t'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'--parents rewrites TREESAME parents correctly'>)} 
      {
        (SQ <'\n'> <'\techo $commit3 $commit1 > expected &&\n'> <'\techo $commit1 >> expected &&\n'> 
          <'\tgit rev-list --parents HEAD -- foo.txt > actual &&\n'> <'\ttest_cmp expected actual\n'> <'\t'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'--parents --show-all does not rewrites TREESAME parents'>)} 
      {
        (SQ <'\n'> <'\techo $commit3 $commit2 > expected &&\n'> 
          <'\techo $commit2 $commit1 >> expected &&\n'> <'\techo $commit1 >> expected &&\n'> 
          <'\tgit rev-list --parents --show-all HEAD -- foo.txt > actual &&\n'> <'\ttest_cmp expected actual\n'> <'\t'>
        )
      }
    )
    (C {(test_done)})
  ]
)