function NodeQueryAlter::testNodeQueryAlterLowLevelEditAccess in Drupal 7
Tests 'node_access' query alter, for edit access.
Verifies that a non-standard table alias can be used, and that a user with view-only node access cannot edit the nodes.
File
- modules/
node/ node.test, line 2334 - Tests for node.module.
Class
Code
function testNodeQueryAlterLowLevelEditAccess() {
// User with view-only access should not be able to edit nodes.
try {
$query = db_select('node', 'mytab')
->fields('mytab');
$query
->addTag('node_access');
$query
->addMetaData('op', 'update');
$query
->addMetaData('account', $this->accessUser);
$result = $query
->execute()
->fetchAll();
$this
->assertEqual(count($result), 0, 'User with view-only access cannot edit nodes');
} catch (Exception $e) {
$this
->fail($e
->getMessage());
$this
->fail((string) $query);
$this
->fail(t('Altered query is malformed'));
}
}