public function ScheduledTransitionEntityTest::testAccessByBundle in Scheduled Transitions 2.x
Same name and namespace in other branches
- 8 tests/src/Functional/ScheduledTransitionEntityTest.php \Drupal\Tests\scheduled_transitions\Functional\ScheduledTransitionEntityTest::testAccessByBundle()
Tests transition pages access depending on enabled entity type/bundle.
File
- tests/
src/ Functional/ ScheduledTransitionEntityTest.php, line 56
Class
- ScheduledTransitionEntityTest
- Tests an entity with scheduled transitions capabilities.
Namespace
Drupal\Tests\scheduled_transitions\FunctionalCode
public function testAccessByBundle() {
$this
->enabledBundles([
[
'st_entity_test',
'st_entity_test',
],
]);
$workflow = $this
->createEditorialWorkflow();
$workflow
->getTypePlugin()
->addEntityTypeAndBundle('st_entity_test', 'st_entity_test');
$workflow
->save();
$currentUser = $this
->drupalCreateUser([
'administer st_entity_test entities',
'use editorial transition create_new_draft',
'use editorial transition publish',
'use editorial transition archive',
'view scheduled transitions st_entity_test st_entity_test',
]);
$this
->drupalLogin($currentUser);
$entity = ScheduledTransitionsTestEntity::create([
'type' => 'st_entity_test',
]);
$entity
->save();
$this
->drupalGet($entity
->toUrl(ScheduledTransitionsRouteProvider::LINK_TEMPLATE));
$this
->assertSession()
->statusCodeEquals(200);
\Drupal::configFactory()
->getEditable('scheduled_transitions.settings')
->set('bundles', [])
->save(TRUE);
Cache::invalidateTags([
SettingsForm::SETTINGS_TAG,
]);
$this
->drupalGet($entity
->toUrl(ScheduledTransitionsRouteProvider::LINK_TEMPLATE));
$this
->assertSession()
->statusCodeEquals(403);
}