Я пытаюсь проверить, что значение вводится в компонент сеанса с объектами CakePHP Mock, но мой тест продолжает терпеть неудачу, утверждая, что метод записи не был вызван. Я отладил это и точно знаю, что метод был вызван, поэтому не уверен, что я делаю неправильно.
Вот код в модульном тесте:
$this->controller = $this->generate('Posts', array(
'components' => array(
'Session' => array('write')
)));
$this->testAction(...);
$this->controller->Session
->expects($this->any())
->method('write')
->with('my value here');
Я получаю следующую ошибку:
Ожидание не удалось для имени метода равно, когда вызывается ноль или более раз.
Мошеннический метод не существует.
Если я изменяю вызов на ожидает, что будет -> ожидает ($ this-> Once ()), то я получаю эту ошибку:
Ожидание не удалось для имени метода равно, когда вызывается 1 раз (а).
Ожидается, что метод будет вызван 1 раз, фактически вызван 0 раз.
Я сделал var_dump для $ this-> Controller, и определенно существует поддельный объект сеанса, и он, похоже, замечает вызов метода write, поэтому я действительно не уверен, почему получаю сообщение об ошибке.
Буду признателен за любой совет!