Mercurial > hg
view tests/test-archive-symlinks.t @ 49214:eca367970253 stable
run-tests: send the test result after freeing the channel
Sending the message about the test being "done" signals to the main thread that
a new test can be started. Before this changeset, we sent this signal before
freeing the channel, there is room for a race condition where a new test would
search for a channel before the old test freed the one it used.
This is an example of the failure it would produce:
https://foss.heptapod.net/mercurial/mercurial-devel/-/jobs/552404
author | Pierre-Yves David <pierre-yves.david@octobus.net> |
---|---|
date | Tue, 24 May 2022 09:57:53 +0200 |
parents | c4d03b6d9576 |
children |
line wrap: on
line source
#require symlink $ origdir=`pwd` $ hg init repo $ cd repo $ ln -s nothing dangling avoid tar warnings about old timestamp $ hg ci -d '2000-01-01 00:00:00 +0000' -qAm 'add symlink' $ hg archive -t files ../archive $ hg archive -t tar -p tar ../archive.tar $ hg archive -t zip -p zip ../archive.zip files $ cd "$origdir" $ cd archive $ readlink.py dangling dangling -> nothing tar $ cd "$origdir" $ tar xf archive.tar $ cd tar $ readlink.py dangling dangling -> nothing #if unziplinks zip $ cd "$origdir" $ unzip archive.zip > /dev/null 2>&1 $ cd zip $ readlink.py dangling dangling -> nothing #endif $ cd ..