function NodeQueryAlterTest::testNodeQueryAlterLowLevelWithAccess

Tests 'node_access' query alter, for user with access.

Verifies that a non-standard table alias can be used, and that a user with node access can view the nodes.

File

drupal/core/modules/node/lib/Drupal/node/Tests/NodeQueryAlterTest.php, line 91
Definition of Drupal\node\Tests\NodeQueryAlterTest.

Class

NodeQueryAlterTest
Tests node_query_node_access_alter().

Namespace

Drupal\node\Tests

Code

function testNodeQueryAlterLowLevelWithAccess() {

  // User with access should be able to view 4 nodes.
  try {
    $query = db_select('node', 'mytab')
      ->fields('mytab');
    $query
      ->addTag('node_access');
    $query
      ->addMetaData('op', 'view');
    $query
      ->addMetaData('account', $this->accessUser);
    $result = $query
      ->execute()
      ->fetchAll();
    $this
      ->assertEqual(count($result), 4, 'User with access can see correct nodes');
  } catch (Exception $e) {
    $this
      ->fail(t('Altered query is malformed'));
  }
}