function NodeDeleteConfirmTest::testNodeDelete
Same name in other branches
- 11.x core/modules/node/tests/src/FunctionalJavascript/NodeDeleteConfirmTest.php \Drupal\Tests\node\FunctionalJavascript\NodeDeleteConfirmTest::testNodeDelete()
Tests that the node delete operation opens in a modal.
File
-
core/
modules/ node/ tests/ src/ FunctionalJavascript/ NodeDeleteConfirmTest.php, line 48
Class
- NodeDeleteConfirmTest
- Tests JavaScript functionality specific to delete operations.
Namespace
Drupal\Tests\node\FunctionalJavascriptCode
public function testNodeDelete() : void {
$page = $this->getSession()
->getPage();
$assert_session = $this->assertSession();
// Test the delete operation on an item in admin/content .
$node = $this->createNode([
'type' => 'article',
'title' => 'Delete article from content list',
]);
$node->save();
$this->drupalGet('admin/content');
$page->find('css', '.dropbutton-toggle button')
->click();
$page->clickLink('Delete');
// Asserts a dialog opens with the expected text.
$this->assertEquals('Are you sure you want to delete the content item Delete article from content list?', $assert_session->waitForElement('css', '.ui-dialog-title')
->getText());
$page->find('css', '.ui-dialog-buttonset')
->pressButton('Delete');
$assert_session->waitForText('The Article Delete article from content list has been deleted.');
// Assert that the node is deleted in above operation.
$this->drupalGet('/admin/content');
$assert_session->waitForText('There are no content items yet.');
$node = $this->createNode([
'type' => 'article',
'title' => 'Delete article from entity form',
]);
$node->save();
// Tests the delete modal on its entity form.
$this->drupalGet('node/2/edit');
$this->clickLink('Delete');
$this->assertEquals('Are you sure you want to delete the content item Delete article from entity form?', $assert_session->waitForElement('css', '.ui-dialog-title')
->getText());
$page->find('css', '.ui-dialog-buttonset')
->pressButton('Delete');
$this->assertSession()
->pageTextContains('The Article Delete article from entity form has been deleted.');
// Assert that the node is deleted in above operation.
$this->drupalGet('/admin/content');
$assert_session->waitForText('There are no content items yet.');
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.