(command.CommandList
  children: [
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:test_description spids:[12])
          op: Equal
          rhs: {(SQ <'diff hunk header truncation'>)}
          spids: [12]
        )
      ]
      spids: [12]
    )
    (C {(.)} {(./test-lib.sh)})
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:N spids:[23])
          op: Equal
          rhs: {(SQ <'\xe6\x97\xa5\xe6\x9c\xac\xe8\xaa\x9e'>)}
          spids: [23]
        )
      ]
      spids: [23]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:N1 spids:[28])
          op: Equal
          rhs: {(SQ <'\xe6\x97\xa5'>)}
          spids: [28]
        )
      ]
      spids: [28]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:N2 spids:[33])
          op: Equal
          rhs: {(SQ <'\xe6\x97\xa5\xe6\x9c\xac'>)}
          spids: [33]
        )
      ]
      spids: [33]
    )
    (command.Assignment
      keyword: Assign_None
      pairs: [
        (assign_pair
          lhs: (lhs_expr.LhsName name:NS spids:[38])
          op: Equal
          rhs: 
            {
              (DQ ($ VSub_Name '$N') ($ VSub_Name '$N') ($ VSub_Name '$N') ($ VSub_Name '$N') 
                ($ VSub_Name '$N') ($ VSub_Name '$N') ($ VSub_Name '$N') ($ VSub_Name '$N') ($ VSub_Name '$N') ($ VSub_Name '$N') 
                ($ VSub_Name '$N') ($ VSub_Name '$N') ($ VSub_Name '$N')
              )
            }
          spids: [38]
        )
      ]
      spids: [38]
    )
    (C {(test_expect_success)} {(setup)} 
      {
        (SQ <'\n'> <'\n'> <'\t(\n'> <'\t\techo "A $NS"\n'> <'\t\tfor c in B C D E F G H I J K\n'> 
          <'\t\tdo\n'> <'\t\t\techo "  $c"\n'> <'\t\tdone\n'> <'\t\techo "L  $NS"\n'> <'\t\tfor c in M N O P Q R S T U V\n'> 
          <'\t\tdo\n'> <'\t\t\techo "  $c"\n'> <'\t\tdone\n'> <'\t) >file &&\n'> <'\tgit add file &&\n'> <'\n'> 
          <'\tsed -e "/^  [EP]/s/$/ modified/" <file >file+ &&\n'> <'\tmv file+ file\n'> <'\n'>
        )
      }
    )
    (C {(test_expect_success)} {(SQ <'hunk header truncation with an overly long line'>)} 
      {
        (SQ <'\n'> <'\n'> <'\tgit diff | sed -n -e "s/^.*@@//p" >actual &&\n'> <'\t(\n'> 
          <'\t\techo " A $N$N$N$N$N$N$N$N$N2"\n'> <'\t\techo " L  $N$N$N$N$N$N$N$N$N1"\n'> <'\t) >expected &&\n'> <'\ttest_cmp actual expected\n'> <'\n'>
        )
      }
    )
    (C {(test_done)})
  ]
)