function MediaTest::testDrupalMediaStyleInDropdown
Same name in other branches
- 9 core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaTest.php \Drupal\Tests\ckeditor5\FunctionalJavascript\MediaTest::testDrupalMediaStyleInDropdown()
- 10 core/modules/ckeditor5/tests/src/FunctionalJavascript/MediaTest.php \Drupal\Tests\ckeditor5\FunctionalJavascript\MediaTest::testDrupalMediaStyleInDropdown()
Ensures that Drupal Media Styles can be displayed in a dropdown.
File
-
core/
modules/ ckeditor5/ tests/ src/ FunctionalJavascript/ MediaTest.php, line 638
Class
- MediaTest
- @coversDefaultClass \Drupal\ckeditor5\Plugin\CKEditor5Plugin\Media @group ckeditor5 @group #slow @internal
Namespace
Drupal\Tests\ckeditor5\FunctionalJavascriptCode
public function testDrupalMediaStyleInDropdown() : void {
\Drupal::service('module_installer')->install([
'ckeditor5_drupalelementstyle_test',
]);
$this->resetAll();
$assert_session = $this->assertSession();
$this->drupalGet($this->host
->toUrl('edit-form'));
$this->waitForEditor();
// Wait for the media preview to load.
$this->assertNotEmpty($assert_session->waitForElementVisible('css', '.ck-widget.drupal-media img'));
// Ensure that by default the "Break text" alignment option is selected and
// that the split button title is displayed.
$this->click('.ck-widget.drupal-media');
$this->assertVisibleBalloon('[aria-label="Drupal Media toolbar"]');
$this->assertNotEmpty(($split_button = $this->getBalloonButton('Test title: Break text'))
->hasClass('ck-on'));
// Ensure that the split button can be opened.
$split_button->click();
$this->assertNotEmpty($assert_session->waitForElementVisible('css', '.ck-dropdown__panel-visible'));
// Ensure that a button inside the split button can be clicked.
$this->assertNotEmpty($align_button = $this->getBalloonButton('Align center and break text'));
$align_button->click();
// Ensure that the "Align center and break text" option is selected and the
// split button title is displayed.
$this->assertNotEmpty($assert_session->waitForElement('css', '.ck-widget.drupal-media.drupal-media-style-align-center'));
$editor_dom = $this->getEditorDataAsDom();
$drupal_media_element = $editor_dom->getElementsByTagName('drupal-media')
->item(0);
$this->assertEquals('center', $drupal_media_element->getAttribute('data-align'));
$this->assertNotEmpty($this->getBalloonButton('Test title: Align center and break text')
->hasClass('ck-on'));
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.