*/
public function providerTestGetTableMappingSimple() {
return [
- [[
- 'id' => 'test_id',
- 'bundle' => NULL,
- 'uuid' => NULL,
- ]],
- [[
- 'id' => 'test_id',
- 'bundle' => 'test_bundle',
- 'uuid' => NULL,
- ]],
- [[
- 'id' => 'test_id',
- 'bundle' => NULL,
- 'uuid' => 'test_uuid',
- ]],
- [[
- 'id' => 'test_id',
- 'bundle' => 'test_bundle',
- 'uuid' => 'test_uuid',
- ]],
+ [['id' => 'test_id', 'bundle' => NULL, 'uuid' => NULL]],
+ [['id' => 'test_id', 'bundle' => 'test_bundle', 'uuid' => NULL]],
+ [['id' => 'test_id', 'bundle' => NULL, 'uuid' => 'test_uuid']],
+ [['id' => 'test_id', 'bundle' => 'test_bundle', 'uuid' => 'test_uuid']],
];
}
['bundle', $entity_keys['bundle']],
['revision', $entity_keys['revision']],
]));
+ $this->entityType->expects($this->any())
+ ->method('getRevisionMetadataKeys')
+ ->will($this->returnValue([]));
$this->setUpEntityStorage();
// PHPUnit does not allow for multiple data providers.
$test_cases = [
[],
- ['revision_timestamp'],
- ['revision_uid'],
- ['revision_log'],
- ['revision_timestamp', 'revision_uid'],
- ['revision_timestamp', 'revision_log'],
- ['revision_uid', 'revision_log'],
- ['revision_timestamp', 'revision_uid', 'revision_log'],
+ ['revision_created' => 'revision_timestamp'],
+ ['revision_user' => 'revision_uid'],
+ ['revision_log_message' => 'revision_log'],
+ ['revision_created' => 'revision_timestamp', 'revision_user' => 'revision_uid'],
+ ['revision_created' => 'revision_timestamp', 'revision_log_message' => 'revision_log'],
+ ['revision_user' => 'revision_uid', 'revision_log_message' => 'revision_log'],
+ ['revision_created' => 'revision_timestamp', 'revision_user' => 'revision_uid', 'revision_log_message' => 'revision_log'],
];
foreach ($test_cases as $revision_metadata_field_names) {
$this->setUp();
$revisionable_field_names = ['description', 'owner'];
$field_names = array_merge($field_names, $revisionable_field_names);
- $this->fieldDefinitions += $this->mockFieldDefinitions(array_merge($revisionable_field_names, $revision_metadata_field_names), ['isRevisionable' => TRUE]);
+ $this->fieldDefinitions += $this->mockFieldDefinitions(array_merge($revisionable_field_names, array_values($revision_metadata_field_names)), ['isRevisionable' => TRUE]);
$this->entityType->expects($this->exactly(2))
->method('isRevisionable')
['revision', $entity_keys['revision']],
]));
+ $this->entityType->expects($this->any())
+ ->method('getRevisionMetadataKeys')
+ ->will($this->returnValue($revision_metadata_field_names));
+
$this->setUpEntityStorage();
$mapping = $this->entityStorage->getTableMapping();
$expected = array_merge(
[$entity_keys['id'], $entity_keys['revision']],
$revisionable_field_names,
- $revision_metadata_field_names
+ array_values($revision_metadata_field_names)
);
$this->assertEquals($expected, $mapping->getFieldNames('entity_test_revision'));
'uuid' => $entity_keys['uuid'],
'langcode' => 'langcode',
];
+ $revision_metadata_keys = [
+ 'revision_created' => 'revision_timestamp',
+ 'revision_user' => 'revision_uid',
+ 'revision_log_message' => 'revision_log'
+ ];
$this->entityType->expects($this->atLeastOnce())
->method('isRevisionable')
['revision', $entity_keys['revision']],
['langcode', $entity_keys['langcode']],
]));
+ $this->entityType->expects($this->any())
+ ->method('getRevisionMetadataKeys')
+ ->will($this->returnValue($revision_metadata_keys));
$this->setUpEntityStorage();
$entity_keys['revision'],
$entity_keys['langcode'],
]));
+ $expected = array_merge($expected, array_values($revision_metadata_keys));
$actual = $mapping->getFieldNames('entity_test_revision');
$this->assertEquals($expected, $actual);
// The UUID is not stored on the data table.
// PHPUnit does not allow for multiple data providers.
$test_cases = [
[],
- ['revision_timestamp'],
- ['revision_uid'],
- ['revision_log'],
- ['revision_timestamp', 'revision_uid'],
- ['revision_timestamp', 'revision_log'],
- ['revision_uid', 'revision_log'],
- ['revision_timestamp', 'revision_uid', 'revision_log'],
+ ['revision_created' => 'revision_timestamp'],
+ ['revision_user' => 'revision_uid'],
+ ['revision_log_message' => 'revision_log'],
+ ['revision_created' => 'revision_timestamp', 'revision_user' => 'revision_uid'],
+ ['revision_created' => 'revision_timestamp', 'revision_log_message' => 'revision_log'],
+ ['revision_user' => 'revision_uid', 'revision_log_message' => 'revision_log'],
+ ['revision_created' => 'revision_timestamp', 'revision_user' => 'revision_uid', 'revision_log_message' => 'revision_log'],
];
foreach ($test_cases as $revision_metadata_field_names) {
$this->setUp();
$this->fieldDefinitions = $this->mockFieldDefinitions($field_names);
$revisionable_field_names = ['description', 'owner'];
- $this->fieldDefinitions += $this->mockFieldDefinitions(array_merge($revisionable_field_names, $revision_metadata_field_names), ['isRevisionable' => TRUE]);
+ $this->fieldDefinitions += $this->mockFieldDefinitions(array_merge($revisionable_field_names, array_values($revision_metadata_field_names)), ['isRevisionable' => TRUE]);
$this->entityType->expects($this->atLeastOnce())
->method('isRevisionable')
['revision', $entity_keys['revision']],
['langcode', $entity_keys['langcode']],
]));
+ $this->entityType->expects($this->any())
+ ->method('getRevisionMetadataKeys')
+ ->will($this->returnValue($revision_metadata_field_names));
$this->setUpEntityStorage();
$entity_keys['id'],
$entity_keys['revision'],
$entity_keys['langcode'],
- ]), $revision_metadata_field_names);
+ ]), array_values($revision_metadata_field_names));
$actual = $mapping->getFieldNames('entity_test_revision');
$this->assertEquals($expected, $actual);
// The UUID is not stored on the data table.
$this->cache->expects($this->once())
->method('getMultiple')
->with([$key])
- ->will($this->returnValue([$key => (object) [
- 'data' => $entity,
- ]]));
+ ->will($this->returnValue([$key => (object) ['data' => $entity]]));
$this->cache->expects($this->never())
->method('set');