Download the PHP package hmlb/phpunit-vw without Composer
On this page you can find all versions of the php package hmlb/phpunit-vw. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download hmlb/phpunit-vw
More information about hmlb/phpunit-vw
Files in hmlb/phpunit-vw
Package phpunit-vw
Short Description VW PhpUnit makes your failing tests pass CI tools scrutiny!
License MIT
Homepage https://github.com/hmlb/phpunit-vw
Informations about the package phpunit-vw
Phpunit VW Extension
VW makes failing test cases succeed in continuous integration tools.
Your primary objective is to ship more code to the world. No need to be slowed down by regressions or new bugs that happen during development.
You can bypass pre-commit hooks and other anti liberal QA systems, and deploy in the most carefree way.
- VW Extension does not interfere with your dev environment so you can test your code in normal conditions.
-
It automatically detects CI environments and makes your test suites succeed even with failing assertions or unwanted exceptions \o/
- Since it may not be obvious anymore * this package was created as a joke during the Volkswagen emissions scandal in 2015 when software was found in VW vehicules that detected official testing conditions and changed the engine parameters to fake the output of emission of pollutant gases.
It has been adapted in a lot of language and we have a good laugh, thank you all :)
This is in no way a recommended package to use in any other goals than fun or trolling your QA collegues.
Example
Here are the results of running the VWTest case in different environments:
Running in development environment:
Installation
You can install VW Extension via Composer
composer require hmlb/phpunit-vw:dev-master
Usage
Just enable it by adding the following to your test suite's phpunit.xml
file:
Now run your test suite as normal.
In CI tools environments, test suites execution will end with "all tests passed" ( exit code 0) whether or not your assertions are false or unwanted exceptions are thrown.
Configuration
Under the hood (wink wink), the "SecretSoftware" class detects if the phpunit process has been invoked in a CI tools environment. (Actually checks for the most used tools' default environment variables).
If you use another CI tool or want to fool anything else, you can add environment variables to the "scrutiny detection":
additionalEnvVariables - Array of additional environment variables to switch the obfuscation on.
Add this in phpunit.xml
when configuring the listener:
Scandal
Any similarities with a current event concerning (but not limited to) a multinational automobile manufacturer are purely coincidental.
CI tools detection
Currently detects :
- TravisCI
- Appveyor
- Bamboo
- Buildkite
- CircleCI
- CodeShip
- GitlabCI
- Go CD
- Hudson
- Jenkins
- PHPCI
- TeamCity
- Wercker
Other CI tools using environment variables like 'BUILD_ID' would be detected as well.
License
phpunit-vw is available under the MIT License.