Неустранимая ошибка PHPUnit 'вызов неопределенной функции xcache_get ()' AWS SDK & Symfony 2 - PullRequest
1 голос
/ 13 марта 2012

Я пытаюсь запустить PHPUnit в моем приложении Symfony 2, но столкнулся с проблемой, которую, похоже, не могу понять.

Когда я запускаю свой модульный тест, возвращается фатальная ошибка, это не происходит внутри обычного браузера.

Функция проверки

    $client = static::createClient(array(), array(
        'PHP_AUTH_USER' => 'test',
        'PHP_AUTH_PW'   => 'test',
    ));        
    $crawler = $client->request('GET', '/test/url');

Ошибка в консоли

 $ phpunit -c app/
 PHPUnit 3.6.10 by Sebastian Bergmann.

 Configuration read from /Acme/app/phpunit.xml.dist

 PHP Fatal error:  Call to undefined function xcache_get() in /Acme/vendor/aws-sdk-for-php/lib/cachecore/cachexcache.class.php on line 58

 Fatal error: Call to undefined function xcache_get() in /Acme/vendor/aws-sdk-for-php/lib/cachecore/cachexcache.class.php on line 58

Ошибка линии относится к (в AWS SDK) L 58 - это L 3 в этом отрывке

    public function read()
{   
    if ($data = xcache_get($this->id))
    {
        $data = $this->gzip ? gzuncompress($data) : $data;
        return unserialize($data);
    }

    return false;
}

Любая помощь высоко ценится: -)

1 Ответ

1 голос
/ 13 марта 2012

phpunit использует другой INI-файл, который не загружает это расширение

Попробуйте запустить php --ini из консоли, сравните его с выводом phpinfo () из браузера, чтобы увидеть, какие INI-файлы загружаются (большинствовозможно, ваш веб-сервер работает под другим пользователем и может иметь собственный ini-файл)

Возможные способы исправить это:

  1. Редактирование ini, используемого cli, и добавление необходимых опций
  2. Установив переменную среды PHPRC так, чтобы она указывала на ini-файл MAMP
  3. Создайте символическую ссылку на ini-файл MAMP в папке php bin
  4. Отредактируйте файл phpunit и добавьте -c path/to/ini после двоичного файла php
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...