From 725a4fd638c7f339cdf5f1daaff0899bdbca24d3 Mon Sep 17 00:00:00 2001 From: Chris Smith Date: Fri, 21 Nov 2014 10:07:56 +0000 Subject: [PATCH] Backup/restore Composer environment variables The tests could fail if an environment variable replaces an expected value. --- tests/Composer/Test/ConfigTest.php | 33 ++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/tests/Composer/Test/ConfigTest.php b/tests/Composer/Test/ConfigTest.php index 705fe78e0..47ee08718 100644 --- a/tests/Composer/Test/ConfigTest.php +++ b/tests/Composer/Test/ConfigTest.php @@ -16,6 +16,39 @@ use Composer\Config; class ConfigTest extends \PHPUnit_Framework_TestCase { + private static $envVars = array( + 'VENDOR_DIR', + 'BIN_DIR', + 'PROCESS_TIMEOUT', + 'CACHE_DIR', + 'CACHE_FILES_DIR', + 'CACHE_REPO_DIR', + 'CACHE_VCS_DIR', + 'DISCARD_CHANGES', + ); + + private $envVarValues = array(); + + public function setUp() + { + foreach (self::$envVars as $var) { + $var = 'COMPOSER_' . $var; + + if ($value = getenv($var)) { + $this->envVarValues[$var] = $value; + + putenv($var . '='); + } + } + } + + public function tearDown() + { + foreach ($this->envVarValues as $var => $value) { + putenv(sprintf('%s=%s', $var, $value)); + } + } + /** * @dataProvider dataAddPackagistRepository */