public function WorkspaceIntegrationTest::testDisallowedEntityDeleteInNonDefaultWorkspace in Drupal 9
Same name and namespace in other branches
- 8 core/modules/workspaces/tests/src/Kernel/WorkspaceIntegrationTest.php \Drupal\Tests\workspaces\Kernel\WorkspaceIntegrationTest::testDisallowedEntityDeleteInNonDefaultWorkspace()
Tests DELETE operations for unsupported entity types.
@dataProvider providerTestAllowedEntityCrudInNonDefaultWorkspace
File
- core/
modules/ workspaces/ tests/ src/ Kernel/ WorkspaceIntegrationTest.php, line 652
Class
- WorkspaceIntegrationTest
- Tests a complete publishing scenario across different workspaces.
Namespace
Drupal\Tests\workspaces\KernelCode
public function testDisallowedEntityDeleteInNonDefaultWorkspace($entity_type_id, $allowed) {
$this
->initializeWorkspacesModule();
/** @var \Drupal\Core\Entity\ContentEntityStorageInterface $storage */
$storage = $this->entityTypeManager
->getStorage($entity_type_id);
// Create the entity in the default workspace.
$this->workspaceManager
->switchToLive();
$entity = $storage
->createWithSampleValues($entity_type_id);
if ($entity_type_id === 'workspace') {
$entity->id = 'test';
}
$entity
->save();
// Switch to a non-default workspace and check whether deleting the entity
// is allowed.
$this
->switchToWorkspace('stage');
if (!$allowed) {
$this
->expectException(EntityStorageException::class);
$this
->expectExceptionMessage('This entity can only be deleted in the default workspace.');
}
$entity
->delete();
}