magento2-docker/dev/tests/api-functional/testsuite/Magento/GraphQl/GetCustomerAuthenticationHe...

45 lines
1.2 KiB
PHP
Executable File

<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);
namespace Magento\GraphQl;
use Magento\Framework\Exception\AuthenticationException;
use Magento\Integration\Api\CustomerTokenServiceInterface;
/**
* Get authentication header for customer
*/
class GetCustomerAuthenticationHeader
{
/**
* @var CustomerTokenServiceInterface
*/
private $customerTokenService;
/**
* @param CustomerTokenServiceInterface $customerTokenService
*/
public function __construct(CustomerTokenServiceInterface $customerTokenService)
{
$this->customerTokenService = $customerTokenService;
}
/**
* Get header to perform customer authenticated request
*
* @param string $email
* @param string $password
* @return string[]
* @throws AuthenticationException
*/
public function execute(string $email = 'customer@example.com', string $password = 'password'): array
{
$customerToken = $this->customerTokenService->createCustomerAccessToken($email, $password);
return ['Authorization' => 'Bearer ' . $customerToken];
}
}