public function StyleSerializerTest::testPreview

Tests the preview output for json output.

File

drupal/core/modules/rest/lib/Drupal/rest/Tests/Views/StyleSerializerTest.php, line 269
Contains \Drupal\rest\Tests\Views\StyleSerializerTest.

Class

StyleSerializerTest
Tests the serializer style plugin.

Namespace

Drupal\rest\Tests\Views

Code

public function testPreview() {
  $view = views_get_view('test_serializer_display_entity');
  $view
    ->setDisplay('rest_export_1');
  $this
    ->executeView($view);

  // Get the serializer service.
  $serializer = $this->container
    ->get('serializer');
  $entities = array();
  foreach ($view->result as $row) {
    $entities[] = $row->_entity;
  }
  $expected = check_plain($serializer
    ->serialize($entities, 'json'));
  $view->display_handler
    ->setContentType('json');
  $view->live_preview = TRUE;
  $build = $view
    ->preview();
  $rendered_json = $build['#markup'];
  $this
    ->assertEqual($rendered_json, $expected, 'Ensure the previewed json is escaped.');
}