diff --git a/core/modules/block/src/Tests/BlockUiTest.php b/core/modules/block/src/Tests/BlockUiTest.php
index 4dc388f..c92418b 100644
--- a/core/modules/block/src/Tests/BlockUiTest.php
+++ b/core/modules/block/src/Tests/BlockUiTest.php
@@ -214,4 +214,31 @@ public function testBlockPlacementIndicator() {
     $this->assertUrl('admin/structure/block/list/classy');
   }
 
+  /**
+   * Tests that the redirect destination is correct after deleting a block.
+   */
+  public function testBlockDeleteDestination() {
+    // Enable a second theme.
+    \Drupal::service('theme_handler')->install(['bartik']);
+
+    // Delete the first block in the other theme.
+    $this->drupalGet('admin/structure/block/list/bartik');
+    $this->clickLink('Delete');
+    $this->drupalPostForm(NULL, [], 'Delete');
+
+    // Ensure we are taken back to the block list for this theme, and that the
+    // block was deleted.
+    $this->assertUrl('admin/structure/block/list/bartik');
+    $this->assertRaw(t('The block %name has been deleted.', ['%name' => $this->blocks[1]->label()]));
+
+    // Delete the second block in the other theme.
+    $this->drupalGet('admin/structure/block/list/bartik', ['query' => ['destination' => 'admin']]);
+    $this->clickLink('Delete');
+    $this->drupalPostForm(NULL, [], 'Delete');
+
+    // Ensure the ?destination string is respected.
+    $this->assertUrl('admin');
+    $this->assertRaw(t('The block %name has been deleted.', ['%name' => $this->blocks[0]->label()]));
+  }
+
 }
