mirror of
https://github.com/git/git.git
synced 2026-01-08 09:13:48 +00:00
t6423: introduce Windows-specific handling for symlinking to /dev/null
The device `/dev/null` does not exist on Windows, it's called `NUL` there. Calling `ln -s /dev/null my-symlink` in a symlink-enabled MSYS2 Bash will therefore literally link to a file or directory called `null` that is supposed to be in the current drive's top-level `dev` directory. Which typically does not exist. The test, however, really wants the created symbolic link to point to the NUL device. Let's instead use the `mklink` utility on Windows to perform that job, and keep using `ln -s /dev/null <target>` on non-Windows platforms. While at it, add the missing `SYMLINKS` prereq because this test _still_ would not pass on Windows before support for symbolic links is upstreamed from Git for Windows. Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
committed by
Junio C Hamano
parent
be6ac35107
commit
eae7c16c3d
@@ -5158,13 +5158,18 @@ test_setup_12m () {
|
||||
git switch B &&
|
||||
git rm dir/subdir/file &&
|
||||
mkdir dir &&
|
||||
ln -s /dev/null dir/subdir &&
|
||||
if test_have_prereq MINGW
|
||||
then
|
||||
cmd //c 'mklink dir\subdir NUL'
|
||||
else
|
||||
ln -s /dev/null dir/subdir
|
||||
fi &&
|
||||
git add . &&
|
||||
git commit -m "B"
|
||||
)
|
||||
}
|
||||
|
||||
test_expect_success '12m: Change parent of renamed-dir to symlink on other side' '
|
||||
test_expect_success SYMLINKS '12m: Change parent of renamed-dir to symlink on other side' '
|
||||
test_setup_12m &&
|
||||
(
|
||||
cd 12m &&
|
||||
|
||||
Reference in New Issue
Block a user