blame tests: don't rely on t/t4018/ directory

Refactor a test added in 9466e3809d (blame: enable funcname blaming with userdiff driver, 2020-11-01) so that the blame tests don't rely on stealing the contents of "t/t4018/fortran-external-function". I have another patch series that'll possibly (or not) refactor that file, but having this test inter-dependency makes things simple in any case by making this test more readable. Signed-off-by: Ævar Arnfjörð Bjarmason <avarab@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>

Ævar Arnfjörð Bjarmason committed Apr 8, 2021 at 17:04 UTC b269441be249152a9be6bd9f0a3f6fb5923d2be4
1 file changed +13 -3
t/annotate-tests.sh
+13 -3
@@ -482,12 +482,22 @@ test_expect_success 'blame -L ^:RE (absolute: end-of-file)' '
482 test_expect_success 'setup -L :funcname with userdiff driver' '
483 echo "fortran-* diff=fortran" >.gitattributes &&
484 fortran_file=fortran-external-function &&
485 - orig_file="$TEST_DIRECTORY/t4018/$fortran_file" &&
486 - cp "$orig_file" . &&
485 + cat >$fortran_file <<-\EOF &&
486 + function RIGHT(a, b) result(c)
487 +
488 + integer, intent(in) :: ChangeMe
489 + integer, intent(in) :: b
490 + integer, intent(out) :: c
491 +
492 + c = a+b
493 +
494 + end function RIGHT
495 + EOF
496 git add "$fortran_file" &&
497 GIT_AUTHOR_NAME="A" GIT_AUTHOR_EMAIL="A@test.git" \
498 git commit -m "add fortran file" &&
490 - sed -e "s/ChangeMe/IWasChanged/" <"$orig_file" >"$fortran_file" &&
499 + sed -e "s/ChangeMe/IWasChanged/" <"$fortran_file" >"$fortran_file".tmp &&
500 + mv "$fortran_file".tmp "$fortran_file" &&
501 git add "$fortran_file" &&
502 GIT_AUTHOR_NAME="B" GIT_AUTHOR_EMAIL="B@test.git" \
503 git commit -m "change fortran file"