t / t0025-crlf-renormalize.shon commit t3903: abstract away SHA-1-specific constants (c784815)
   1#!/bin/sh
   2
   3test_description='CRLF renormalization'
   4
   5. ./test-lib.sh
   6
   7test_expect_success setup '
   8        git config core.autocrlf false &&
   9        printf "LINEONE\nLINETWO\nLINETHREE\n" >LF.txt &&
  10        printf "LINEONE\r\nLINETWO\r\nLINETHREE\r\n" >CRLF.txt &&
  11        printf "LINEONE\r\nLINETWO\nLINETHREE\n" >CRLF_mix_LF.txt &&
  12        git add . &&
  13        git commit -m initial
  14'
  15
  16test_expect_success 'renormalize CRLF in repo' '
  17        echo "*.txt text=auto" >.gitattributes &&
  18        git add --renormalize "*.txt" &&
  19        cat >expect <<-\EOF &&
  20        i/lf w/crlf attr/text=auto CRLF.txt
  21        i/lf w/lf attr/text=auto LF.txt
  22        i/lf w/mixed attr/text=auto CRLF_mix_LF.txt
  23        EOF
  24        git ls-files --eol |
  25        sed -e "s/      / /g" -e "s/  */ /g" |
  26        sort >actual &&
  27        test_cmp expect actual
  28'
  29
  30test_expect_success 'ignore-errors not mistaken for renormalize' '
  31        git reset --hard &&
  32        echo "*.txt text=auto" >.gitattributes &&
  33        git ls-files --eol >expect &&
  34        git add --ignore-errors "*.txt" &&
  35        git ls-files --eol >actual &&
  36        test_cmp expect actual
  37'
  38
  39test_done