Git fork
at reftables-rust 52 lines 1.1 kB view raw
1#!/bin/sh 2 3test_description='apply with fuzz and offset' 4 5 6. ./test-lib.sh 7 8dotest () { 9 name="$1" && shift && 10 test_expect_success "$name" " 11 git checkout-index -f -q -u file && 12 git apply $* && 13 test_cmp expect file 14 " 15} 16 17test_expect_success setup ' 18 19 test_write_lines 1 2 3 4 5 6 7 8 9 10 11 12 >file && 20 git update-index --add file && 21 test_write_lines 1 2 3 4 5 6 7 a b c d e 8 9 10 11 12 >file && 22 cat file >expect && 23 git diff >O0.diff && 24 25 sed -e "s/@@ -5,6 +5,11 @@/@@ -2,6 +2,11 @@/" >O1.diff O0.diff && 26 sed -e "s/@@ -5,6 +5,11 @@/@@ -7,6 +7,11 @@/" >O2.diff O0.diff && 27 sed -e "s/@@ -5,6 +5,11 @@/@@ -19,6 +19,11 @@/" >O3.diff O0.diff && 28 29 sed -e "s/^ 5/ S/" >F0.diff O0.diff && 30 sed -e "s/^ 5/ S/" >F1.diff O1.diff && 31 sed -e "s/^ 5/ S/" >F2.diff O2.diff && 32 sed -e "s/^ 5/ S/" >F3.diff O3.diff 33 34' 35 36dotest 'unmodified patch' O0.diff 37 38dotest 'minus offset' O1.diff 39 40dotest 'plus offset' O2.diff 41 42dotest 'big offset' O3.diff 43 44dotest 'fuzz with no offset' -C2 F0.diff 45 46dotest 'fuzz with minus offset' -C2 F1.diff 47 48dotest 'fuzz with plus offset' -C2 F2.diff 49 50dotest 'fuzz with big offset' -C2 F3.diff 51 52test_done