Skip to content

Commit

Permalink
GraphQL-432: Test coverage: 'reversed quote id to masked cart id'
Browse files Browse the repository at this point in the history
  • Loading branch information
naydav committed Mar 13, 2019
1 parent 8c6e649 commit 7257401
Show file tree
Hide file tree
Showing 13 changed files with 154 additions and 197 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,8 @@

namespace Magento\GraphQl\Quote\Customer;

use Magento\GraphQl\Quote\GetMaskedQuoteIdByReservedOrderId;
use Magento\Integration\Api\CustomerTokenServiceInterface;
use Magento\Quote\Model\QuoteFactory;
use Magento\Quote\Model\QuoteIdToMaskedQuoteIdInterface;
use Magento\Quote\Model\ResourceModel\Quote as QuoteResource;
use Magento\TestFramework\Helper\Bootstrap;
use Magento\TestFramework\TestCase\GraphQlAbstract;

Expand All @@ -25,29 +23,17 @@ class GetAvailablePaymentMethodsTest extends GraphQlAbstract
private $customerTokenService;

/**
* @var QuoteResource
* @var GetMaskedQuoteIdByReservedOrderId
*/
private $quoteResource;

/**
* @var QuoteFactory
*/
private $quoteFactory;

/**
* @var QuoteIdToMaskedQuoteIdInterface
*/
private $quoteIdToMaskedId;
private $getMaskedQuoteIdByReservedOrderId;

/**
* @inheritdoc
*/
protected function setUp()
{
$objectManager = Bootstrap::getObjectManager();
$this->quoteResource = $objectManager->get(QuoteResource::class);
$this->quoteFactory = $objectManager->get(QuoteFactory::class);
$this->quoteIdToMaskedId = $objectManager->get(QuoteIdToMaskedQuoteIdInterface::class);
$this->getMaskedQuoteIdByReservedOrderId = $objectManager->get(GetMaskedQuoteIdByReservedOrderId::class);
$this->customerTokenService = $objectManager->get(CustomerTokenServiceInterface::class);
}

