diff --git a/core/modules/node/lib/Drupal/node/Tests/NodeDeleteTest.php b/core/modules/node/lib/Drupal/node/Tests/NodeDeleteTest.php
new file mode 100644
index 0000000..e4fb5b2
--- /dev/null
+++ b/core/modules/node/lib/Drupal/node/Tests/NodeDeleteTest.php
@@ -0,0 +1,96 @@
+<?php
+
+/**
+ * @file
+ * Contains \Drupal\node\Tests\NodeDeleteTest.
+ */
+
+namespace Drupal\node\Tests;
+
+/**
+ * Tests the cache invalidation of node delete operations.
+ */
+class NodeDeleteTest extends NodeTestBase {
+
+  public static function getInfo() {
+    return array(
+      'name' => 'Node delete cache invalidation',
+      'description' => 'Test cache invalidation when deleting nodes.',
+      'group' => 'Node',
+    );
+  }
+
+  function setUp() {
+    parent::setUp();
+
+    config('system.performance')->set('cache.page.enabled', 1)->save();
+
+    $this->nids = array(
+      $this->drupalCreateNode()->id(),
+      $this->drupalCreateNode()->id(),
+    );
+
+    $this->admin_user = $this->drupalCreateUser(array(
+      'bypass node access',
+      'access content overview',
+      'administer nodes',
+    ));
+  }
+
+  /**
+   * Tests deleting a node clears page cache.
+   */
+  function testNodeDelete() {
+    $node_path = 'node/' . $this->nids[0];
+
+    // View with anonymous user.
+    $this->drupalGet($node_path);
+    $this->assertResponse(200);
+
+    // Login and delete the node.
+    $this->drupalLogin($this->admin_user);
+    $this->drupalGet($node_path . '/delete');
+    $this->drupalPost(NULL, array(), t('Delete'));
+
+    // View with logged in user.
+    $this->drupalGet($node_path);
+    $this->assertResponse(404);
+
+    // View with logged out user.
+    $this->drupalLogout();
+    $this->drupalGet($node_path);
+    $this->assertResponse(404);
+  }
+
+  /**
+   * Tests deleting multiple nodes clears page cache.
+   */
+  function testNodeDeleteMultiple() {
+    $node_path = 'node/' . $this->nids[1];
+
+    // View with anonymous user.
+    $this->drupalGet($node_path);
+    $this->assertResponse(200);
+
+    // Login and delete nodes.
+    $this->drupalLogin($this->admin_user);
+    $this->drupalGet('admin/content');
+    $edit = array(
+      'operation' => 'delete',
+      'nodes[' . $this->nids[0] . ']' => 1,
+      'nodes[' . $this->nids[1] . ']' => 1,
+    );
+    $this->drupalPost(NULL, $edit, t('Update'));
+    $this->drupalPost(NULL, array(), t('Delete'));
+
+    // View with logged in user.
+    $this->drupalGet($node_path);
+    $this->assertResponse(404);
+
+    // View with logged out user.
+    $this->drupalLogout();
+    $this->drupalGet($node_path);
+    $this->assertResponse(404);
+  }
+
+}
