diff --git a/core/modules/node/tests/src/Functional/NodeAdminTest.php b/core/modules/node/tests/src/Functional/NodeAdminTest.php index 4b0412cc9b5..c5719eb9a67 100644 --- a/core/modules/node/tests/src/Functional/NodeAdminTest.php +++ b/core/modules/node/tests/src/Functional/NodeAdminTest.php @@ -15,7 +15,7 @@ class NodeAdminTest extends NodeTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * A user with permission to bypass access content. @@ -104,8 +104,7 @@ class NodeAdminTest extends NodeTestBase { $this->drupalGet('admin/content'); foreach ($nodes_query as $delta => $string) { // Verify that the node was found in the correct order. - $this->assertSession()->elementExists('xpath', $this->assertSession()->buildXPathQuery('//table[contains(@class, :class)]/tbody/tr[' . ($delta + 1) . ']/td[2]/a[normalize-space(text())=:label]', [ - ':class' => 'views-table', + $this->assertSession()->elementExists('xpath', $this->assertSession()->buildXPathQuery('//table/tbody/tr[' . ($delta + 1) . ']/td[2]/a[normalize-space(text())=:label]', [ ':label' => $string, ])); } @@ -121,8 +120,7 @@ class NodeAdminTest extends NodeTestBase { $this->drupalGet('admin/content', ['query' => ['sort' => 'asc', 'order' => 'title']]); foreach ($nodes_query as $delta => $string) { // Verify that the node was found in the correct order. - $this->assertSession()->elementExists('xpath', $this->assertSession()->buildXPathQuery('//table[contains(@class, :class)]/tbody/tr[' . ($delta + 1) . ']/td[2]/a[normalize-space(text())=:label]', [ - ':class' => 'views-table', + $this->assertSession()->elementExists('xpath', $this->assertSession()->buildXPathQuery('//table/tbody/tr[' . ($delta + 1) . ']/td[2]/a[normalize-space(text())=:label]', [ ':label' => $string, ])); } diff --git a/core/modules/node/tests/src/Functional/NodeDisplayConfigurableTest.php b/core/modules/node/tests/src/Functional/NodeDisplayConfigurableTest.php index f44bc25168c..f80a5186613 100644 --- a/core/modules/node/tests/src/Functional/NodeDisplayConfigurableTest.php +++ b/core/modules/node/tests/src/Functional/NodeDisplayConfigurableTest.php @@ -23,7 +23,7 @@ class NodeDisplayConfigurableTest extends NodeTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * {@inheritdoc} @@ -167,6 +167,8 @@ class NodeDisplayConfigurableTest extends NodeTestBase { return [ ['bartik', 'header', TRUE], ['claro', 'footer', TRUE], + // @todo Remove Classy from data provider in + // https://www.drupal.org/project/drupal/issues/3110137. ['classy', 'footer', TRUE], // @todo Add coverage for olivero after fixing // https://www.drupal.org/project/drupal/issues/3215220. diff --git a/core/modules/node/tests/src/Functional/NodeFieldMultilingualTest.php b/core/modules/node/tests/src/Functional/NodeFieldMultilingualTest.php index 4939108c87c..8683c4c1670 100644 --- a/core/modules/node/tests/src/Functional/NodeFieldMultilingualTest.php +++ b/core/modules/node/tests/src/Functional/NodeFieldMultilingualTest.php @@ -25,7 +25,7 @@ class NodeFieldMultilingualTest extends BrowserTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; protected function setUp(): void { parent::setUp(); @@ -140,7 +140,7 @@ class NodeFieldMultilingualTest extends BrowserTestBase { // Check if node body is showed. $this->drupalGet('node/' . $node->id()); - $this->assertSession()->elementTextEquals('xpath', "//article[contains(concat(' ', normalize-space(@class), ' '), ' node ')]//div[contains(concat(' ', normalize-space(@class), ' '), 'node__content')]/descendant::p", $node->body->value); + $this->assertSession()->elementTextEquals('xpath', "//article/div//p", $node->body->value); } } diff --git a/core/modules/node/tests/src/Functional/NodePostSettingsTest.php b/core/modules/node/tests/src/Functional/NodePostSettingsTest.php index dcdba3dc3e6..a9a670d6210 100644 --- a/core/modules/node/tests/src/Functional/NodePostSettingsTest.php +++ b/core/modules/node/tests/src/Functional/NodePostSettingsTest.php @@ -13,7 +13,7 @@ class NodePostSettingsTest extends NodeTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; protected function setUp(): void { parent::setUp(); @@ -46,7 +46,7 @@ class NodePostSettingsTest extends NodeTestBase { // Check that the post information is displayed. $node = $this->drupalGetNodeByTitle($edit['title[0][value]']); - $this->assertSession()->elementsCount('xpath', '//div[contains(@class, "node__submitted")]', 1); + $this->assertSession()->pageTextContainsOnce('Submitted by'); $node->delete(); // Set "Basic page" content type to display post information. @@ -63,7 +63,7 @@ class NodePostSettingsTest extends NodeTestBase { $this->submitForm($edit, 'Save'); // Check that the post information is not displayed. - $this->assertSession()->elementNotExists('xpath', '//div[contains(@class, "node__submitted")]'); + $this->assertSession()->pageTextNotContains('Submitted by'); } } diff --git a/core/modules/node/tests/src/Functional/NodeTitleTest.php b/core/modules/node/tests/src/Functional/NodeTitleTest.php index 6ac592f6336..0d1a93e5023 100644 --- a/core/modules/node/tests/src/Functional/NodeTitleTest.php +++ b/core/modules/node/tests/src/Functional/NodeTitleTest.php @@ -4,6 +4,7 @@ namespace Drupal\Tests\node\Functional; use Drupal\comment\Tests\CommentTestTrait; use Drupal\Component\Utility\Html; +use Drupal\Tests\system\Functional\Menu\AssertBreadcrumbTrait; /** * Tests node title. @@ -13,6 +14,7 @@ use Drupal\Component\Utility\Html; class NodeTitleTest extends NodeTestBase { use CommentTestTrait; + use AssertBreadcrumbTrait; /** * Modules to enable. @@ -24,7 +26,7 @@ class NodeTitleTest extends NodeTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * A user with permission to bypass access content. @@ -70,12 +72,13 @@ class NodeTitleTest extends NodeTestBase { $this->assertEquals($this->xpath($xpath)[0]->getText(), $node->label() . ' | Drupal', 'Page title is equal to node title.'); // Test breadcrumb in comment preview. - $this->drupalGet('comment/reply/node/' . $node->id() . '/comment'); - $xpath = '//nav[@class="breadcrumb"]/ol/li[last()]/a'; - $this->assertEquals($this->xpath($xpath)[0]->getText(), $node->label(), 'Node breadcrumb is equal to node title.'); + $this->assertBreadcrumb('comment/reply/node/' . $node->id() . '/comment', [ + '' => 'Home', + 'node/' . $node->id() => $node->label(), + ]); // Verify that node preview title is equal to node title. - $this->assertSession()->elementTextEquals('xpath', "//article[contains(concat(' ', normalize-space(@class), ' '), ' node--type-{$node->bundle()} ')]/h2/a/span", $node->label()); + $this->assertSession()->elementTextEquals('xpath', "//article/h2/a/span", $node->label()); // Test node title is clickable on teaser list (/node). $this->drupalGet('node'); diff --git a/core/modules/node/tests/src/Functional/NodeTypeTest.php b/core/modules/node/tests/src/Functional/NodeTypeTest.php index af119580864..5157b7d121f 100644 --- a/core/modules/node/tests/src/Functional/NodeTypeTest.php +++ b/core/modules/node/tests/src/Functional/NodeTypeTest.php @@ -28,7 +28,7 @@ class NodeTypeTest extends NodeTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * Ensures that node type functions (node_type_get_*) work correctly. @@ -78,7 +78,7 @@ class NodeTypeTest extends NodeTestBase { $this->drupalGet('node/add'); $this->assertSession()->responseHeaderContains('X-Drupal-Cache-Tags', 'config:node_type_list'); $this->assertCacheContext('user.permissions'); - $elements = $this->cssSelect('dl.node-type-list dt'); + $elements = $this->cssSelect('dl dt'); $this->assertCount(3, $elements); $edit = [ @@ -92,7 +92,7 @@ class NodeTypeTest extends NodeTestBase { $this->assertTrue($type_exists, 'The new content type has been created in the database.'); $this->drupalGet('node/add'); - $elements = $this->cssSelect('dl.node-type-list dt'); + $elements = $this->cssSelect('dl dt'); $this->assertCount(4, $elements); } diff --git a/core/modules/node/tests/src/Functional/NodeViewTest.php b/core/modules/node/tests/src/Functional/NodeViewTest.php index c1cd40f33c3..6894265978b 100644 --- a/core/modules/node/tests/src/Functional/NodeViewTest.php +++ b/core/modules/node/tests/src/Functional/NodeViewTest.php @@ -15,7 +15,7 @@ class NodeViewTest extends NodeTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * Tests the html head links. @@ -60,7 +60,7 @@ class NodeViewTest extends NodeTestBase { $node = $this->drupalCreateNode(['title' => $title]); $this->drupalGet($node->toUrl()); // Verify that the passed title was returned. - $this->assertSession()->elementTextEquals('xpath', '//span[contains(@class, "field--name-title")]', $title); + $this->assertSession()->elementTextEquals('xpath', '//h1/span', $title); } } diff --git a/core/modules/node/tests/src/Functional/PagePreviewTest.php b/core/modules/node/tests/src/Functional/PagePreviewTest.php index 9f188c00101..28e8a3a701c 100644 --- a/core/modules/node/tests/src/Functional/PagePreviewTest.php +++ b/core/modules/node/tests/src/Functional/PagePreviewTest.php @@ -45,7 +45,16 @@ class PagePreviewTest extends NodeTestBase { ]; /** - * {@inheritdoc} + * The theme to install as the default for testing. + * + * @var string + * + * @todo The fact that PagePreviewTest::testPagePreview() makes assertions + * related to the node type being used for a body class makes Stark a bad + * fit as a base theme. Change the default theme to Starterkit once it is + * stable. + * + * @see https://www.drupal.org/project/drupal/issues/3274077 */ protected $defaultTheme = 'classy'; diff --git a/core/modules/node/tests/src/Functional/Views/FrontPageTest.php b/core/modules/node/tests/src/Functional/Views/FrontPageTest.php index 7f36d63580f..c790b1666d9 100644 --- a/core/modules/node/tests/src/Functional/Views/FrontPageTest.php +++ b/core/modules/node/tests/src/Functional/Views/FrontPageTest.php @@ -24,7 +24,7 @@ class FrontPageTest extends ViewTestBase { /** * {@inheritdoc} */ - protected $defaultTheme = 'classy'; + protected $defaultTheme = 'stark'; /** * {@inheritdoc} @@ -189,7 +189,7 @@ class FrontPageTest extends ViewTestBase { $this->drupalGet('node'); $this->assertSession()->statusCodeEquals(200); // Check that the frontpage view was rendered. - $this->assertSession()->responseMatches('/class=".+view-frontpage/'); + $this->assertSession()->elementExists('css', '.views-element-container'); } /**