diff --git a/tests/fixtures/themes/test/pages/blog-category.htm b/tests/fixtures/themes/test/pages/blog-category.htm new file mode 100644 index 000000000..0f9389013 --- /dev/null +++ b/tests/fixtures/themes/test/pages/blog-category.htm @@ -0,0 +1,4 @@ +url = "/blog/category-page/:category_name?*" +== +

Blog category

+

This is a blog category page

\ No newline at end of file diff --git a/tests/unit/cms/classes/CmsObjectQueryTest.php b/tests/unit/cms/classes/CmsObjectQueryTest.php index 2e6fbf3f0..d43092332 100644 --- a/tests/unit/cms/classes/CmsObjectQueryTest.php +++ b/tests/unit/cms/classes/CmsObjectQueryTest.php @@ -63,6 +63,7 @@ class CmsObjectQueryTest extends TestCase "authors", "b/b-page", "blog-archive", + "blog-category", "blog-post", "code-namespaces", "code-namespaces-aliases", diff --git a/tests/unit/cms/classes/RouterTest.php b/tests/unit/cms/classes/RouterTest.php index eddc51a62..db378394e 100644 --- a/tests/unit/cms/classes/RouterTest.php +++ b/tests/unit/cms/classes/RouterTest.php @@ -143,6 +143,26 @@ class RouterTest extends TestCase $this->assertNotEmpty($page); $this->assertEquals('blog-archive.htm', $page->getFileName()); $this->assertCount(1, $parameters); + + $page = $router->findByUrl('blog/category-page'); + $parameters = $router->getParameters(); + $this->assertNotEmpty($page); + $this->assertEquals('blog-category.htm', $page->getFileName()); + $this->assertCount(1, $parameters); + $this->assertEquals(array_keys($parameters)[0], 'category_name'); + $this->assertEmpty($parameters[array_keys($parameters)[0]]); + + $page = $router->findByUrl('blog/category-page/categoryName'); + $parameters = $router->getParameters(); + $this->assertNotEmpty($page); + $this->assertEquals('blog-category.htm', $page->getFileName()); + $this->assertCount(1, $parameters); + + $page = $router->findByUrl('blog/category-page/categoryName/subCategoryName'); + $parameters = $router->getParameters(); + $this->assertNotEmpty($page); + $this->assertEquals('blog-category.htm', $page->getFileName()); + $this->assertCount(1, $parameters); } public function testFindPageFromSubdirectory()