Re: TAP tests and symlinks on Windows
От | Michael Paquier |
---|---|
Тема | Re: TAP tests and symlinks on Windows |
Дата | |
Msg-id | 20200630121328.GB67289@paquier.xyz обсуждение исходный текст |
Ответ на | Re: TAP tests and symlinks on Windows (Michael Paquier <michael@paquier.xyz>) |
Ответы |
Re: TAP tests and symlinks on Windows
|
Список | pgsql-hackers |
On Mon, Jun 29, 2020 at 04:56:16PM +0900, Michael Paquier wrote: > On Fri, Jun 26, 2020 at 02:00:37PM +0200, Peter Eisentraut wrote: >> We should be more accurate about things like this: >> >> +# The following tests test symlinks. Windows may not have symlinks, so >> +# skip there. >> >> The issue isn't whether Windows has symlinks, since all versions of Windows >> supported by PostgreSQL do (AFAIK). The issue is only whether the Perl >> installation that runs the tests has symlink support. And that is only >> necessary if the test itself wants to create or inspect symlinks. For >> example, there are existing tests involving tablespaces that work just fine >> on Windows. > > Check. Indeed that sounds confusing. Attached is an updated patch, where I have tried to use a better wording in all the code paths involved. >> Relatedly, your patch ends up skipping the tests on MSYS2, even though Perl >> supports symlinks there out of the box. > > Do you think that it would be enough to use what Andrew has mentioned > in [1]? I don't have a MSYS2 installation, so I am unfortunately not > able to confirm that, but I would just move the check to TestLib.pm > and save it in an extra variable. Added an extra $is_msys2 to track that in TestLib.pm. One thing I am not sure of though: Win32::Symlink fails to work properly with -l, but is that the case with MSYS2? If that's able to work, it would be possible to not skip the following test but I have taken the most careful approach for now: + # This symlink check is not supported on Windows. Win32::Symlink works + # around this situation by using junction points (actually PostgreSQL + # approach on the problem), and -l is not able to detect that situation. + SKIP: + { + skip "symlink check not implemented on Windows", 1 + if ($windows_os) Thanks, -- Michael
Вложения
В списке pgsql-hackers по дате отправления: