Я следую this tutorial для модульных испытаний на ZF2. Я знаком с модульным тестированием, поэтому я в значительной степени понимаю, что происходит.ZF2 Mock сбой по неопределенному методу
Я получаю PHP Fatal error: Call to undefined method Mock_AlbumTable_9fb22412::fetchAll() in [my controller's route here]
.
Если я следую правильно, контроллер вызывает fetchAll
на моем мокром объекте. Странная часть - это то, почему она не определена, если я объявляю ее в макетных ожиданиях.
Мой тестовый код точно такой же по указанной ссылке, (буквально копировать/вставить), и мой AlbumTable
класс также из учебника:
<?php
namespace Album\Model;
use Zend\Db\TableGateway\TableGateway;
class AlbumTable
{
protected $tableGateway;
public function __construct(TableGateway $tableGateway)
{
$this->tableGateway = $tableGateway;
}
public function fetchAll()
{
$resultSet = $this->tableGateway->select();
return $resultSet;
}
// ... more code ...
}
Что я здесь отсутствует?
Редактировать: Посещение указанного маршрута контроллера из веб-браузера работает, поэтому это не проблема с классом AlbumTable
, по крайней мере.