diff --git a/core/modules/entity/tests/entity_query.test b/core/modules/entity/tests/entity_query.test
index edcf95a..384f2f6 100644
--- a/core/modules/entity/tests/entity_query.test
+++ b/core/modules/entity/tests/entity_query.test
@@ -22,7 +22,7 @@ class EntityFieldQueryTestCase extends WebTestBase {
   }
 
   function setUp() {
-    parent::setUp(array('field_test'));
+    parent::setUp(array('node', 'field_test', 'entity_query_access_test', 'node_access_test'));
 
     field_test_create_bundle('bundle1');
     field_test_create_bundle('bundle2');
@@ -1524,6 +1524,25 @@ class EntityFieldQueryTestCase extends WebTestBase {
   }
 
   /**
+   * Test proper EntityFieldQuery access.
+   */
+  function testEntityFieldQueryAccess() {
+    // Test as a user with ability to bypass node access.
+    $privileged_user = $this->drupalCreateUser(array('bypass node access', 'access content'));
+    $this->drupalLogin($privileged_user);
+    $this->drupalGet('entity-query-access/test/' . $this->fields[0]['field_name']);
+    $this->assertText('Found entity', t('Returned access response with entities.'));
+    $this->drupalLogout();
+
+    // Test as a user that does not have ability to bypass node access or view all nodes.
+    $regular_user = $this->drupalCreateUser(array('access content'));
+    $this->drupalLogin($regular_user);
+    $this->drupalGet('entity-query-access/test/' . $this->fields[0]['field_name']);
+    $this->assertText('Found entity', t('Returned access response with entities.'));
+    $this->drupalLogout();
+  }
+
+  /**
    * Fetches the results of an EntityFieldQuery and compares.
    *
    * @param $query
diff --git a/core/modules/entity/tests/modules/entity_query_access_test/entity_query_access_test.info b/core/modules/entity/tests/modules/entity_query_access_test/entity_query_access_test.info
new file mode 100644
index 0000000..a1db6fe
--- /dev/null
+++ b/core/modules/entity/tests/modules/entity_query_access_test/entity_query_access_test.info
@@ -0,0 +1,6 @@
+name = "Entity query access test"
+description = "Support module for checking entity query results."
+package = Testing
+version = VERSION
+core = 8.x
+hidden = TRUE
diff --git a/core/modules/entity/tests/modules/entity_query_access_test/entity_query_access_test.module b/core/modules/entity/tests/modules/entity_query_access_test/entity_query_access_test.module
new file mode 100644
index 0000000..6787625
--- /dev/null
+++ b/core/modules/entity/tests/modules/entity_query_access_test/entity_query_access_test.module
@@ -0,0 +1,49 @@
+<?php
+
+/**
+ * Implements hook_menu().
+ */
+function entity_query_access_test_menu() {
+  $items['entity-query-access/test/%'] = array(
+    'title' => "Retrieve a sample of entity query access data",
+    'page callback' => 'entity_query_access_test_sample_query',
+    'page arguments' => array(2),
+    'access callback' => TRUE,
+    'type' => MENU_CALLBACK,
+  );
+
+  return $items;
+}
+
+/**
+ * Return the results from an Example EntityFieldQuery.
+ */
+function entity_query_access_test_sample_query($field_name) {
+  global $user;
+
+  // Simulate user does not have access to view all nodes.
+  $access = &drupal_static('node_access_view_all_nodes');
+  $access[$user->uid] = FALSE;
+
+  $query = new EntityFieldQuery();
+  $query
+    ->entityCondition('entity_type', 'test_entity_bundle_key')
+    ->fieldCondition($field_name, 'value', 0, '>')
+    ->entityOrderBy('entity_id', 'ASC');
+  $results = array(
+    'items' => array(),
+    'title' => t('EntityFieldQuery results'),
+  );
+  foreach ($query->execute() as $entity_type => $entity_ids) {
+    foreach ($entity_ids as $entity_id => $entity_stub) {
+      $results['items'][] = t('Found entity of type @entity_type with id @entity_id', array('@entity_type' => $entity_type, '@entity_id' => $entity_id));
+    }
+  }
+  if (count($results['items']) > 0) {
+    $output = theme('item_list', $results);
+  }
+  else {
+    $output = t('No results found with EntityFieldQuery.');
+  }
+  return $output;
+}
