+++ /dev/null
-<?php
-
-namespace Drupal\system\Tests\System;
-
-use Drupal\rest\Tests\RESTTestBase;
-
-/**
- * Tests to see if generator header is added.
- *
- * @group system
- */
-class ResponseGeneratorTest extends RESTTestBase {
-
- /**
- * Modules to install.
- *
- * @var array
- */
- public static $modules = ['hal', 'rest', 'node', 'basic_auth'];
-
- /**
- * {@inheritdoc}
- */
- protected function setUp() {
- parent::setUp();
- $this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
-
- $permissions = $this->entityPermissions('node', 'view');
- $account = $this->drupalCreateUser($permissions);
- $this->drupalLogin($account);
- }
-
- /**
- * Test to see if generator header is added.
- */
- public function testGeneratorHeaderAdded() {
-
- $node = $this->drupalCreateNode();
-
- list($version) = explode('.', \Drupal::VERSION, 2);
- $expectedGeneratorHeader = 'Drupal ' . $version . ' (https://www.drupal.org)';
-
- // Check to see if the header is added when viewing a normal content page
- $this->drupalGet($node->urlInfo());
- $this->assertResponse(200);
- $this->assertEqual('text/html; charset=UTF-8', $this->drupalGetHeader('Content-Type'));
- $this->assertEqual($expectedGeneratorHeader, $this->drupalGetHeader('X-Generator'));
-
- // Check to see if the header is also added for a non-successful response
- $this->drupalGet('llama');
- $this->assertResponse(404);
- $this->assertEqual('text/html; charset=UTF-8', $this->drupalGetHeader('Content-Type'));
- $this->assertEqual($expectedGeneratorHeader, $this->drupalGetHeader('X-Generator'));
-
- // Enable cookie-based authentication for the entity:node REST resource.
- /** @var \Drupal\rest\RestResourceConfigInterface $resource_config */
- $resource_config = $this->resourceConfigStorage->load('entity.node');
- $configuration = $resource_config->get('configuration');
- $configuration['authentication'][] = 'cookie';
- $resource_config->set('configuration', $configuration)->save();
- $this->rebuildCache();
-
- // Tests to see if this also works for a non-html request
- $this->httpRequest($node->urlInfo()->setOption('query', ['_format' => 'hal_json']), 'GET');
- $this->assertResponse(200);
- $this->assertEqual('application/hal+json', $this->drupalGetHeader('Content-Type'));
- $this->assertEqual($expectedGeneratorHeader, $this->drupalGetHeader('X-Generator'));
-
- }
-
-}