public function testCompleteWithLogin()
{
$faker = $this->getFaker();
$Customer = $this->logIn();
$client = $this->client;
// カート画面
$this->scenarioCartIn($client);
// 確認画面
$crawler = $this->scenarioConfirm($client);
$this->expected = 'ご注文内容のご確認';
$this->actual = $crawler->filter('h1.page-heading')->text();
$this->verify();
// 完了画面
$crawler = $this->scenarioComplete($client, $this->app->path('shopping_confirm'));
$this->assertTrue($client->getResponse()->isRedirect($this->app->url('shopping_complete')));
$BaseInfo = $this->app['eccube.repository.base_info']->get();
$Messages = $this->getMailCatcherMessages();
$Message = $this->getMailCatcherMessage($Messages[0]->id);
$this->expected = '[' . $BaseInfo->getShopName() . '] ご注文ありがとうございます';
$this->actual = $Message->subject;
$this->verify();
// 生成された受注のチェック
$Order = $this->app['eccube.repository.order']->findOneBy(array('Customer' => $Customer));
$OrderNew = $this->app['eccube.repository.order_status']->find($this->app['config']['order_new']);
$this->expected = $OrderNew;
$this->actual = $Order->getOrderStatus();
$this->verify();
$this->expected = $Customer->getName01();
$this->actual = $Order->getName01();
$this->verify();
}