Issue #3445469 by pooja_sharma, smustgrave: Add additional test coverage for DialogRenderer::getTitleAsStringable()
parent
73ec28542e
commit
f4268525e4
|
@ -145,3 +145,19 @@ ajax_test.http_methods.dialog:
|
|||
_controller: Drupal\ajax_test\Controller\AjaxTestController::httpMethodsDialog
|
||||
requirements:
|
||||
_access: 'TRUE'
|
||||
|
||||
ajax_test.link_page.dialog:
|
||||
path: '/ajax-test/link-page-dialog'
|
||||
defaults:
|
||||
_title: 'AJAX link page'
|
||||
_controller: '\Drupal\ajax_test\Controller\AjaxTestController::linkPageDialog'
|
||||
requirements:
|
||||
_access: 'TRUE'
|
||||
|
||||
ajax_test.link_page.dialog_contents:
|
||||
path: '/ajax-test/link-page-dialog-contents'
|
||||
defaults:
|
||||
_title_callback: '\Drupal\ajax_test\Controller\AjaxTestController::linkPageDialogTitle'
|
||||
_controller: '\Drupal\ajax_test\Controller\AjaxTestController::httpMethodsDialog'
|
||||
requirements:
|
||||
_access: 'TRUE'
|
||||
|
|
|
@ -457,4 +457,40 @@ class AjaxTestController {
|
|||
return ['#markup' => 'Modal dialog contents'];
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides an Ajax link that open in dialog.
|
||||
*
|
||||
* @return array
|
||||
* The AJAX link.
|
||||
*/
|
||||
public function linkPageDialog(): array {
|
||||
return [
|
||||
'#type' => 'link',
|
||||
'#title' => 'Modal link',
|
||||
'#url' => Url::fromRoute('ajax_test.link_page.dialog_contents'),
|
||||
'#attributes' => [
|
||||
'class' => [
|
||||
'use-ajax',
|
||||
],
|
||||
'data-dialog-type' => 'dialog',
|
||||
],
|
||||
'#attached' => [
|
||||
'library' => [
|
||||
'core/drupal.dialog.ajax',
|
||||
],
|
||||
],
|
||||
];
|
||||
}
|
||||
|
||||
/**
|
||||
* Provides a title to the page.
|
||||
*
|
||||
* @return string
|
||||
* The page title.
|
||||
*/
|
||||
public function linkPageDialogTitle(): string {
|
||||
$title = 'Dialog link page title';
|
||||
return $title;
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -216,6 +216,13 @@ class DialogTest extends WebDriverTestBase {
|
|||
|
||||
$form_title = $dialog_add->find('css', "span.ui-dialog-title:contains('Add contact form')");
|
||||
$this->assertNotNull($form_title, 'The add form title is as expected.');
|
||||
|
||||
// Test: dialog link opener with title callback.
|
||||
$page = $this->getSession()->getPage();
|
||||
$assert_session = $this->assertSession();
|
||||
$this->drupalGet("/ajax-test/link-page-dialog");
|
||||
$page->clickLink('Modal link');
|
||||
$this->assertEquals('Dialog link page title', $assert_session->waitForElement('css', '.ui-dialog-title')->getText());
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Reference in New Issue