public function testCompleteWithNonmember()
{
$faker = $this->getFaker();
$client = $this->createClient();
$this->scenarioCartIn($client);
$hookpoins = array(EccubeEvents::FRONT_CART_ADD_INITIALIZE, EccubeEvents::FRONT_CART_ADD_COMPLETE);
$formData = $this->createNonmemberFormData();
$this->scenarioInput($client, $formData);
$hookpoins = array_merge($hookpoins, array(EccubeEvents::FRONT_SHOPPING_NONMEMBER_INITIALIZE, EccubeEvents::FRONT_SHOPPING_NONMEMBER_COMPLETE));
$crawler = $this->scenarioConfirm($client);
$hookpoins = array_merge($hookpoins, array(EccubeEvents::FRONT_SHOPPING_INDEX_INITIALIZE));
$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->assertTrue($client->getResponse()->isRedirect($this->app->url('shopping_complete')));
$this->verifyOutputString($hookpoins);
}