これは私のテストファイルです
$crawler = $this->client->request('GET', $this->getUrlOfRoute($this->routeStep1));
$buttonCrawlerNode = $crawler->selectButton('next_step');
$form = $buttonCrawlerNode->form(array(
'form[name]' => '__davidc',
), 'POST');
$crawler = $this->client->submit($form);
$container = $this->client->getContainer();
$session = $container->get('session')->get('maSession');
これは私のコントローラーです:
if (!$form->getData()['name']) {
return $this->redirect($this->generateUrl('error_page'));
}
$data = $form->getData();
$name = $data['name'];
$unObject = new ObjectPerso();
$unObject->setName($name);
$test= serialize($unObject);
$this->get('session')->set('maSession', serialize($unObject));
var_dump($this->get('session')->get('maSession'));
return $this->redirect($this->generateUrl('step2'));
私の問題は、テストを実行すると、シリアル化に合格しないことです。これはエラーや例外を返しませんが、有効なテストを返します。
今、フォームとセッションを確認したいのですが、シリアル化されていないためセッション変数ではないため、できません。