summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorwebchick2015-02-13 21:49:09 (GMT)
committerwebchick2015-02-13 21:49:09 (GMT)
commit08f02073d5e234dc16f3855f9187df1971407c4d (patch)
treea9a07b0897abee8dbb69a829270460c7f68cb96c
parent0de81e316d99e8e3dea5078dc951cb2fb98184db (diff)
Revert "Issue #1986330 by subhojit777, marcelodornelas, wheatpenny, kasperg, timaholt, stefank, AkshayKalose, develCuy, valthebald, moymilo, YesCT, dawehner, tstoeckler: When Batch ID doesn't exist, Drupal should emit a 404"
Somehow broke testbot/HEAD. Reverting for now. This reverts commit 30432a03b74b9e682ef931e07cb951bdea4befa8.
-rw-r--r--core/includes/batch.inc5
-rw-r--r--core/tests/Drupal/Tests/Core/Batch/BatchNotFoundTest.php76
2 files changed, 2 insertions, 79 deletions
diff --git a/core/includes/batch.inc b/core/includes/batch.inc
index 89bd7e4..7d905cd 100644
--- a/core/includes/batch.inc
+++ b/core/includes/batch.inc
@@ -15,7 +15,6 @@
*/
use Drupal\Component\Utility\SafeMarkup;
-use Drupal\Component\Utility\String;
use Drupal\Component\Utility\Timer;
use Drupal\Component\Utility\UrlHelper;
use Drupal\Core\Batch\Percentage;
@@ -24,7 +23,6 @@ use Drupal\Core\Url;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\RedirectResponse;
-use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
/**
* Renders the batch processing page based on the current state of the batch.
@@ -45,7 +43,8 @@ function _batch_page(Request $request) {
if (!$batch) {
$batch = \Drupal::service('batch.storage')->load($request_id);
if (!$batch) {
- throw new NotFoundHttpException(String::format('Batch %id requested, but not found.', array('%id' => $request_id)));
+ drupal_set_message(t('No active batch.'), 'error');
+ return new RedirectResponse(\Drupal::url('<front>', [], ['absolute' => TRUE]));
}
}
// Restore safe strings from previous batches.
diff --git a/core/tests/Drupal/Tests/Core/Batch/BatchNotFoundTest.php b/core/tests/Drupal/Tests/Core/Batch/BatchNotFoundTest.php
deleted file mode 100644
index 2105599..0000000
--- a/core/tests/Drupal/Tests/Core/Batch/BatchNotFoundTest.php
+++ /dev/null
@@ -1,76 +0,0 @@
-<?php
-
-/**
- * @file
- * Contains \Drupal\Tests\Core\Batch\BatchNotFoundTest.
- */
-
-namespace Drupal\Tests\Core\Batch;
-
-use Drupal\simpletest\WebTestBase;
-
-/**
- * Tests if Drupal returns page not found error when batch ID does not exist.
- *
- * @group Batch
- */
-class BatchNotFoundTest extends WebTestBase {
-
- /**
- * The main user for testing.
- *
- * @var object
- */
- protected $userToBeDeleted;
-
- /**
- * Administrator user.
- *
- * @var object
- */
- protected $adminUser;
-
- /**
- * Modules to enable.
- *
- * @var array
- */
- public static $modules = array('views');
-
- /**
- * {@inheritdoc}
- */
- protected function setUp() {
- parent::setUp();
-
- $this->adminUser = $this->drupalCreateUser(array('administer users'));;
- $this->userToBeDeleted = $this->drupalCreateUser();
- }
-
- /**
- * Tests for page not found error if batch ID does not exist.
- */
- public function testBatchNotFound() {
- $this->drupalLogin($this->adminUser);
-
- // Replicate a batch process by cancelling a user.
- $edit = array(
- 'action' => 'user_cancel_user_action',
- 'user_bulk_form[2]' => TRUE,
- );
- $this->drupalPostForm('admin/people', $edit, t('Apply'));
- $this->drupalPostForm(NULL, array(), t('Cancel accounts'));
-
- $batch_id = db_next_id();
-
- $this->drupalGet('batch', array(
- 'query' => array(
- 'op' => 'start',
- 'id' => $batch_id,
- ),
- ));
-
- $this->assertResponse(404);
- }
-
-}