Eccube\Tests\Plugin\Web\ShoppingControllerTest::testShippingShippingPost PHP Метод

testShippingShippingPost() публичный Метод

購入確認画面→お届け先の設定→お届け先追加→購入完了
    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);
    }