Skip to content

Commit c4c7cc5

Browse files
committed
PWA-1558: Include test coverages from the deprecated url resolver
- add test coverage from deprecated query
1 parent 32385cd commit c4c7cc5

File tree

2 files changed

+34
-8
lines changed

2 files changed

+34
-8
lines changed

dev/tests/api-functional/testsuite/Magento/GraphQl/CatalogUrlRewrite/RouteTest.php

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88
namespace Magento\GraphQl\CatalogUrlRewrite;
99

1010
use Magento\Catalog\Api\ProductRepositoryInterface;
11+
use Magento\Framework\GraphQl\Exception\GraphQlInputException;
12+
use Magento\Framework\GraphQl\Query\Uid;
1113
use Magento\TestFramework\Helper\Bootstrap;
1214
use Magento\TestFramework\ObjectManager;
1315
use Magento\TestFramework\TestCase\GraphQlAbstract;
@@ -22,12 +24,16 @@ class RouteTest extends GraphQlAbstract
2224
/** @var ObjectManager */
2325
private $objectManager;
2426

27+
/** @var Uid */
28+
private $idDecoder;
29+
2530
/**
2631
* {@inheritdoc}
2732
*/
2833
protected function setUp(): void
2934
{
3035
$this->objectManager = Bootstrap::getObjectManager();
36+
$this->idDecoder = $this->objectManager->get(Uid::class);
3137
}
3238

3339
/**
@@ -115,7 +121,7 @@ public function testProductUrlWithNonSeoFriendlyUrlInput()
115121
'store_id' => $storeId
116122
]
117123
);
118-
// even of non seo friendly path requested, the seo friendly path should be preferred
124+
// even if non seo friendly path requested, the seo friendly path should be preferred
119125
$relativePath = $actualUrls->getRequestPath();
120126
$expectedType = $actualUrls->getEntityType();
121127
$nonSeoFriendlyPath = $actualUrls->getTargetPath();
@@ -481,6 +487,7 @@ public function testProductUrlResolverWithEmptyUrlSuffix()
481487
* @param string $relativePath
482488
* @param string $expectedType
483489
* @param int $redirectCode
490+
* @throws GraphQlInputException
484491
*/
485492
private function queryUrlAndAssertResponse(
486493
int $productId,
@@ -494,14 +501,25 @@ private function queryUrlAndAssertResponse(
494501
{
495502
route(url:"{$urlKey}")
496503
{
497-
relative_url
498-
type
499-
redirect_code
500-
}
504+
relative_url
505+
type
506+
redirect_code
507+
__typename
508+
...on SimpleProduct {
509+
uid
510+
}
511+
...on ConfigurableProduct {
512+
uid
513+
}
514+
...on CategoryTree {
515+
uid
516+
}
517+
}
501518
}
502519
QUERY;
503520
$response = $this->graphQlQuery($query);
504521
$this->assertArrayHasKey('route', $response);
522+
$this->assertEquals($productId, $this->idDecoder->decode($response['route']['uid']));
505523
$this->assertEquals($relativePath, $response['route']['relative_url']);
506524
$this->assertEquals(strtoupper($expectedType), $response['route']['type']);
507525
$this->assertEquals($redirectCode, $response['route']['redirect_code']);

dev/tests/api-functional/testsuite/Magento/GraphQl/CmsUrlRewrite/RouteTest.php

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,13 +52,15 @@ public function testCMSPageUrlResolver()
5252
$this->assertEquals($requestPath, $response['route']['relative_url']);
5353
$this->assertEquals(strtoupper(str_replace('-', '_', $expectedEntityType)), $response['route']['type']);
5454
$this->assertEquals(0, $response['route']['redirect_code']);
55+
$this->assertEquals($page->getIdentifier(), $response['route']['identifier']);
5556

5657
// querying by non seo friendly url path should return seo friendly relative url
5758
$query = $this->createQuery($targetPath);
5859
$response = $this->graphQlQuery($query);
5960
$this->assertEquals($requestPath, $response['route']['relative_url']);
6061
$this->assertEquals(strtoupper(str_replace('-', '_', $expectedEntityType)), $response['route']['type']);
6162
$this->assertEquals(0, $response['route']['redirect_code']);
63+
$this->assertEquals($page->getIdentifier(), $response['route']['identifier']);
6264
}
6365

6466
/**
@@ -75,6 +77,7 @@ public function testResolveCMSPageWithQueryParameters()
7577
$response = $this->graphQlQuery($query);
7678
$this->assertNotEmpty($response['route']);
7779
$this->assertEquals($requestPath, $response['route']['relative_url']);
80+
$this->assertEquals($page->getIdentifier(), $response['route']['identifier']);
7881
}
7982

8083
/**
@@ -97,6 +100,7 @@ public function testResolveSlash()
97100
$this->assertEquals($homePageIdentifier, $response['route']['relative_url']);
98101
$this->assertEquals('CMS_PAGE', $response['route']['type']);
99102
$this->assertEquals(0, $response['route']['redirect_code']);
103+
$this->assertEquals($page->getIdentifier(), $response['route']['identifier']);
100104
}
101105

102106
/**
@@ -109,9 +113,13 @@ private function createQuery(string $path): string
109113
{
110114
route(url:"{$path}")
111115
{
112-
relative_url
113-
type
114-
redirect_code
116+
relative_url
117+
type
118+
redirect_code
119+
__typename
120+
...on CmsPage {
121+
identifier
122+
}
115123
}
116124
}
117125
QUERY;

0 commit comments

Comments
 (0)