update
This commit is contained in:
@@ -29,7 +29,10 @@ class MultiStepNodeFormBasicOptionsTest extends NodeTestBase {
|
||||
*/
|
||||
public function testMultiStepNodeFormBasicOptions() {
|
||||
// Prepare a user to create the node.
|
||||
$web_user = $this->drupalCreateUser(['administer nodes', 'create page content']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'administer nodes',
|
||||
'create page content',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
|
||||
// Create an unlimited cardinality field.
|
||||
|
||||
@@ -100,7 +100,10 @@ class NodeAccessBaseTableTest extends NodeTestBase {
|
||||
// Array of nids marked private.
|
||||
$private_nodes = [];
|
||||
for ($i = 0; $i < $num_simple_users; $i++) {
|
||||
$simple_users[$i] = $this->drupalCreateUser(['access content', 'create article content']);
|
||||
$simple_users[$i] = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'create article content',
|
||||
]);
|
||||
}
|
||||
foreach ($simple_users as $this->webUser) {
|
||||
$this->drupalLogin($this->webUser);
|
||||
@@ -160,7 +163,12 @@ class NodeAccessBaseTableTest extends NodeTestBase {
|
||||
}
|
||||
|
||||
// Now test that a user with 'node test view' permissions can view content.
|
||||
$access_user = $this->drupalCreateUser(['access content', 'create article content', 'node test view', 'search content']);
|
||||
$access_user = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'create article content',
|
||||
'node test view',
|
||||
'search content',
|
||||
]);
|
||||
$this->drupalLogin($access_user);
|
||||
|
||||
foreach ($this->nodesByUser as $private_status) {
|
||||
|
||||
@@ -51,8 +51,15 @@ class NodeAccessFieldTest extends NodeTestBase {
|
||||
node_access_rebuild();
|
||||
|
||||
// Create some users.
|
||||
$this->adminUser = $this->drupalCreateUser(['access content', 'bypass node access']);
|
||||
$this->contentAdminUser = $this->drupalCreateUser(['access content', 'administer content types', 'administer node fields']);
|
||||
$this->adminUser = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'bypass node access',
|
||||
]);
|
||||
$this->contentAdminUser = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'administer content types',
|
||||
'administer node fields',
|
||||
]);
|
||||
|
||||
// Add a custom field to the page content type.
|
||||
$this->fieldName = mb_strtolower($this->randomMachineName() . '_field_name');
|
||||
|
||||
@@ -50,9 +50,19 @@ class NodeAccessGrantsCacheContextTest extends NodeTestBase {
|
||||
|
||||
// Create user with simple node access permission. The 'node test view'
|
||||
// permission is implemented and granted by the node_access_test module.
|
||||
$this->accessUser = $this->drupalCreateUser(['access content overview', 'access content', 'node test view']);
|
||||
$this->noAccessUser = $this->drupalCreateUser(['access content overview', 'access content']);
|
||||
$this->noAccessUser2 = $this->drupalCreateUser(['access content overview', 'access content']);
|
||||
$this->accessUser = $this->drupalCreateUser([
|
||||
'access content overview',
|
||||
'access content',
|
||||
'node test view',
|
||||
]);
|
||||
$this->noAccessUser = $this->drupalCreateUser([
|
||||
'access content overview',
|
||||
'access content',
|
||||
]);
|
||||
$this->noAccessUser2 = $this->drupalCreateUser([
|
||||
'access content overview',
|
||||
'access content',
|
||||
]);
|
||||
|
||||
$this->userMapping = [
|
||||
1 => $this->rootUser,
|
||||
|
||||
@@ -59,19 +59,19 @@ class NodeAccessMenuLinkTest extends NodeTestBase {
|
||||
'menu[title]' => $menu_link_title,
|
||||
];
|
||||
$this->drupalPostForm('node/add/page', $edit, t('Save'));
|
||||
$this->assertLink($menu_link_title);
|
||||
$this->assertSession()->linkExists($menu_link_title);
|
||||
|
||||
// Ensure anonymous users without "access content" permission do not see
|
||||
// this menu link.
|
||||
$this->drupalLogout();
|
||||
$this->drupalGet('');
|
||||
$this->assertNoLink($menu_link_title);
|
||||
$this->assertSession()->linkNotExists($menu_link_title);
|
||||
|
||||
// Ensure anonymous users with "access content" permission see this menu
|
||||
// link.
|
||||
$this->config('user.role.' . RoleInterface::ANONYMOUS_ID)->set('permissions', ['access content'])->save();
|
||||
$this->drupalGet('');
|
||||
$this->assertLink($menu_link_title);
|
||||
$this->assertSession()->linkExists($menu_link_title);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -34,7 +34,11 @@ class NodeAccessPagerTest extends BrowserTestBase {
|
||||
node_access_rebuild();
|
||||
$this->drupalCreateContentType(['type' => 'page', 'name' => t('Basic page')]);
|
||||
$this->addDefaultCommentField('node', 'page');
|
||||
$this->webUser = $this->drupalCreateUser(['access content', 'access comments', 'node test view']);
|
||||
$this->webUser = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'access comments',
|
||||
'node test view',
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -37,7 +37,11 @@ class NodeAccessRebuildNodeGrantsTest extends NodeTestBase {
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
|
||||
$this->adminUser = $this->drupalCreateUser(['administer site configuration', 'access administration pages', 'access site reports']);
|
||||
$this->adminUser = $this->drupalCreateUser([
|
||||
'administer site configuration',
|
||||
'access administration pages',
|
||||
'access site reports',
|
||||
]);
|
||||
$this->drupalLogin($this->adminUser);
|
||||
|
||||
$this->webUser = $this->drupalCreateUser();
|
||||
|
||||
@@ -60,10 +60,21 @@ class NodeAdminTest extends NodeTestBase {
|
||||
// correctly.
|
||||
user_role_revoke_permissions(RoleInterface::AUTHENTICATED_ID, ['view own unpublished content']);
|
||||
|
||||
$this->adminUser = $this->drupalCreateUser(['access administration pages', 'access content overview', 'administer nodes', 'bypass node access']);
|
||||
$this->adminUser = $this->drupalCreateUser([
|
||||
'access administration pages',
|
||||
'access content overview',
|
||||
'administer nodes',
|
||||
'bypass node access',
|
||||
]);
|
||||
$this->baseUser1 = $this->drupalCreateUser(['access content overview']);
|
||||
$this->baseUser2 = $this->drupalCreateUser(['access content overview', 'view own unpublished content']);
|
||||
$this->baseUser3 = $this->drupalCreateUser(['access content overview', 'bypass node access']);
|
||||
$this->baseUser2 = $this->drupalCreateUser([
|
||||
'access content overview',
|
||||
'view own unpublished content',
|
||||
]);
|
||||
$this->baseUser3 = $this->drupalCreateUser([
|
||||
'access content overview',
|
||||
'bypass node access',
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -47,8 +47,16 @@ class NodeBlockFunctionalTest extends NodeTestBase {
|
||||
parent::setUp();
|
||||
|
||||
// Create users and test node.
|
||||
$this->adminUser = $this->drupalCreateUser(['administer content types', 'administer nodes', 'administer blocks', 'access content overview']);
|
||||
$this->webUser = $this->drupalCreateUser(['access content', 'create article content']);
|
||||
$this->adminUser = $this->drupalCreateUser([
|
||||
'administer content types',
|
||||
'administer nodes',
|
||||
'administer blocks',
|
||||
'access content overview',
|
||||
]);
|
||||
$this->webUser = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'create article content',
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -31,7 +31,10 @@ class NodeCreationTest extends NodeTestBase {
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
|
||||
$web_user = $this->drupalCreateUser(['create page content', 'edit own page content']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'create page content',
|
||||
'edit own page content',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
}
|
||||
|
||||
@@ -79,7 +82,10 @@ class NodeCreationTest extends NodeTestBase {
|
||||
$this->assertText($this->container->get('date.formatter')->format($node->getCreatedTime()));
|
||||
|
||||
// Check if the node revision checkbox is not rendered on node creation form.
|
||||
$admin_user = $this->drupalCreateUser(['administer nodes', 'create page content']);
|
||||
$admin_user = $this->drupalCreateUser([
|
||||
'administer nodes',
|
||||
'create page content',
|
||||
]);
|
||||
$this->drupalLogin($admin_user);
|
||||
$this->drupalGet('node/add/page');
|
||||
$this->assertNoFieldById('edit-revision', NULL, 'The revision checkbox is not present.');
|
||||
@@ -227,7 +233,10 @@ class NodeCreationTest extends NodeTestBase {
|
||||
* Tests the author autocompletion textfield.
|
||||
*/
|
||||
public function testAuthorAutocomplete() {
|
||||
$admin_user = $this->drupalCreateUser(['administer nodes', 'create page content']);
|
||||
$admin_user = $this->drupalCreateUser([
|
||||
'administer nodes',
|
||||
'create page content',
|
||||
]);
|
||||
$this->drupalLogin($admin_user);
|
||||
|
||||
$this->drupalGet('node/add/page');
|
||||
@@ -235,7 +244,11 @@ class NodeCreationTest extends NodeTestBase {
|
||||
$result = $this->xpath('//input[@id="edit-uid-0-value" and contains(@data-autocomplete-path, "user/autocomplete")]');
|
||||
$this->assertCount(0, $result, 'No autocompletion without access user profiles.');
|
||||
|
||||
$admin_user = $this->drupalCreateUser(['administer nodes', 'create page content', 'access user profiles']);
|
||||
$admin_user = $this->drupalCreateUser([
|
||||
'administer nodes',
|
||||
'create page content',
|
||||
'access user profiles',
|
||||
]);
|
||||
$this->drupalLogin($admin_user);
|
||||
|
||||
$this->drupalGet('node/add/page');
|
||||
@@ -260,7 +273,9 @@ class NodeCreationTest extends NodeTestBase {
|
||||
$this->drupalGet('node/add');
|
||||
$this->assertSession()->statusCodeEquals(403);
|
||||
|
||||
$admin_content_types = $this->drupalCreateUser(['administer content types']);
|
||||
$admin_content_types = $this->drupalCreateUser([
|
||||
'administer content types',
|
||||
]);
|
||||
$this->drupalLogin($admin_content_types);
|
||||
|
||||
$this->drupalGet('node/add');
|
||||
|
||||
@@ -32,7 +32,10 @@ class NodeDisplayConfigurableTest extends NodeTestBase {
|
||||
$node_type->setDisplaySubmitted(TRUE);
|
||||
$node_type->save();
|
||||
|
||||
$user = $this->drupalCreateUser(['access in-place editing', 'administer nodes']);
|
||||
$user = $this->drupalCreateUser([
|
||||
'access in-place editing',
|
||||
'administer nodes',
|
||||
]);
|
||||
$this->drupalLogin($user);
|
||||
$node = $this->drupalCreateNode(['uid' => $user->id()]);
|
||||
$assert = $this->assertSession();
|
||||
|
||||
@@ -48,8 +48,14 @@ class NodeEditFormTest extends NodeTestBase {
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
|
||||
$this->webUser = $this->drupalCreateUser(['edit own page content', 'create page content']);
|
||||
$this->adminUser = $this->drupalCreateUser(['bypass node access', 'administer nodes']);
|
||||
$this->webUser = $this->drupalCreateUser([
|
||||
'edit own page content',
|
||||
'create page content',
|
||||
]);
|
||||
$this->adminUser = $this->drupalCreateUser([
|
||||
'bypass node access',
|
||||
'administer nodes',
|
||||
]);
|
||||
$this->drupalPlaceBlock('local_tasks_block');
|
||||
|
||||
$this->nodeStorage = $this->container->get('entity_type.manager')->getStorage('node');
|
||||
@@ -95,7 +101,10 @@ class NodeEditFormTest extends NodeTestBase {
|
||||
$this->assertText($edit[$body_key], 'Body displayed.');
|
||||
|
||||
// Log in as a second administrator user.
|
||||
$second_web_user = $this->drupalCreateUser(['administer nodes', 'edit any page content']);
|
||||
$second_web_user = $this->drupalCreateUser([
|
||||
'administer nodes',
|
||||
'edit any page content',
|
||||
]);
|
||||
$this->drupalLogin($second_web_user);
|
||||
// Edit the same node, creating a new revision.
|
||||
$this->drupalGet("node/" . $node->id() . "/edit");
|
||||
|
||||
@@ -28,7 +28,10 @@ class NodeEntityViewModeAlterTest extends NodeTestBase {
|
||||
* Create a "Basic page" node and verify its consistency in the database.
|
||||
*/
|
||||
public function testNodeViewModeChange() {
|
||||
$web_user = $this->drupalCreateUser(['create page content', 'edit own page content']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'create page content',
|
||||
'edit own page content',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
|
||||
// Create a node.
|
||||
|
||||
@@ -34,7 +34,13 @@ class NodeFieldMultilingualTest extends BrowserTestBase {
|
||||
$this->drupalCreateContentType(['type' => 'page', 'name' => 'Basic page']);
|
||||
|
||||
// Setup users.
|
||||
$admin_user = $this->drupalCreateUser(['administer languages', 'administer content types', 'access administration pages', 'create page content', 'edit own page content']);
|
||||
$admin_user = $this->drupalCreateUser([
|
||||
'administer languages',
|
||||
'administer content types',
|
||||
'access administration pages',
|
||||
'create page content',
|
||||
'edit own page content',
|
||||
]);
|
||||
$this->drupalLogin($admin_user);
|
||||
|
||||
// Add a new language.
|
||||
|
||||
@@ -44,7 +44,11 @@ class NodeFormSaveChangedTimeTest extends BrowserTestBase {
|
||||
'name' => 'Article',
|
||||
]);
|
||||
|
||||
$this->authorUser = $this->drupalCreateUser(['access content', 'create article content', 'edit any article content'], 'author');
|
||||
$this->authorUser = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'create article content',
|
||||
'edit any article content',
|
||||
], 'author');
|
||||
$this->drupalLogin($this->authorUser);
|
||||
|
||||
// Create one node of the above node type .
|
||||
|
||||
@@ -35,7 +35,7 @@ class NodeLinksTest extends NodeTestBase {
|
||||
// Links are displayed by default.
|
||||
$this->drupalGet('node');
|
||||
$this->assertText($node->getTitle());
|
||||
$this->assertLink('Read more');
|
||||
$this->assertSession()->linkExists('Read more');
|
||||
|
||||
// Hide links.
|
||||
\Drupal::service('entity_display.repository')
|
||||
@@ -45,7 +45,7 @@ class NodeLinksTest extends NodeTestBase {
|
||||
|
||||
$this->drupalGet('node');
|
||||
$this->assertText($node->getTitle());
|
||||
$this->assertNoLink('Read more');
|
||||
$this->assertSession()->linkNotExists('Read more');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -25,7 +25,10 @@ class NodeLoadMultipleTest extends NodeTestBase {
|
||||
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
$web_user = $this->drupalCreateUser(['create article content', 'create page content']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'create article content',
|
||||
'create page content',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
}
|
||||
|
||||
|
||||
@@ -18,7 +18,11 @@ class NodePostSettingsTest extends NodeTestBase {
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
|
||||
$web_user = $this->drupalCreateUser(['create page content', 'administer content types', 'access user profiles']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'create page content',
|
||||
'administer content types',
|
||||
'access user profiles',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
}
|
||||
|
||||
|
||||
@@ -46,9 +46,19 @@ class NodeQueryAlterTest extends NodeTestBase {
|
||||
|
||||
// Create user with simple node access permission. The 'node test view'
|
||||
// permission is implemented and granted by the node_access_test module.
|
||||
$this->accessUser = $this->drupalCreateUser(['access content overview', 'access content', 'node test view']);
|
||||
$this->noAccessUser = $this->drupalCreateUser(['access content overview', 'access content']);
|
||||
$this->noAccessUser2 = $this->drupalCreateUser(['access content overview', 'access content']);
|
||||
$this->accessUser = $this->drupalCreateUser([
|
||||
'access content overview',
|
||||
'access content',
|
||||
'node test view',
|
||||
]);
|
||||
$this->noAccessUser = $this->drupalCreateUser([
|
||||
'access content overview',
|
||||
'access content',
|
||||
]);
|
||||
$this->noAccessUser2 = $this->drupalCreateUser([
|
||||
'access content overview',
|
||||
'access content',
|
||||
]);
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -33,7 +33,11 @@ class NodeRSSContentTest extends NodeTestBase {
|
||||
// Use bypass node access permission here, because the test class uses
|
||||
// hook_grants_alter() to deny access to everyone on node_access
|
||||
// queries.
|
||||
$user = $this->drupalCreateUser(['bypass node access', 'access content', 'create article content']);
|
||||
$user = $this->drupalCreateUser([
|
||||
'bypass node access',
|
||||
'access content',
|
||||
'create article content',
|
||||
]);
|
||||
$this->drupalLogin($user);
|
||||
}
|
||||
|
||||
|
||||
@@ -87,7 +87,10 @@ class NodeRevisionPermissionsTest extends NodeTestBase {
|
||||
}
|
||||
|
||||
// Create an admin account (returns TRUE for all revision permissions).
|
||||
$admin_account = $this->drupalCreateUser(['access content', 'administer nodes']);
|
||||
$admin_account = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'administer nodes',
|
||||
]);
|
||||
$admin_account->is_admin = TRUE;
|
||||
$this->accounts['admin'] = $admin_account;
|
||||
$accounts['admin'] = $admin_account;
|
||||
|
||||
@@ -76,7 +76,7 @@ class NodeRevisionsUiBypassAccessTest extends NodeTestBase {
|
||||
|
||||
$this->assertUrl($node->toUrl());
|
||||
// Verify revisions exist since the content type has revisions enabled.
|
||||
$this->assertLink(t('Revisions'));
|
||||
$this->assertSession()->linkExists(t('Revisions'));
|
||||
|
||||
// Verify the checkbox is checked on the node edit form.
|
||||
$this->drupalGet('node/' . $node->id() . '/edit');
|
||||
@@ -87,7 +87,7 @@ class NodeRevisionsUiBypassAccessTest extends NodeTestBase {
|
||||
$this->drupalPostForm('node/' . $node->id() . '/edit', $edit, 'Save');
|
||||
|
||||
$this->assertUrl($node->toUrl());
|
||||
$this->assertLink(t('Revisions'));
|
||||
$this->assertSession()->linkExists(t('Revisions'));
|
||||
|
||||
// Unset page revision setting 'create new revision'. This will mean new
|
||||
// revisions are not created by default when the node is edited.
|
||||
@@ -108,7 +108,7 @@ class NodeRevisionsUiBypassAccessTest extends NodeTestBase {
|
||||
$this->assertUrl($node->toUrl());
|
||||
// Verify that no link to revisions is displayed since the type
|
||||
// has the 'create new revision' setting unset.
|
||||
$this->assertNoLink(t('Revisions'));
|
||||
$this->assertSession()->linkNotExists(t('Revisions'));
|
||||
|
||||
// Verify the checkbox is unchecked on the node edit form.
|
||||
$this->drupalGet('node/' . $node->id() . '/edit');
|
||||
@@ -121,7 +121,7 @@ class NodeRevisionsUiBypassAccessTest extends NodeTestBase {
|
||||
$this->assertUrl($node->toUrl());
|
||||
// Verify that the link is displayed since a new revision is created and
|
||||
// the 'create new revision' checkbox on the node is checked.
|
||||
$this->assertLink(t('Revisions'));
|
||||
$this->assertSession()->linkExists(t('Revisions'));
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -41,7 +41,12 @@ class NodeTitleTest extends NodeTestBase {
|
||||
$this->drupalPlaceBlock('system_breadcrumb_block');
|
||||
$this->drupalPlaceBlock('page_title_block');
|
||||
|
||||
$this->adminUser = $this->drupalCreateUser(['administer nodes', 'create article content', 'create page content', 'post comments']);
|
||||
$this->adminUser = $this->drupalCreateUser([
|
||||
'administer nodes',
|
||||
'create article content',
|
||||
'create page content',
|
||||
'post comments',
|
||||
]);
|
||||
$this->drupalLogin($this->adminUser);
|
||||
$this->addDefaultCommentField('node', 'page');
|
||||
}
|
||||
|
||||
@@ -22,7 +22,10 @@ class NodeTitleXSSTest extends NodeTestBase {
|
||||
*/
|
||||
public function testNodeTitleXSS() {
|
||||
// Prepare a user to do the stuff.
|
||||
$web_user = $this->drupalCreateUser(['create page content', 'edit any page content']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'create page content',
|
||||
'edit any page content',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
|
||||
$xss = '<script>alert("xss")</script>';
|
||||
|
||||
@@ -26,7 +26,14 @@ class NodeTypeInitialLanguageTest extends NodeTestBase {
|
||||
protected function setUp() {
|
||||
parent::setUp();
|
||||
|
||||
$web_user = $this->drupalCreateUser(['bypass node access', 'administer content types', 'administer node fields', 'administer node form display', 'administer node display', 'administer languages']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'bypass node access',
|
||||
'administer content types',
|
||||
'administer node fields',
|
||||
'administer node form display',
|
||||
'administer node display',
|
||||
'administer languages',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
}
|
||||
|
||||
|
||||
@@ -60,14 +60,19 @@ class NodeTypeTest extends NodeTestBase {
|
||||
$this->assertTrue($type_exists, 'The new content type has been created in the database.');
|
||||
|
||||
// Log in a test user.
|
||||
$web_user = $this->drupalCreateUser(['create ' . $type->label() . ' content']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'create ' . $type->label() . ' content',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
|
||||
$this->drupalGet('node/add/' . $type->id());
|
||||
$this->assertSession()->statusCodeEquals(200);
|
||||
|
||||
// Create a content type via the user interface.
|
||||
$web_user = $this->drupalCreateUser(['bypass node access', 'administer content types']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'bypass node access',
|
||||
'administer content types',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
|
||||
$this->drupalGet('node/add');
|
||||
@@ -96,7 +101,11 @@ class NodeTypeTest extends NodeTestBase {
|
||||
public function testNodeTypeEditing() {
|
||||
$assert = $this->assertSession();
|
||||
$this->drupalPlaceBlock('system_breadcrumb_block');
|
||||
$web_user = $this->drupalCreateUser(['bypass node access', 'administer content types', 'administer node fields']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'bypass node access',
|
||||
'administer content types',
|
||||
'administer node fields',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
|
||||
$field = FieldConfig::loadByName('node', 'page', 'body');
|
||||
@@ -202,7 +211,7 @@ class NodeTypeTest extends NodeTestBase {
|
||||
// way installing a module through the UI does.
|
||||
$this->resetAll();
|
||||
$this->drupalGet('admin/structure/types/manage/default');
|
||||
$this->assertNoLink(t('Delete'));
|
||||
$this->assertSession()->linkNotExists(t('Delete'));
|
||||
$this->drupalGet('admin/structure/types/manage/default/delete');
|
||||
$this->assertSession()->statusCodeEquals(403);
|
||||
$this->container->get('module_installer')->uninstall(['node_test_config']);
|
||||
@@ -221,7 +230,10 @@ class NodeTypeTest extends NodeTestBase {
|
||||
*/
|
||||
public function testNodeTypeFieldUiPermissions() {
|
||||
// Create an admin user who can only manage node fields.
|
||||
$admin_user_1 = $this->drupalCreateUser(['administer content types', 'administer node fields']);
|
||||
$admin_user_1 = $this->drupalCreateUser([
|
||||
'administer content types',
|
||||
'administer node fields',
|
||||
]);
|
||||
$this->drupalLogin($admin_user_1);
|
||||
|
||||
// Test that the user only sees the actions available to them.
|
||||
@@ -230,7 +242,10 @@ class NodeTypeTest extends NodeTestBase {
|
||||
$this->assertNoLinkByHref('admin/structure/types/manage/article/display');
|
||||
|
||||
// Create another admin user who can manage node fields display.
|
||||
$admin_user_2 = $this->drupalCreateUser(['administer content types', 'administer node display']);
|
||||
$admin_user_2 = $this->drupalCreateUser([
|
||||
'administer content types',
|
||||
'administer node display',
|
||||
]);
|
||||
$this->drupalLogin($admin_user_2);
|
||||
|
||||
// Test that the user only sees the actions available to them.
|
||||
|
||||
@@ -59,7 +59,11 @@ class PagePreviewTest extends NodeTestBase {
|
||||
parent::setUp();
|
||||
$this->addDefaultCommentField('node', 'page');
|
||||
|
||||
$web_user = $this->drupalCreateUser(['edit own page content', 'create page content', 'administer menu']);
|
||||
$web_user = $this->drupalCreateUser([
|
||||
'edit own page content',
|
||||
'create page content',
|
||||
'administer menu',
|
||||
]);
|
||||
$this->drupalLogin($web_user);
|
||||
|
||||
// Add a vocabulary so we can test different view modes.
|
||||
@@ -200,10 +204,10 @@ class PagePreviewTest extends NodeTestBase {
|
||||
// Check that the preview is displaying the title, body and term.
|
||||
$expected_title = $edit[$title_key] . ' | Drupal';
|
||||
$this->assertSession()->titleEquals($expected_title);
|
||||
$this->assertEscaped($edit[$title_key], 'Title displayed and escaped.');
|
||||
$this->assertEscaped($edit[$title_key]);
|
||||
$this->assertText($edit[$body_key], 'Body displayed.');
|
||||
$this->assertText($edit[$term_key], 'Term displayed.');
|
||||
$this->assertLink(t('Back to content editing'));
|
||||
$this->assertSession()->linkExists(t('Back to content editing'));
|
||||
|
||||
// Check that we see the class of the node type on the body element.
|
||||
$body_class_element = $this->xpath("//body[contains(@class, 'page-node-type-page')]");
|
||||
@@ -240,10 +244,10 @@ class PagePreviewTest extends NodeTestBase {
|
||||
// Return to page preview to check everything is as expected.
|
||||
$this->drupalPostForm(NULL, [], t('Preview'));
|
||||
$this->assertSession()->titleEquals($expected_title);
|
||||
$this->assertEscaped($edit[$title_key], 'Title displayed and escaped.');
|
||||
$this->assertEscaped($edit[$title_key]);
|
||||
$this->assertText($edit[$body_key], 'Body displayed.');
|
||||
$this->assertText($edit[$term_key], 'Term displayed.');
|
||||
$this->assertLink(t('Back to content editing'));
|
||||
$this->assertSession()->linkExists(t('Back to content editing'));
|
||||
|
||||
// Assert the content is kept when reloading the page.
|
||||
$this->drupalGet('node/add/page', ['query' => ['uuid' => $uuid]]);
|
||||
@@ -274,9 +278,9 @@ class PagePreviewTest extends NodeTestBase {
|
||||
$this->assertRaw('>' . $newterm1 . '<', 'First new term displayed.');
|
||||
$this->assertRaw('>' . $newterm2 . '<', 'Second new term displayed.');
|
||||
// The first term should be displayed as link, the others not.
|
||||
$this->assertLink($this->term->getName());
|
||||
$this->assertNoLink($newterm1);
|
||||
$this->assertNoLink($newterm2);
|
||||
$this->assertSession()->linkExists($this->term->getName());
|
||||
$this->assertSession()->linkNotExists($newterm1);
|
||||
$this->assertSession()->linkNotExists($newterm2);
|
||||
|
||||
$this->drupalPostForm('node/' . $node->id() . '/edit', $edit, t('Save'));
|
||||
|
||||
@@ -290,9 +294,9 @@ class PagePreviewTest extends NodeTestBase {
|
||||
$this->assertRaw('>' . $newterm2 . '<', 'Second existing term displayed.');
|
||||
$this->assertRaw('>' . $newterm3 . '<', 'Third new term displayed.');
|
||||
$this->assertNoText($this->term->getName());
|
||||
$this->assertLink($newterm1);
|
||||
$this->assertLink($newterm2);
|
||||
$this->assertNoLink($newterm3);
|
||||
$this->assertSession()->linkExists($newterm1);
|
||||
$this->assertSession()->linkExists($newterm2);
|
||||
$this->assertSession()->linkNotExists($newterm3);
|
||||
|
||||
// Check that editing an existing node after it has been previewed and not
|
||||
// saved doesn't remember the previous changes.
|
||||
|
||||
@@ -161,7 +161,12 @@ class BulkFormAccessTest extends NodeTestBase {
|
||||
'uid' => $author->id(),
|
||||
]);
|
||||
// Create an account that may view the private node, but not delete it.
|
||||
$account = $this->drupalCreateUser(['access content', 'administer nodes', 'delete own article content', 'node test view']);
|
||||
$account = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'administer nodes',
|
||||
'delete own article content',
|
||||
'node test view',
|
||||
]);
|
||||
// Create a node that may be deleted too, to ensure the delete confirmation
|
||||
// page is shown later. In node_access_test.module, nodes may only be
|
||||
// deleted by the author.
|
||||
|
||||
@@ -91,7 +91,11 @@ class BulkFormTest extends NodeTestBase {
|
||||
$this->assertCount(10, $view->result, 'All created translations are selected.');
|
||||
|
||||
// Check the operations are accessible to the logged in user.
|
||||
$this->drupalLogin($this->drupalCreateUser(['administer nodes', 'access content overview', 'bypass node access']));
|
||||
$this->drupalLogin($this->drupalCreateUser([
|
||||
'administer nodes',
|
||||
'access content overview',
|
||||
'bypass node access',
|
||||
]));
|
||||
$this->drupalGet('test-node-bulk-form');
|
||||
$elements = $this->xpath('//select[@id="edit-action"]//option');
|
||||
$this->assertCount(8, $elements, 'All node operations are found.');
|
||||
|
||||
@@ -53,7 +53,10 @@ class FilterNodeAccessTest extends NodeTestBase {
|
||||
$this->users = [];
|
||||
|
||||
for ($i = 0; $i < $num_simple_users; $i++) {
|
||||
$this->users[$i] = $this->drupalCreateUser(['access content', 'create article content']);
|
||||
$this->users[$i] = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'create article content',
|
||||
]);
|
||||
}
|
||||
foreach ($this->users as $web_user) {
|
||||
$this->drupalLogin($web_user);
|
||||
@@ -100,7 +103,10 @@ class FilterNodeAccessTest extends NodeTestBase {
|
||||
$this->assertNoText('Private Article created by ' . $this->users[0]->getAccountName());
|
||||
|
||||
// Test that a user with administer nodes permission can't see all nodes.
|
||||
$administer_nodes_user = $this->drupalCreateUser(['access content', 'administer nodes']);
|
||||
$administer_nodes_user = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'administer nodes',
|
||||
]);
|
||||
$this->drupalLogin($administer_nodes_user);
|
||||
$this->drupalGet('test_filter_node_access');
|
||||
$this->assertNoText('Private Article created by ' . $this->users[0]->getAccountName());
|
||||
@@ -109,7 +115,10 @@ class FilterNodeAccessTest extends NodeTestBase {
|
||||
$this->assertText('Public Article created by ' . $this->users[1]->getAccountName());
|
||||
|
||||
// Test that a user with bypass node access can see all nodes.
|
||||
$bypass_access_user = $this->drupalCreateUser(['access content', 'bypass node access']);
|
||||
$bypass_access_user = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'bypass node access',
|
||||
]);
|
||||
$this->drupalLogin($bypass_access_user);
|
||||
$this->drupalGet('test_filter_node_access');
|
||||
$this->assertText('Private Article created by ' . $this->users[0]->getAccountName());
|
||||
|
||||
@@ -103,7 +103,10 @@ class NodeLanguageTest extends NodeTestBase {
|
||||
|
||||
$this->container->get('router.builder')->rebuild();
|
||||
|
||||
$user = $this->drupalCreateUser(['access content overview', 'access content']);
|
||||
$user = $this->drupalCreateUser([
|
||||
'access content overview',
|
||||
'access content',
|
||||
]);
|
||||
$this->drupalLogin($user);
|
||||
}
|
||||
|
||||
|
||||
@@ -32,7 +32,13 @@ class RevisionLinkTest extends NodeTestBase {
|
||||
// Create one user which can view/revert and delete and one which can only
|
||||
// do one of them.
|
||||
$this->drupalCreateContentType(['name' => 'page', 'type' => 'page']);
|
||||
$account = $this->drupalCreateUser(['revert all revisions', 'view all revisions', 'delete all revisions', 'edit any page content', 'delete any page content']);
|
||||
$account = $this->drupalCreateUser([
|
||||
'revert all revisions',
|
||||
'view all revisions',
|
||||
'delete all revisions',
|
||||
'edit any page content',
|
||||
'delete any page content',
|
||||
]);
|
||||
$this->drupalLogin($account);
|
||||
// Create two nodes, one without an additional revision and one with a
|
||||
// revision.
|
||||
@@ -70,8 +76,14 @@ class RevisionLinkTest extends NodeTestBase {
|
||||
|
||||
$accounts = [
|
||||
'view' => $this->drupalCreateUser(['view all revisions']),
|
||||
'revert' => $this->drupalCreateUser(['revert all revisions', 'edit any page content']),
|
||||
'delete' => $this->drupalCreateUser(['delete all revisions', 'delete any page content']),
|
||||
'revert' => $this->drupalCreateUser([
|
||||
'revert all revisions',
|
||||
'edit any page content',
|
||||
]),
|
||||
'delete' => $this->drupalCreateUser([
|
||||
'delete all revisions',
|
||||
'delete any page content',
|
||||
]),
|
||||
];
|
||||
|
||||
$url = $nodes[1]->toUrl()->toString();
|
||||
|
||||
@@ -150,7 +150,10 @@ class NodeAccessLanguageTest extends NodeAccessTestBase {
|
||||
|
||||
// Creating a private node with langcode Catalan to test that the
|
||||
// node_access_test_secret_catalan flag works.
|
||||
$private_ca_user = $this->drupalCreateUser(['access content', 'node test view']);
|
||||
$private_ca_user = $this->drupalCreateUser([
|
||||
'access content',
|
||||
'node test view',
|
||||
]);
|
||||
$node_private_ca = $this->drupalCreateNode(['body' => [[]], 'langcode' => 'ca', 'private' => TRUE]);
|
||||
$this->assertTrue($node_private_ca->language()->getId() == 'ca', 'Node created as Catalan.');
|
||||
|
||||
|
||||
Reference in New Issue
Block a user