X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=web%2Fmodules%2Fcontrib%2Fmetatag%2Fsrc%2FTests%2FMetatagAdminTest.php;h=3072b62e0a15df27deec1f8d3aae7ca83335a5df;hp=fe662796b1f4988ba52d3cfa2fbc0c4706d9d9c8;hb=059867c3f96750652c80f39e44c442a58c2549ee;hpb=f8fc16ae6b862bef59baaad5d051dd37b7ff11b2 diff --git a/web/modules/contrib/metatag/src/Tests/MetatagAdminTest.php b/web/modules/contrib/metatag/src/Tests/MetatagAdminTest.php index fe662796b..3072b62e0 100644 --- a/web/modules/contrib/metatag/src/Tests/MetatagAdminTest.php +++ b/web/modules/contrib/metatag/src/Tests/MetatagAdminTest.php @@ -3,7 +3,9 @@ namespace Drupal\metatag\Tests; use Drupal\metatag\MetatagManager; +use Drupal\metatag\Entity\MetatagDefaults; use Drupal\simpletest\WebTestBase; +use Drupal\Tests\metatag\Functional\MetatagHelperTrait; /** * Tests the Metatag administration. @@ -12,6 +14,8 @@ use Drupal\simpletest\WebTestBase; */ class MetatagAdminTest extends WebTestBase { + use MetatagHelperTrait; + /** * {@inheritdoc} */ @@ -441,4 +445,53 @@ class MetatagAdminTest extends WebTestBase { $this->assertLink('Delete'); } + /** + * Test that metatag list page pager works as expected. + */ + public function testListPager() { + $this->loginUser1(); + + $this->drupalGet('admin/config/search/metatag'); + $this->assertLinkByHref('/admin/config/search/metatag/global'); + $this->assertLinkByHref('/admin/config/search/metatag/front'); + $this->assertLinkByHref('/admin/config/search/metatag/403'); + $this->assertLinkByHref('/admin/config/search/metatag/404'); + $this->assertLinkByHref('/admin/config/search/metatag/node'); + $this->assertLinkByHref('/admin/config/search/metatag/taxonomy_term'); + $this->assertLinkByHref('/admin/config/search/metatag/user'); + + // Create 50 vocabularies and generate metatag defaults for all of them. + for ($i = 0; $i < 50; $i++) { + $vocabulary = $this->createVocabulary(); + MetatagDefaults::create([ + 'id' => 'taxonomy_term__' . $vocabulary->id(), + 'label' => 'Taxonomy term: ' . $vocabulary->label(), + ])->save(); + } + + // Reload the page. + $this->drupalGet('admin/config/search/metatag'); + $this->assertLinkByHref('/admin/config/search/metatag/global'); + $this->assertLinkByHref('/admin/config/search/metatag/front'); + $this->assertLinkByHref('/admin/config/search/metatag/403'); + $this->assertLinkByHref('/admin/config/search/metatag/404'); + $this->assertLinkByHref('/admin/config/search/metatag/node'); + $this->assertLinkByHref('/admin/config/search/metatag/taxonomy_term'); + // User entity not visible because it has been pushed to the next page. + $this->assertNoLinkByHref('/admin/config/search/metatag/user'); + $this->clickLinkPartialName('Next'); + + // Go to next page and confirm that parents are loaded and user us present. + $this->assertLinkByHref('/admin/config/search/metatag/global'); + $this->assertLinkByHref('/admin/config/search/metatag/taxonomy_term'); + // Main links not visible in the 2nd page. + $this->assertNoLinkByHref('/admin/config/search/metatag/front'); + $this->assertNoLinkByHref('/admin/config/search/metatag/403'); + $this->assertNoLinkByHref('/admin/config/search/metatag/404'); + $this->assertNoLinkByHref('/admin/config/search/metatag/node'); + // User is present because was pushed to page 2. + $this->assertLinkByHref('/admin/config/search/metatag/user'); + + } + }