ho creato la seguente interfaccia:Creazione oggetto fittizio di interfaccia con il tipo di suggerimento nel metodo non riesce a PHPUnit
<?php
interface Action
{
public function execute(\requests\Request $request, array $params);
}
Poi cerco di fare un oggetto fittizio di questa interfaccia con PHPUnit 3.4, ma ottengo il seguente errore:
Errore irreversibile: dichiarazione di Mock_Action_b389c0b1 :: execute() deve essere compatibile con quella di Action :: execute() in D: \ Xampp \ xampp \ php \ PEAR \ PHPUnit \ Framework \ TestCase.php (1121): eval() codice d sulla linea 2
Ho controllato la traccia dello stack ottenuta da PHPU nit e ha scoperto che crea un oggetto Mock che implementa l'azione di interfaccia, ma crea il metodo Execute nel seguente modo:
<?php
public function execute($request, array $params)
Come si può vedere, PHPUnit assume la matrice tipo di suggerimento, ma dimentica di \ le richieste di \ Request. Che ovviamente porta ad un errore. Qualcuno sa una soluzione alternativa per questo errore?
Ho provato anche senza spazi dei nomi, ma ho ancora lo stesso errore.
Mark, come si crea il mock? –