public function testDetectEnv() { $loader = MoTranslator\Loader::getInstance(); // putenv/getenv is broken on hhvm, do not fight with it foreach (array('LC_MESSAGES', 'LC_ALL', 'LANG') as $var) { putenv($var . '=baz'); if (getenv($var) !== 'baz') { $this->markTestSkipped('Setting environment does not work'); } putenv($var); if (getenv($var) !== false) { $this->markTestSkipped('Unsetting environment does not work'); } } unset($GLOBALS['lang']); putenv('LC_ALL=baz'); $this->assertEquals('baz', $loader->detectlocale()); putenv('LC_ALL'); putenv('LC_MESSAGES=bar'); $this->assertEquals('bar', $loader->detectlocale()); putenv('LC_MESSAGES'); putenv('LANG=barr'); $this->assertEquals('barr', $loader->detectlocale()); putenv('LANG'); $this->assertEquals('en', $loader->detectlocale()); }