PHPUnit a predanie POST parametrov
- newPOPE
- Člen | 648
Ahoj,
mam otazku ohladne testovania Presenteru a to nedari sa mi mu predat POST paramatre z testu
<?php
$request = new PresenterRequest(":Api:Json", "POST", array(
'action' => 'registerUser',
), array(
'param' => 'test param',
));
$presenter = new Api_JsonPresenter();
$response = $this->presenter->run($request);
?>
presenter
<?php
public function actionRegisterUser($param) {
dump($post);
dump($this->getParam('param'));
...
?>
alebo sa to neda bez napr. vytvorenia Formulara nasimulovat ?
skusal som uz asi vsetko co ma napadlo…
Dik
- arron
- Člen | 464
Je to docela prasarna, ale tohle mi docela dobre poslouzilo:
$_SERVER['REQUEST_METHOD'] = 'POST';
$_POST['whatEver'] = $someImportantValue;
Jeste me ted napadlo, ze by se dalo kouknout do testu Nette, jak jsou podobne veci udelane tam :-)
P.S.: Tak jsem koukal do tech testu Nette a je to tam udelane stejne :-)
Editoval arron (18. 9. 2010 23:02)
- newPOPE
- Člen | 648
arron napsal(a):
Diky moc. Na testy mim to zatial staci skor ma zarazilo to ze v API je uvedene
PresenterRequest($pres..., $method, $params, $postParams,...)
tak som predpokladal ze tak bude ficat.
Pozeral som aj tutorial a uz tam sa mi to nezdalo kedze tie POST params autor
uviedol aj to $params
aj do $postParams
…
Edit:
Nakoniec som to vyriesil zapisom v presenteri
<?php
$this->getPresenter()->getPost();
?>
funguje to aj v testoch aj v app cez server. Problem je v tom, ze to nie je osetrene cize surove data.
Editoval newPOPE (19. 9. 2010 18:37)