Skip to content

Commit f63475c

Browse files
committed
UrlRewrite module fixes
update fixture update integration test
1 parent 19b7bda commit f63475c

File tree

3 files changed

+73
-3
lines changed

3 files changed

+73
-3
lines changed

dev/tests/integration/testsuite/Magento/UrlRewrite/Controller/UrlRewriteTest.php

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,36 @@ public function requestDataProvider(): array
8080
'request' => '/page-similar/',
8181
'redirect' => '/page-b',
8282
],
83+
'Use Case #7: Rewrite: page-similar --(301)--> page-a; '
84+
. 'Request: page-similar?param=1 --(301)--> page-a?param=1' => [
85+
'request' => '/page-similar?param=1',
86+
'redirect' => '/page-a?param=1',
87+
],
88+
'Use Case #8: Rewrite: page-similar/ --(301)--> page-b; '
89+
. 'Request: page-similar/?param=1 --(301)--> page-b?param=1' => [
90+
'request' => '/page-similar/?param=1',
91+
'redirect' => '/page-b?param=1',
92+
],
93+
'Use Case #9: Rewrite: page-similar-query-param --(301)--> page-d?param1=1;'
94+
. 'Request: page-similar-query-param --(301)--> page-d?param1=1' => [
95+
'request' => '/page-similar-query-param',
96+
'redirect' => '/page-d?param1=1',
97+
],
98+
'Use Case #10: Rewrite: page-similar-query-param --(301)--> page-d?param1=1; '
99+
. 'Request: page-similar-query-param?param2=1 --(301)--> page-d?param1=1&param2=1' => [
100+
'request' => '/page-similar-query-param?param2=1',
101+
'redirect' => '/page-d?param1=1&param2=1',
102+
],
103+
'Use Case #11: Rewrite: page-similar-query-param/ --(301)--> page-e?param1=1; '
104+
. 'Request: page-similar-query-param/ --(301)--> page-e?param1=1' => [
105+
'request' => '/page-similar-query-param/',
106+
'redirect' => '/page-e?param1=1',
107+
],
108+
'Use Case #12: Rewrite: page-similar-query-param/ --(301)--> page-e?param1=1;'
109+
. 'Request: page-similar-query-param/?param2=1 --(301)--> page-e?param1=1&param2=1' => [
110+
'request' => '/page-similar-query-param/?param2=1',
111+
'redirect' => '/page-e?param1=1&param2=1',
112+
],
83113
];
84114
}
85115
}

dev/tests/integration/testsuite/Magento/UrlRewrite/_files/url_rewrite.php

Lines changed: 40 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,26 @@
6464
->setStores([$storeID, $secondStoreId]);
6565
$pageResource->save($page);
6666

67+
$page = $objectManager->create(Page::class);
68+
$page->setTitle('Cms D')
69+
->setIdentifier('page-d')
70+
->setIsActive(1)
71+
->setContent('<h1>Cms Page D</h1>')
72+
->setPageLayout('1column')
73+
->setCustomTheme('Magento/blank')
74+
->setStores([$storeID, $secondStoreId]);
75+
$pageResource->save($page);
76+
77+
$page = $objectManager->create(Page::class);
78+
$page->setTitle('Cms E')
79+
->setIdentifier('page-e')
80+
->setIsActive(1)
81+
->setContent('<h1>Cms Page E</h1>')
82+
->setPageLayout('1column')
83+
->setCustomTheme('Magento/blank')
84+
->setStores([$storeID, $secondStoreId]);
85+
$pageResource->save($page);
86+
6787
$rewrite = $objectManager->create(UrlRewrite::class);
6888
$rewrite->setEntityType('custom')
6989
->setRequestPath('page-one/')
@@ -88,7 +108,7 @@
88108
->setTargetPath('page-a')
89109
->setRedirectType(OptionProvider::PERMANENT)
90110
->setStoreId($storeID)
91-
->setDescription('From age-similar without trailing slash to page-a');
111+
->setDescription('From page-similar without trailing slash to page-a');
92112
$rewriteResource->save($rewrite);
93113

94114
$rewrite = $objectManager->create(UrlRewrite::class);
@@ -97,7 +117,7 @@
97117
->setTargetPath('page-b')
98118
->setRedirectType(OptionProvider::PERMANENT)
99119
->setStoreId($storeID)
100-
->setDescription('From age-similar with trailing slash to page-b');
120+
->setDescription('From page-similar with trailing slash to page-b');
101121
$rewriteResource->save($rewrite);
102122

103123
//Emulating auto-generated aliases (like the ones used for categories).
@@ -117,3 +137,21 @@
117137
->setRedirectType(0)
118138
->setStoreId($secondStoreId);
119139
$rewriteResource->save($rewrite);
140+
141+
$rewrite = $objectManager->create(UrlRewrite::class);
142+
$rewrite->setEntityType('custom')
143+
->setRequestPath('page-similar-query-param')
144+
->setTargetPath('page-d?param1=1')
145+
->setRedirectType(OptionProvider::PERMANENT)
146+
->setStoreId($storeID)
147+
->setDescription('From page-similar-query-param to page-d with query param');
148+
$rewriteResource->save($rewrite);
149+
150+
$rewrite = $objectManager->create(UrlRewrite::class);
151+
$rewrite->setEntityType('custom')
152+
->setRequestPath('page-similar-query-param/')
153+
->setTargetPath('page-e?param1=1')
154+
->setRedirectType(OptionProvider::PERMANENT)
155+
->setStoreId($storeID)
156+
->setDescription('From page-similar-query-param with trailing slash to page-e with query param');
157+
$rewriteResource->save($rewrite);

dev/tests/integration/testsuite/Magento/UrlRewrite/_files/url_rewrite_rollback.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,8 @@
1919
$pageRepository->deleteById('page-a');
2020
$pageRepository->deleteById('page-b');
2121
$pageRepository->deleteById('page-c');
22+
$pageRepository->deleteById('page-d');
23+
$pageRepository->deleteById('page-e');
2224

2325
/** @var \Magento\Catalog\Api\ProductRepositoryInterface $productRepository */
2426
$productRepository = \Magento\TestFramework\Helper\Bootstrap::getObjectManager()
@@ -29,7 +31,7 @@
2931
->create(\Magento\UrlRewrite\Model\ResourceModel\UrlRewriteCollection::class);
3032
$collection = $urlRewriteCollection
3133
->addFieldToFilter('entity_type', 'custom')
32-
->addFieldToFilter('target_path', ['page-a/', 'page-a', 'page-b', 'page-c'])
34+
->addFieldToFilter('target_path', ['page-a/', 'page-a', 'page-b', 'page-c', 'page-d?param1=1', 'page-e?param1=1'])
3335
->load()
3436
->walk('delete');
3537

0 commit comments

Comments
 (0)