(CommandList
  children: [
    (Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (LhsName name:test_description)
          op: Equal
          rhs: {(SQ <'diff --exit-code with whitespace'>)}
          spids: [4]
        )
      ]
      spids: [4]
    )
    (C {(.)} {(./test-lib.sh)})
    (C {(test_expect_success)} {(setup)} 
      {
        (SQ <'\n'> <'\tmkdir a b &&\n'> <'\techo >c &&\n'> <'\techo >a/d &&\n'> <'\techo >b/e &&\n'> 
          <'\tgit add . &&\n'> <'\ttest_tick &&\n'> <'\tgit commit -m initial &&\n'> <'\techo " " >a/d &&\n'> <'\ttest_tick &&\n'> 
          <'\tgit commit -a -m second &&\n'> <'\techo "  " >a/d &&\n'> <'\techo " " >b/e &&\n'> <'\tgit add a/d\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'diff-tree --exit-code'>)} 
      {
        (SQ <'\n'> <'\ttest_must_fail git diff --exit-code HEAD^ HEAD &&\n'> 
          <'\ttest_must_fail git diff-tree --exit-code HEAD^ HEAD\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'diff-tree -b --exit-code'>)} 
      {
        (SQ <'\n'> <'\tgit diff -b --exit-code HEAD^ HEAD &&\n'> 
          <'\tgit diff-tree -b -p --exit-code HEAD^ HEAD &&\n'> <'\tgit diff-tree -b --exit-code HEAD^ HEAD\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'diff-index --cached --exit-code'>)} 
      {
        (SQ <'\n'> <'\ttest_must_fail git diff --cached --exit-code HEAD &&\n'> 
          <'\ttest_must_fail git diff-index --cached --exit-code HEAD\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'diff-index -b -p --cached --exit-code'>)} 
      {
        (SQ <'\n'> <'\tgit diff -b --cached --exit-code HEAD &&\n'> 
          <'\tgit diff-index -b -p --cached --exit-code HEAD\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'diff-index --exit-code'>)} 
      {
        (SQ <'\n'> <'\ttest_must_fail git diff --exit-code HEAD &&\n'> 
          <'\ttest_must_fail git diff-index --exit-code HEAD\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'diff-index -b -p --exit-code'>)} 
      {
        (SQ <'\n'> <'\tgit diff -b --exit-code HEAD &&\n'> 
          <'\tgit diff-index -b -p --exit-code HEAD\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'diff-files --exit-code'>)} 
      {
        (SQ <'\n'> <'\ttest_must_fail git diff --exit-code &&\n'> 
          <'\ttest_must_fail git diff-files --exit-code\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'diff-files -b -p --exit-code'>)} 
      {(SQ <'\n'> <'\tgit diff -b --exit-code &&\n'> <'\tgit diff-files -b -p --exit-code\n'>)}
    )
    (C {(test_expect_success)} {(SQ <'diff-files --diff-filter --quiet'>)} 
      {
        (SQ <'\n'> <'\tgit reset --hard &&\n'> <'\trm a/d &&\n'> <'\techo x >>b/e &&\n'> 
          <'\ttest_must_fail git diff-files --diff-filter=M --quiet\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'diff-tree --diff-filter --quiet'>)} 
      {
        (SQ <'\n'> <'\tgit commit -a -m "worktree state" &&\n'> 
          <'\ttest_must_fail git diff-tree --diff-filter=M --quiet HEAD^ HEAD\n'>
        )
      }
    )
    (C {(test_done)})
  ]
)