Mercurial > hg > isophonics-drupal-site
view core/modules/rdf/tests/src/Kernel/CrudTest.php @ 13:5fb285c0d0e3
Update Drupal core to 8.4.7 via Composer. Security update; I *think* we've
been lucky to get away with this so far, as we don't support self-registration
which seems to be used by the so-called "drupalgeddon 2" attack that 8.4.5
was vulnerable to.
author | Chris Cannam |
---|---|
date | Mon, 23 Apr 2018 09:33:26 +0100 |
parents | 4c8ae668cc8c |
children |
line wrap: on
line source
<?php namespace Drupal\Tests\rdf\Kernel; use Drupal\KernelTests\KernelTestBase; /** * Tests the RDF mapping CRUD functions. * * @group rdf */ class CrudTest extends KernelTestBase { /** * Modules to enable. * * @var array */ public static $modules = ['entity_test', 'rdf', 'system']; /** * @var string */ protected $prefix; /** * @var string */ protected $entityType; /** * @var string */ protected $bundle; protected function setUp() { parent::setUp(); $this->prefix = 'rdf.mapping'; $this->entityType = $this->bundle = 'entity_test'; } /** * Tests creation of RDF mapping. */ public function testMappingCreation() { $mapping_config_name = "{$this->prefix}.{$this->entityType}.{$this->bundle}"; // Save bundle mapping config. rdf_get_mapping($this->entityType, $this->bundle)->save(); // Test that config file was saved. $mapping_config = \Drupal::configFactory()->listAll('rdf.mapping.'); $this->assertTrue(in_array($mapping_config_name, $mapping_config), 'Rdf mapping config saved.'); } /** * Test the handling of bundle mappings. */ public function testBundleMapping() { // Test that the bundle mapping can be saved. $types = ['sioc:Post', 'foaf:Document']; rdf_get_mapping($this->entityType, $this->bundle) ->setBundleMapping(['types' => $types]) ->save(); $bundle_mapping = rdf_get_mapping($this->entityType, $this->bundle) ->getBundleMapping(); $this->assertEqual($types, $bundle_mapping['types'], 'Bundle mapping saved.'); // Test that the bundle mapping can be edited. $types = ['schema:BlogPosting']; rdf_get_mapping($this->entityType, $this->bundle) ->setBundleMapping(['types' => $types]) ->save(); $bundle_mapping = rdf_get_mapping($this->entityType, $this->bundle) ->getBundleMapping(); $this->assertEqual($types, $bundle_mapping['types'], 'Bundle mapping updated.'); } /** * Test the handling of field mappings. */ public function testFieldMapping() { $field_name = 'created'; // Test that the field mapping can be saved. $mapping = [ 'properties' => ['dc:created'], 'datatype' => 'xsd:dateTime', 'datatype_callback' => ['callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'], ]; rdf_get_mapping($this->entityType, $this->bundle) ->setFieldMapping($field_name, $mapping) ->save(); $field_mapping = rdf_get_mapping($this->entityType, $this->bundle) ->getFieldMapping($field_name); $this->assertEqual($mapping, $field_mapping, 'Field mapping saved.'); // Test that the field mapping can be edited. $mapping = [ 'properties' => ['dc:date'], 'datatype' => 'foo:bar', 'datatype_callback' => ['callable' => 'Drupal\rdf\CommonDataConverter::dateIso8601Value'], ]; rdf_get_mapping($this->entityType, $this->bundle) ->setFieldMapping($field_name, $mapping) ->save(); $field_mapping = rdf_get_mapping($this->entityType, $this->bundle) ->getFieldMapping($field_name); $this->assertEqual($mapping, $field_mapping, 'Field mapping updated.'); } }