public function testShippingShippingPost()
{
// $this->markTestSkipped();
$faker = $this->getFaker();
$Customer = $this->logIn();
$client = $this->client;
// カート画面
$this->scenarioCartIn($client);
$hookpoins = array(EccubeEvents::FRONT_CART_ADD_INITIALIZE, EccubeEvents::FRONT_CART_ADD_COMPLETE);
// 確認画面
$crawler = $this->scenarioConfirm($client);
$hookpoins = array_merge($hookpoins, array(EccubeEvents::FRONT_SHOPPING_INDEX_INITIALIZE, EccubeEvents::FRONT_SHOPPING_SHIPPING_CHANGE_INITIALIZE, EccubeEvents::FRONT_SHOPPING_SHIPPING_EDIT_INITIALIZE));
// お届け先の設定
$shipping_url = $crawler->filter('a.btn-shipping')->attr('href');
$crawler = $this->scenarioComplete($client, $shipping_url);
// お届け先一覧
$shipping_url = str_replace('shipping_change', 'shipping', $shipping_url);
$crawler = $client->request('GET', $shipping_url);
$this->assertTrue($client->getResponse()->isSuccessful());
$shipping_edit_url = $crawler->filter('a.btn-default')->attr('href');
// お届け先入力画面
$crawler = $client->request('GET', $shipping_edit_url);
$this->assertTrue($client->getResponse()->isSuccessful());
$hookpoins = array_merge($hookpoins, array(EccubeEvents::FRONT_SHOPPING_SHIPPING_EDIT_INITIALIZE));
// お届け先設定画面へ遷移し POST 送信
$formData = $this->createShippingFormData();
$formData['tel'] = array('tel01' => 222, 'tel02' => 222, 'tel03' => 222);
$formData['fax'] = array('fax01' => 111, 'fax02' => 111, 'fax03' => 111);
$crawler = $client->request('POST', $shipping_edit_url, array('shopping_shipping' => $formData));
$this->assertTrue($client->getResponse()->isRedirect($this->app->url('shopping')));
$hookpoins = array_merge($hookpoins, array(EccubeEvents::FRONT_SHOPPING_SHIPPING_EDIT_COMPLETE));
// ご注文完了
$this->scenarioComplete($client, $this->app->path('shopping_confirm'));
$hookpoins = array_merge($hookpoins, array(EccubeEvents::FRONT_SHOPPING_CONFIRM_INITIALIZE, EccubeEvents::SERVICE_SHOPPING_ORDER_STATUS, EccubeEvents::FRONT_SHOPPING_CONFIRM_PROCESSING, EccubeEvents::MAIL_ORDER, EccubeEvents::FRONT_SHOPPING_CONFIRM_COMPLETE));
$this->verifyOutputString($hookpoins);
}