get(GetPageByIdentifier::class)->execute('page100', 0); $pageId = $cmsPage->getPageId(); $cmsPageData = $cmsPage->getData(); $query = <<graphQlQuery($query); $this->assertEquals($cmsPageData['identifier'], $response['cmsPage']['url_key']); $this->assertEquals($cmsPageData['title'], $response['cmsPage']['title']); $this->assertEquals($cmsPageData['content'], $response['cmsPage']['content']); $this->assertEquals($cmsPageData['content_heading'], $response['cmsPage']['content_heading']); $this->assertEquals($cmsPageData['page_layout'], $response['cmsPage']['page_layout']); $this->assertEquals($cmsPageData['meta_title'], $response['cmsPage']['meta_title']); $this->assertEquals($cmsPageData['meta_description'], $response['cmsPage']['meta_description']); $this->assertEquals($cmsPageData['meta_keywords'], $response['cmsPage']['meta_keywords']); } /** * Verify the message when page_id is not specified. */ public function testGetCmsPageWithoutId() { $query = <<expectException(\Exception::class); $this->expectExceptionMessage('Page id should be specified'); $this->graphQlQuery($query); } /** * Verify the message when page_id does not exist. */ public function testGetCmsPageByNonExistentId() { $query = <<expectException(\Exception::class); $this->expectExceptionMessage('The CMS page with the "0" ID doesn\'t exist.'); $this->graphQlQuery($query); } /** * Verify the message when CMS Page selected by page_id is disabled * * @magentoApiDataFixture Magento/Cms/_files/noroute.php */ public function testGetDisabledCmsPageById() { $cmsPageId = ObjectManager::getInstance()->get(GetPageByIdentifier::class)->execute('no-route', 0)->getPageId(); $query = <<expectException(\Exception::class); $this->expectExceptionMessage('No such entity.'); $this->graphQlQuery($query); } }