Как смоделировать сервис Symfony 2 в функциональном тесте?

У меня есть служба Symfony, которая использует подключение Redis в некоторых методах, но не во всех.

class ServiceA
{
    private $redis;

    public function __construct($redis)
    {
        $this->redis = $redis;
    }

    public function getRequest($param1, $param2)
    {
    $result = $param1+ $param2;
        return $request;
    }

    .. other methods which use $redis connection
}

Я пишу функциональный тест для кода, который использует только метод getRequest (этот метод не требует подключения redis), но поскольку конструктор принимает соединение в качестве аргумента, при запуске test он пытался подключиться к серверу redis.

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

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

http://blog.lyrixx.info/2013/04/12/symfony2-how-to-mock-services-during-functional-tests.html

$serviceA = $this->getMockBuilder('ServiceA')
    ->disableOriginalConstructor()
    ->getMock();

static::$kernel->getContainer()->set('my_bundle.service.a', $serviceA);

Ответы на вопрос(4)

Ваш ответ на вопрос