playframework/Play20 — pull request #386 by delitescere (2012-07-16 07:58:17+00:00)
Title: Ensure only one application can run simultaneously during testing

I don't want to have to make all the examples in a Spec sequential just because two or more of them start a Play application and might stomp on each other.

- During testing, due to ALL THE STATIC THINGS, if more than one Application is started, things just break indeterminately
- Synchronize the helper "running" methods so parallel tests block and can't interfere with each other
- Interleaved multi-threaded test using latches to force a second thread to attempt to run an application while a first thread is already running one