You are here

public function EditorIntegrationTest::testGetUntransformedTextCommand in Drupal 9

Tests GetUntransformedTextCommand AJAX command.

File

core/modules/quickedit/tests/src/Kernel/EditorIntegrationTest.php, line 209

Class

EditorIntegrationTest
Tests Edit module integration (Editor module's inline editing support).

Namespace

Drupal\Tests\quickedit\Kernel

Code

public function testGetUntransformedTextCommand() {

  // Create an entity with values for the field.
  $entity = EntityTest::create();
  $entity->{$this->fieldName}->value = 'Test';
  $entity->{$this->fieldName}->format = 'full_html';
  $entity
    ->save();
  $entity = EntityTest::load($entity
    ->id());

  // Verify AJAX response.
  $controller = new EditorController();
  $request = new Request();
  $response = $controller
    ->getUntransformedText($entity, $this->fieldName, LanguageInterface::LANGCODE_DEFAULT, 'default');
  $expected = [
    [
      'command' => 'editorGetUntransformedText',
      'data' => 'Test',
    ],
  ];
  $ajax_response_attachments_processor = \Drupal::service('ajax_response.attachments_processor');
  $subscriber = new AjaxResponseSubscriber($ajax_response_attachments_processor);
  $event = new ResponseEvent(\Drupal::service('http_kernel'), $request, HttpKernelInterface::MASTER_REQUEST, $response);
  $subscriber
    ->onResponse($event);
  $this
    ->assertEquals(Json::encode($expected), $response
    ->getContent(), 'The GetUntransformedTextCommand AJAX command works correctly.');
}