Ich versuche, einen Komponententest für einen Controllerwie überschreibe ich php: // input wenn Unit-Tests zu tun
I-Daten erhalten von PHP in dem Code mit Zend und PHPUnit zu schreiben: // input
Mein Code funktioniert gut, wenn ich die reale Anwendung teste, aber wenn ich Daten nicht als roher HTTP-Post liefern kann, sind $ data immer leer. Die Methode getRawBody() ruft file_get_contents ('php: // input') auf, aber wie überschreibe ich diese, um die Testdaten an meine Anwendung zu liefern.
Yeap, keine perfekte Lösung, aber wie ich beschlossen habe, es auch umzusetzen. Vielen Dank. –
Ich würde diese Lösung nicht empfehlen - Verwenden von 'if'-Anweisungen, um anderen Code in Komponententests im Vergleich zur Produktion auszuführen. Sie möchten idealerweise, dass Ihr Code in beiden Welten die gleichen logischen Anweisungen ausführt. Siehe unten die Lösung von @ MitMaro, die einen konfigurierbaren Eingangspfad verwendet. –