You are here

public function RadioactivityProcessorTest::testProcessDecayNoData in Radioactivity 4.0.x

Same name and namespace in other branches
  1. 8.3 tests/src/Unit/RadioactivityProcessorTest.php \Drupal\Tests\radioactivity\Unit\RadioactivityProcessorTest::testProcessDecayNoData()

@covers ::processDecay

File

tests/src/Unit/RadioactivityProcessorTest.php, line 174

Class

RadioactivityProcessorTest
@coversDefaultClass \Drupal\radioactivity\RadioactivityProcessor @group radioactivity

Namespace

Drupal\Tests\radioactivity\Unit

Code

public function testProcessDecayNoData() {
  $profile = 'count';
  $hasData = FALSE;
  $resultCount = 0;
  $configData = $this
    ->prophesize(FieldStorageConfig::class);
  $configData
    ->getSetting('profile')
    ->willReturn($profile);
  $configData
    ->hasData()
    ->willReturn($hasData);
  $data = [
    $configData
      ->reveal(),
  ];
  $this->sut
    ->expects($this
    ->any())
    ->method('getRadioactivityFieldsConfig')
    ->will($this
    ->returnValueMap([
    [
      'radioactivity',
      $data,
    ],
    [
      'radioactivity_reference',
      $data,
    ],
  ]));
  $this->state
    ->set(RadioactivityProcessorInterface::LAST_PROCESSED_STATE_KEY, Argument::any())
    ->shouldBeCalled();
  $this->loggerChannel
    ->notice('Processed @count radioactivity decays.', [
    '@count' => $resultCount,
  ])
    ->shouldBeCalled();
  $result = $this->sut
    ->processDecay();
  $this
    ->assertEquals($resultCount, $result);
}