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')); } }