You are here

protected function MigrateExecutableMemoryExceededTest::runMemoryExceededTest in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/modules/migrate/tests/src/Unit/MigrateExecutableMemoryExceededTest.php \Drupal\Tests\migrate\Unit\MigrateExecutableMemoryExceededTest::runMemoryExceededTest()

Runs the actual test.

Parameters

string $message: The second message to assert.

bool $memory_exceeded: Whether to test the memory exceeded case.

int $memory_usage_first: (optional) The first memory usage value.

int $memory_usage_second: (optional) The fake amount of memory usage reported after memory reclaim.

int $memory_limit: (optional) The memory limit.

3 calls to MigrateExecutableMemoryExceededTest::runMemoryExceededTest()
MigrateExecutableMemoryExceededTest::testMemoryExceededClearedEnough in core/modules/migrate/tests/src/Unit/MigrateExecutableMemoryExceededTest.php
Tests memoryExceeded method when enough is cleared.
MigrateExecutableMemoryExceededTest::testMemoryExceededNewBatch in core/modules/migrate/tests/src/Unit/MigrateExecutableMemoryExceededTest.php
Tests memoryExceeded method when a new batch is needed.
MigrateExecutableMemoryExceededTest::testMemoryNotExceeded in core/modules/migrate/tests/src/Unit/MigrateExecutableMemoryExceededTest.php
Tests memoryExceeded when memory usage is not exceeded.

File

core/modules/migrate/tests/src/Unit/MigrateExecutableMemoryExceededTest.php, line 78
Contains \Drupal\Tests\migrate\Unit\MigrateExecutableMemoryExceededTest.

Class

MigrateExecutableMemoryExceededTest
Tests the \Drupal\migrate\MigrateExecutable::memoryExceeded() method.

Namespace

Drupal\Tests\migrate\Unit

Code

protected function runMemoryExceededTest($message, $memory_exceeded, $memory_usage_first = NULL, $memory_usage_second = NULL, $memory_limit = NULL) {
  $this->executable
    ->setMemoryLimit($memory_limit ?: $this->memoryLimit);
  $this->executable
    ->setMemoryUsage($memory_usage_first ?: $this->memoryLimit, $memory_usage_second ?: $this->memoryLimit);
  $this->executable
    ->setMemoryThreshold(0.85);
  if ($message) {
    $this->executable->message
      ->expects($this
      ->at(0))
      ->method('display')
      ->with($this
      ->stringContains('reclaiming memory'));
    $this->executable->message
      ->expects($this
      ->at(1))
      ->method('display')
      ->with($this
      ->stringContains($message));
  }
  else {
    $this->executable->message
      ->expects($this
      ->never())
      ->method($this
      ->anything());
  }
  $result = $this->executable
    ->memoryExceeded();
  $this
    ->assertEquals($memory_exceeded, $result);
}