Aimeos\ShopBundle\Tests\Controller\CheckoutControllerTest::testStandardOrder PHP Method

testStandardOrder() public method

public testStandardOrder ( )
    public function testStandardOrder()
    {
        $client = static::createClient(array(), array('PHP_AUTH_USER' => 'UTC001', 'PHP_AUTH_PW' => 'unittest'));
        $crawler = $client->request('GET', '/unittest/de/EUR/list');
        $link = $crawler->filter('.catalog-list-items .product a:contains("Unittest: Bundle")')->link();
        $crawler = $client->click($link);
        $form = $crawler->filter('.catalog-detail .addbasket .btn-action')->form();
        $crawler = $client->submit($form);
        $link = $crawler->filter('.basket-standard .btn-action')->link();
        $crawler = $client->click($link);
        $form = $crawler->filter('.checkout-standard form')->form();
        $form['ca_billingoption']->select($crawler->filter('.checkout-standard-address .item-address input')->attr('value'));
        $crawler = $client->submit($form);
        $form = $crawler->filter('.checkout-standard form')->form();
        $form['c_deliveryoption']->select($crawler->filter('.checkout-standard-delivery .item-service input')->attr('value'));
        $crawler = $client->submit($form);
        $form = $crawler->filter('.checkout-standard form')->form();
        $payId = $crawler->filter('.checkout-standard-payment .item-service')->eq(1)->filter('input')->attr('value');
        $form['c_paymentoption']->select($payId);
        $form['c_payment[' . $payId . '][directdebit.accountowner]'] = 'test user';
        $form['c_payment[' . $payId . '][directdebit.accountno]'] = '12345';
        $form['c_payment[' . $payId . '][directdebit.bankcode]'] = '67890';
        $form['c_payment[' . $payId . '][directdebit.bankname]'] = 'test bank';
        $crawler = $client->submit($form);
        $this->assertEquals(1, $crawler->filter('.checkout-standard-summary')->count());
        // Test if T&C are not accepted
        $form = $crawler->filter('.checkout-standard .btn-action')->form();
        $crawler = $client->submit($form);
        $form = $crawler->filter('.checkout-standard .btn-action')->form();
        $form['cs_option_terms_value']->tick();
        $crawler = $client->submit($form);
        $form = $crawler->filter('.checkout-standard .btn-action')->form();
        $crawler = $client->submit($form);
        $this->assertEquals(1, $crawler->filter('.checkout-confirm')->count());
    }