2017-05-25 3 views
2

Ich möchte ein Array von dieser verspotteten Methode zurückgeben und ich möchte, dass es eines der Argumente enthält, die ursprünglich an die Methode übergeben wurden.Return-Argument von PHPUnit Test als Teil eines Arrays

Der Code unten läuft, aber anstelle von Daten, die den ursprünglichen Argument-Wert es ist ein Objekt vom Typ

PHPUnit_Framework_MockObject_Stub_ReturnArgument

$stub->method('insert')->willReturn(array('success'=>true,'data'=>$this->returnArgument(0))); 

Die einzige Art, wie ich in der Lage bin, das Original zu erhalten Argument ist, nur das Argument zurückzugeben, aber dann habe ich nicht das Array, das ich benötige

$stub->method('insert')->will('data'=>$this->returnArgument(0)); 

Gibt es etwas Kleines, das ich falsch mache, oder muss ich versuchen, einen Callback oder etwas Ähnliches zu implementieren?

Antwort

2

können Sie returnCallback als Beispiel verwenden:

 ->will($this->returnCallback(function ($arg1) { 
       return array('success'=>true,'data'=>$arg1); 
     })); 

Hope this Hilfe

Verwandte Themen