function ProcessingTest::_resultMessages

Same name in other branches
  1. 9 core/modules/system/tests/src/Functional/Batch/ProcessingTest.php \Drupal\Tests\system\Functional\Batch\ProcessingTest::_resultMessages()
  2. 8.9.x core/modules/system/tests/src/Functional/Batch/ProcessingTest.php \Drupal\Tests\system\Functional\Batch\ProcessingTest::_resultMessages()
  3. 10 core/modules/system/tests/src/Functional/Batch/ProcessingTest.php \Drupal\Tests\system\Functional\Batch\ProcessingTest::_resultMessages()

Returns expected result messages for the test batches.

7 calls to ProcessingTest::_resultMessages()
ProcessingTest::testBatchForm in core/modules/system/tests/src/Functional/Batch/ProcessingTest.php
Tests batches defined in a form submit handler.
ProcessingTest::testBatchFormMultipleBatches in core/modules/system/tests/src/Functional/Batch/ProcessingTest.php
Tests batches defined in different submit handlers on the same form.
ProcessingTest::testBatchFormMultistep in core/modules/system/tests/src/Functional/Batch/ProcessingTest.php
Tests batches defined in a multistep form.
ProcessingTest::testBatchFormProgrammatic in core/modules/system/tests/src/Functional/Batch/ProcessingTest.php
Tests batches defined in a programmatically submitted form.
ProcessingTest::testBatchLargePercentage in core/modules/system/tests/src/Functional/Batch/ProcessingTest.php
Tests batches that return $context['finished'] > 1 do in fact complete.

... See full list

File

core/modules/system/tests/src/Functional/Batch/ProcessingTest.php, line 331

Class

ProcessingTest
Tests batch processing in form and non-form workflow.

Namespace

Drupal\Tests\system\Functional\Batch

Code

public function _resultMessages($id) {
    $messages = [];
    // The elapsed time should be either in minutes and seconds or only seconds.
    $pattern_elapsed = ' \\((\\d+ mins? )?\\d+ secs?\\)';
    switch ($id) {
        case 'batch0':
            $messages[] = 'results for batch 0' . $pattern_elapsed . '<div class="item-list"><ul><li>none</li></ul></div>';
            break;
        case 'batch1':
            $messages[] = 'results for batch 1' . $pattern_elapsed . '<div class="item-list"><ul><li>op 1: processed 10 elements</li></ul></div>';
            break;
        case 'batch2':
            $messages[] = 'results for batch 2' . $pattern_elapsed . '<div class="item-list"><ul><li>op 2: processed 10 elements</li></ul></div>';
            break;
        case 'batch3':
            $messages[] = 'results for batch 3' . $pattern_elapsed . '<div class="item-list"><ul><li>op 1: processed 10 elements</li><li>op 2: processed 10 elements</li></ul></div>';
            break;
        case 'batch4':
            $messages[] = 'results for batch 4' . $pattern_elapsed . '<div class="item-list"><ul><li>op 1: processed 10 elements</li></ul></div>';
            $messages = array_merge($messages, $this->_resultMessages('batch2'));
            break;
        case 'batch5':
            $messages[] = 'results for batch 5' . $pattern_elapsed . '<div class="item-list"><ul><li>op 5: processed 10 elements</li></ul></div>';
            break;
        case 'batch6':
            $messages[] = 'results for batch 6' . $pattern_elapsed . '<div class="item-list"><ul><li>op 6: processed 10 elements</li></ul></div>';
            break;
        case 'batch7':
            $messages[] = 'results for batch 7' . $pattern_elapsed . '<div class="item-list"><ul><li>op 7: processed 10 elements</li></ul></div>';
            $messages = array_merge($messages, $this->_resultMessages('batch6'));
            $messages = array_merge($messages, $this->_resultMessages('batch5'));
            break;
        case 'chained':
            $messages = array_merge($messages, $this->_resultMessages('batch1'));
            $messages = array_merge($messages, $this->_resultMessages('batch2'));
            $messages = array_merge($messages, $this->_resultMessages('batch3'));
            break;
    }
    return $messages;
}

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