function BatchControllerTest::testBatchPageTitle

Same name and namespace in other branches
  1. 11.x core/modules/system/tests/src/Unit/Batch/BatchControllerTest.php \Drupal\Tests\system\Unit\Batch\BatchControllerTest::testBatchPageTitle()

Tests title callback.

@covers ::batchPageTitle

File

core/modules/system/tests/src/Unit/Batch/BatchControllerTest.php, line 26

Class

BatchControllerTest
Tests for the batch controller class.

Namespace

Drupal\Tests\system\Unit\Batch

Code

public function testBatchPageTitle() : void {
  $batch_storage = $this->createMock(BatchStorageInterface::class);
  $controller = new BatchController($this->root, $batch_storage);
  require_once $this->root . '/core/includes/form.inc';
  $this->assertSame('', $controller->batchPageTitle(new Request()));
  // Test no batch loaded from storage and batch loaded from storage cases.
  $batch = [
    'sets' => [
      [
        'title' => 'foobar',
      ],
    ],
    'current_set' => 0,
  ];
  $batch_storage->method('load')
    ->willReturn(FALSE, $batch);
  $this->assertSame('', $controller->batchPageTitle(new Request([
    'id' => 1234,
  ])));
  $this->assertSame('foobar', $controller->batchPageTitle(new Request([
    'id' => 1234,
  ])));
  // Test batch returned by &batch_get() call.
  $batch =& batch_get();
  $batch['sets']['0']['title'] = 'Updated title';
  $this->assertSame('Updated title', $controller->batchPageTitle(new Request([
    'id' => 1234,
  ])));
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.