This repository has been archived on 2023-08-20. You can view files and clone it, but cannot push or open issues or pull requests.
Go to file
Fabien Potencier 334b62acd0 minor #23847 [Lock] Fix/lock test (jderusse)
This PR was merged into the 3.4 branch.

Discussion
----------

[Lock] Fix/lock test

| Q             | A
| ------------- | ---
| Branch?       | 3.4
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | N/A
| License       | MIT
| Doc PR        | N/A

Test on the Lock component often fail, the purpose of this PR is to fix it.

The goal of this failling test is to assert that blocking locks works. To test the blocking mode, I had to create 2 concurent process and I used pcntl_fork for that.
Sadly, travis takes more time to fork the process than configured TTL.

This PR replace the previous "sleep" to let child and parent starts, by a pcntl communication between child and parent.

| Process 1               | Process 2
| ----------------------- | ----------
| Wait N°2                |
|                         | Acquire Lock
|                         | Send signal to N°1
| Wake up                 | Wait N°1
| Try lock(non block)     |
|  => assert failure      |
| Send signal to N°2      |
| lock(block)             | Wake up
| ..                      | sleep 50 000ms
| ..                      | ..
| ..                      | Release lock
|  => assert Acquired     | exit
| Release lock            |
|  => assert child exit 0 |

Commits
-------

ff951697b6 Fix lock failling test
2017-08-10 09:13:20 +02:00
.composer Drop hirak/prestissimo 2016-05-12 07:44:15 -05:00
.github Github template: Remove EOM 3.2 from branch suggestion 2017-08-06 14:05:07 +02:00
src/Symfony minor #23847 [Lock] Fix/lock test (jderusse) 2017-08-10 09:13:20 +02:00
.editorconfig Add EditorConfig File 2012-06-16 14:08:15 +02:00
.gitignore Add appveyor.yml for C.I. on Windows 2015-08-25 23:41:37 +02:00
.php_cs.dist [Asset] Adding a new version strategy that reads from a manifest JSON file 2017-03-25 09:22:50 -07:00
.travis.yml Merge branch '3.3' into 3.4 2017-07-21 13:05:08 +02:00
appveyor.yml Merge branch '2.7' into 2.8 2017-05-19 14:11:19 +02:00
CHANGELOG-3.0.md Merge branch '2.8' into 3.1 2016-08-05 10:37:39 +02:00
CHANGELOG-3.1.md updated CHANGELOG for 3.1.9 2017-01-12 12:43:31 -08:00
CHANGELOG-3.2.md updated CHANGELOG for 3.2.13 2017-08-01 11:40:12 +02:00
CHANGELOG-3.3.md updated CHANGELOG for 3.3.6 2017-08-01 12:25:49 +02:00
composer.json Merge branch '3.3' into 3.4 2017-08-06 15:42:33 +02:00
CONTRIBUTING.md Mention the community review guide 2016-12-18 22:02:35 +01:00
CONTRIBUTORS.md Merge branch '2.8' into 3.2 2017-08-10 09:06:25 +02:00
LICENSE updated LICENSE year 2017-01-02 12:30:00 -08:00
phpunit Using FQ name for PHP_VERSION_ID 2017-06-01 13:44:56 -07:00
phpunit.xml.dist Merge branch '3.2' 2017-04-12 07:14:56 -07:00
README.md Fix minor typo in the main README.md 2017-04-27 20:23:38 +02:00
UPGRADE-3.0.md Fixed formatting in Security section 2017-04-14 11:38:02 +02:00
UPGRADE-3.1.md [Serializer] Remove AbstractObjectNormalizer::isAttributeToNormalize 2016-12-08 16:02:32 +01:00
UPGRADE-3.2.md [DI] Check for privates before shared services 2017-05-23 19:58:02 +02:00
UPGRADE-3.3.md Merge branch '3.3' into 3.4 2017-07-26 08:46:38 +02:00
UPGRADE-3.4.md [HttpKernel] Deprecated commands auto-registration 2017-08-09 18:52:44 +02:00
UPGRADE-4.0.md Merge branch '3.3' into 3.4 2017-08-10 09:07:17 +02:00

Symfony is a PHP framework for web applications and a set of reusable PHP components. Symfony is used by thousands of web applications (including BlaBlaCar.com and Spotify.com) and most of the popular PHP projects (including Drupal and Magento).

Installation

Documentation

Community

Contributing

Symfony is an Open Source, community-driven project with thousands of contributors. Join them contributing code or contributing documentation.

Security Issues

If you discover a security vulnerability within Symfony, please follow our disclosure procedure.

About Us

Symfony development is sponsored by SensioLabs, led by the Symfony Core Team and supported by Symfony contributors.