Expand All @@ -56,7 +42,7 @@ protected function setUp()
*/
public function testGetCartWithPaymentMethods()
{
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId('test_order_item_with_items');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute('test_order_item_with_items');
$query = $this->getQuery($maskedQuoteId);
$response = $this->graphQlQuery($query, [], '', $this->getHeaderMap());

Expand All @@ -76,7 +62,7 @@ public function testGetCartWithPaymentMethods()
*/
public function testGetPaymentMethodsFromGuestCart()
{
$guestQuoteMaskedId = $this->getMaskedQuoteIdByReservedOrderId(
$guestQuoteMaskedId = $this->getMaskedQuoteIdByReservedOrderId->execute(
'test_order_with_virtual_product_without_address'
);
$query = $this->getQuery($guestQuoteMaskedId);
Expand All @@ -93,7 +79,7 @@ public function testGetPaymentMethodsFromGuestCart()
*/
public function testGetPaymentMethodsFromAnotherCustomerCart()
{
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId('test_order_item_with_items');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute('test_order_item_with_items');
$query = $this->getQuery($maskedQuoteId);

$this->expectExceptionMessage(
Expand All @@ -108,7 +94,7 @@ public function testGetPaymentMethodsFromAnotherCustomerCart()
*/
public function testGetPaymentMethodsIfPaymentsAreNotSet()
{
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId('test_order_item_with_items');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute('test_order_item_with_items');
$query = $this->getQuery($maskedQuoteId);
$response = $this->graphQlQuery($query, [], '', $this->getHeaderMap());

Expand Down Expand Up @@ -158,16 +144,4 @@ private function getHeaderMap(string $username = '[email protected]', string
$headerMap = ['Authorization' => 'Bearer ' . $customerToken];
return $headerMap;
}

/**
* @param string $reservedOrderId
* @return string
*/
private function getMaskedQuoteIdByReservedOrderId(string $reservedOrderId): string
{
$quote = $this->quoteFactory->create();
$this->quoteResource->load($quote, $reservedOrderId, 'reserved_order_id');

return $this->quoteIdToMaskedId->execute((int)$quote->getId());
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@

namespace Magento\GraphQl\Quote\Customer;

use Magento\GraphQl\Quote\GetMaskedQuoteIdByReservedOrderId;
use Magento\Integration\Api\CustomerTokenServiceInterface;
use Magento\Quote\Model\QuoteFactory;
use Magento\Quote\Model\QuoteIdToMaskedQuoteIdInterface;
Expand All @@ -19,6 +20,11 @@
*/
class GetCartTest extends GraphQlAbstract
{
/**
* @var GetMaskedQuoteIdByReservedOrderId
*/
private $getMaskedQuoteIdByReservedOrderId;

/**
* @var QuoteResource
*/
Expand All @@ -42,6 +48,7 @@ class GetCartTest extends GraphQlAbstract
protected function setUp()
{
$objectManager = Bootstrap::getObjectManager();
$this->getMaskedQuoteIdByReservedOrderId = $objectManager->get(GetMaskedQuoteIdByReservedOrderId::class);
$this->quoteResource = $objectManager->get(QuoteResource::class);
$this->quoteFactory = $objectManager->get(QuoteFactory::class);
$this->quoteIdToMaskedId = $objectManager->get(QuoteIdToMaskedQuoteIdInterface::class);
Expand All @@ -53,7 +60,7 @@ protected function setUp()
*/
public function testGetCart()
{
$maskedQuoteId = $this->getMaskedQuoteIdByReversedQuoteId('test_order_item_with_items');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute('test_order_item_with_items');
$query = $this->getCartQuery($maskedQuoteId);

$response = $this->graphQlQuery($query, [], '', $this->getHeaderMap());
Expand All @@ -77,7 +84,9 @@ public function testGetCart()
*/
public function testGetGuestCart()
{
$maskedQuoteId = $this->getMaskedQuoteIdByReversedQuoteId('test_order_with_simple_product_without_address');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute(
'test_order_with_simple_product_without_address'
);
$query = $this->getCartQuery($maskedQuoteId);

$this->expectExceptionMessage(
Expand All @@ -92,7 +101,7 @@ public function testGetGuestCart()
*/
public function testGetAnotherCustomerCart()
{
$maskedQuoteId = $this->getMaskedQuoteIdByReversedQuoteId('test_order_item_with_items');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute('test_order_item_with_items');
$query = $this->getCartQuery($maskedQuoteId);

$this->expectExceptionMessage(
Expand Down Expand Up @@ -156,18 +165,6 @@ private function getCartQuery(
QUERY;
}

/**
* @param string $reversedQuoteId
* @return string
*/
private function getMaskedQuoteIdByReversedQuoteId(string $reversedQuoteId): string
{
$quote = $this->quoteFactory->create();
$this->quoteResource->load($quote, $reversedQuoteId, 'reserved_order_id');

return $this->quoteIdToMaskedId->execute((int)$quote->getId());
}

/**
* @param string $username
* @param string $password
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,8 @@

namespace Magento\GraphQl\Quote\Customer;

use Magento\GraphQl\Quote\GetMaskedQuoteIdByReservedOrderId;
use Magento\Integration\Api\CustomerTokenServiceInterface;
use Magento\QuoteGraphQl\Model\GetMaskedQuoteIdByReversedQuoteId;
use Magento\Quote\Model\QuoteFactory;
use Magento\Quote\Model\QuoteIdToMaskedQuoteIdInterface;
use Magento\Quote\Model\ResourceModel\Quote as QuoteResource;
Expand All @@ -21,9 +21,9 @@
class SetBillingAddressOnCartTest extends GraphQlAbstract
{
/**
* @var GetMaskedQuoteIdByReversedQuoteId
* @var GetMaskedQuoteIdByReservedOrderId
*/
private $getMaskedQuoteIdByReversedQuoteId;
private $getMaskedQuoteIdByReservedOrderId;

/**
* @var QuoteResource
Expand All @@ -48,7 +48,7 @@ class SetBillingAddressOnCartTest extends GraphQlAbstract
protected function setUp()
{
$objectManager = Bootstrap::getObjectManager();
$this->getMaskedQuoteIdByReversedQuoteId = $objectManager->get(GetMaskedQuoteIdByReversedQuoteId::class);
$this->getMaskedQuoteIdByReservedOrderId = $objectManager->get(GetMaskedQuoteIdByReservedOrderId::class);
$this->quoteResource = $objectManager->get(QuoteResource::class);
$this->quoteFactory = $objectManager->get(QuoteFactory::class);
$this->quoteIdToMaskedId = $objectManager->get(QuoteIdToMaskedQuoteIdInterface::class);
Expand Down Expand Up @@ -314,12 +314,12 @@ public function testSetNewBillingAddressAndFromAddressBookAtSameTime()
* @magentoApiDataFixture Magento/Customer/_files/customer.php
* @magentoApiDataFixture Magento/Customer/_files/customer_address.php
* @magentoApiDataFixture Magento/Checkout/_files/quote_with_simple_product_saved.php
* @throws \Exception
* @throws \Magento\Framework\Exception\NoSuchEntityException
*/
public function testSetBillingAddressToGuestCart()
{
$maskedQuoteId = $this->getMaskedQuoteIdByReversedQuoteId->execute('test_order_with_simple_product_without_address');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute(
'test_order_with_simple_product_without_address'
);

$query = <<<QUERY
mutation {
Expand Down Expand Up @@ -489,16 +489,16 @@ private function getHeaderMap(string $username = '[email protected]', string
}

/**
* @param string $reversedQuoteId
* @param string $reversedOrderId
* @param int $customerId
* @return string
*/
private function assignQuoteToCustomer(
string $reversedQuoteId = 'test_order_with_simple_product_without_address',
string $reversedOrderId = 'test_order_with_simple_product_without_address',
int $customerId = 1
): string {
$quote = $this->quoteFactory->create();
$this->quoteResource->load($quote, $reversedQuoteId, 'reserved_order_id');
$this->quoteResource->load($quote, $reversedOrderId, 'reserved_order_id');
$quote->setCustomerId($customerId);
$this->quoteResource->save($quote);
return $this->quoteIdToMaskedId->execute((int)$quote->getId());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@

namespace Magento\GraphQl\Quote\Customer;

use Magento\GraphQl\Quote\GetMaskedQuoteIdByReservedOrderId;
use Magento\Integration\Api\CustomerTokenServiceInterface;
use Magento\OfflinePayments\Model\Checkmo;
use Magento\QuoteGraphQl\Model\GetMaskedQuoteIdByReversedQuoteId;
use Magento\Quote\Model\QuoteFactory;
use Magento\Quote\Model\QuoteIdToMaskedQuoteIdInterface;
use Magento\Quote\Model\ResourceModel\Quote as QuoteResource;
Expand All @@ -22,14 +22,14 @@
class SetPaymentMethodOnCartTest extends GraphQlAbstract
{
/**
* @var CustomerTokenServiceInterface
* @var GetMaskedQuoteIdByReservedOrderId
*/
private $customerTokenService;
private $getMaskedQuoteIdByReservedOrderId;

/**
* @var GetMaskedQuoteIdByReversedQuoteId
* @var CustomerTokenServiceInterface
*/
private $getMaskedQuoteIdByReversedQuoteId;
private $customerTokenService;

/**
* @var QuoteResource
Expand All @@ -52,7 +52,7 @@ class SetPaymentMethodOnCartTest extends GraphQlAbstract
protected function setUp()
{
$objectManager = Bootstrap::getObjectManager();
$this->getMaskedQuoteIdByReversedQuoteId = $objectManager->get(GetMaskedQuoteIdByReversedQuoteId::class);
$this->getMaskedQuoteIdByReservedOrderId = $objectManager->get(GetMaskedQuoteIdByReservedOrderId::class);
$this->quoteResource = $objectManager->get(QuoteResource::class);
$this->quoteFactory = $objectManager->get(QuoteFactory::class);
$this->quoteIdToMaskedId = $objectManager->get(QuoteIdToMaskedQuoteIdInterface::class);
Expand All @@ -61,13 +61,11 @@ protected function setUp()

/**
* @magentoApiDataFixture Magento/Checkout/_files/quote_with_virtual_product_and_address.php
* @throws \Exception
* @throws \Magento\Framework\Exception\NoSuchEntityException
*/
public function testSetPaymentWithVirtualProduct()
{
$methodCode = Checkmo::PAYMENT_METHOD_CHECKMO_CODE;
$maskedQuoteId = $this->getMaskedQuoteIdByReversedQuoteId->execute('test_order_with_virtual_product');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute('test_order_with_virtual_product');

$query = $this->prepareMutationQuery($maskedQuoteId, $methodCode);
$response = $this->graphQlQuery($query, [], '', $this->getHeaderMap());
Expand All @@ -80,13 +78,11 @@ public function testSetPaymentWithVirtualProduct()

/**
* @magentoApiDataFixture Magento/Checkout/_files/quote_with_address_saved.php
* @throws \Exception
* @throws \Magento\Framework\Exception\NoSuchEntityException
*/
public function testSetPaymentWithSimpleProduct()
{
$methodCode = Checkmo::PAYMENT_METHOD_CHECKMO_CODE;
$maskedQuoteId = $this->getMaskedQuoteIdByReversedQuoteId->execute('test_order_1');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute('test_order_1');

$query = $this->prepareMutationQuery($maskedQuoteId, $methodCode);
$response = $this->graphQlQuery($query, [], '', $this->getHeaderMap());
Expand Down Expand Up @@ -120,7 +116,7 @@ public function testSetPaymentWithSimpleProductWithoutAddress()
public function testSetNonExistingPaymentMethod()
{
$methodCode = 'noway';
$maskedQuoteId = $this->getMaskedQuoteIdByReversedQuoteId->execute('test_order_1');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute('test_order_1');

$query = $this->prepareMutationQuery($maskedQuoteId, $methodCode);
$this->graphQlQuery($query, [], '', $this->getHeaderMap());
Expand All @@ -129,13 +125,13 @@ public function testSetNonExistingPaymentMethod()
/**
* @magentoApiDataFixture Magento/Customer/_files/customer.php
* @magentoApiDataFixture Magento/Checkout/_files/quote_with_simple_product_saved.php
* @throws \Exception
* @throws \Magento\Framework\Exception\NoSuchEntityException
*/
public function testSetPaymentMethodToGuestCart()
{
$methodCode = Checkmo::PAYMENT_METHOD_CHECKMO_CODE;
$maskedQuoteId = $this->getMaskedQuoteIdByReversedQuoteId->execute('test_order_with_simple_product_without_address');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute(
'test_order_with_simple_product_without_address'
);

$query = $this->prepareMutationQuery($maskedQuoteId, $methodCode);

Expand All @@ -149,13 +145,11 @@ public function testSetPaymentMethodToGuestCart()
/**
* @magentoApiDataFixture Magento/Customer/_files/three_customers.php
* @magentoApiDataFixture Magento/Checkout/_files/quote_with_address_saved.php
* @throws \Exception
* @throws \Magento\Framework\Exception\NoSuchEntityException
*/
public function testSetPaymentMethodToAnotherCustomerCart()
{
$methodCode = Checkmo::PAYMENT_METHOD_CHECKMO_CODE;
$maskedQuoteId = $this->getMaskedQuoteIdByReversedQuoteId->execute('test_order_1');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute('test_order_1');

$query = $this->prepareMutationQuery($maskedQuoteId, $methodCode);

Expand Down Expand Up @@ -192,7 +186,7 @@ public function testPaymentMethodOnNonExistentCart()
public function testReSetPayment()
{
/** @var \Magento\Quote\Model\Quote $quote */
$maskedQuoteId = $this->getMaskedQuoteIdByReversedQuoteId('test_order_1_with_payment');
$maskedQuoteId = $this->getMaskedQuoteIdByReservedOrderId->execute('test_order_1_with_payment');
$methodCode = Checkmo::PAYMENT_METHOD_CHECKMO_CODE;
$query = $this->prepareMutationQuery($maskedQuoteId, $methodCode);
$response = $this->graphQlQuery($query, [], '', $this->getHeaderMap());
Expand Down Expand Up @@ -231,16 +225,16 @@ private function prepareMutationQuery(
}

/**
* @param string $reversedQuoteId
* @param string $reversedOrderId
* @param int $customerId
* @return string
*/
private function assignQuoteToCustomer(
string $reversedQuoteId,
string $reversedOrderId,
int $customerId
): string {
$quote = $this->quoteFactory->create();
$this->quoteResource->load($quote, $reversedQuoteId, 'reserved_order_id');
$this->quoteResource->load($quote, $reversedOrderId, 'reserved_order_id');
$quote->setCustomerId($customerId);
$this->quoteResource->save($quote);
return $this->quoteIdToMaskedId->execute((int)$quote->getId());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -513,16 +513,16 @@ private function getHeaderMap(string $username = '[email protected]', string
}

/**
* @param string $reversedQuoteId
* @param string $reversedOrderId
* @param int $customerId
* @return string
*/
private function assignQuoteToCustomer(
string $reversedQuoteId = 'test_order_with_simple_product_without_address',
string $reversedOrderId = 'test_order_with_simple_product_without_address',
int $customerId = 1
): string {
$quote = $this->quoteFactory->create();
$this->quoteResource->load($quote, $reversedQuoteId, 'reserved_order_id');
$this->quoteResource->load($quote, $reversedOrderId, 'reserved_order_id');
$quote->setCustomerId($customerId);
$this->quoteResource->save($quote);
return $this->quoteIdToMaskedId->execute((int)$quote->getId());
Expand Down
Loading

0 comments on commit 7257401

Please sign in to comment.