Mercurial > hg
view tests/test-diff-antipatience.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 | 9ef9884e5d50 |
children |
line wrap: on
line source
#testcases bdiff xdiff #if xdiff #require xdiff $ cat >> $HGRCPATH <<EOF > [experimental] > xdiff = true > EOF #endif Test case that makes use of the weakness of patience diff algorithm $ hg init >>> open('a', 'wb').write(('\n'.join(list('a' + 'x' * 10 + 'u' + 'x' * 30 + 'a\n'))).encode('ascii')) and None $ hg commit -m 1 -A a >>> open('a', 'wb').write(('\n'.join(list('b' + 'x' * 30 + 'u' + 'x' * 10 + 'b\n'))).encode('ascii')) and None #if xdiff $ hg diff diff -r f0aeecb49805 a --- a/a Thu Jan 01 00:00:00 1970 +0000 +++ b/a Thu Jan 01 00:00:00 1970 +0000 @@ -1,4 +1,4 @@ -a +b x x x @@ -9,7 +9,6 @@ x x x -u x x x @@ -30,6 +29,7 @@ x x x +u x x x @@ -40,5 +40,5 @@ x x x -a +b #else $ hg diff diff -r f0aeecb49805 a --- a/a Thu Jan 01 00:00:00 1970 +0000 +++ b/a Thu Jan 01 00:00:00 1970 +0000 @@ -1,15 +1,4 @@ -a -x -x -x -x -x -x -x -x -x -x -u +b x x x @@ -40,5 +29,16 @@ x x x -a +u +x +x +x +x +x +x +x +x +x +x +b #endif