You are here

public function LogTest::providerTestLog in Drupal 9

Provides data for testLog.

Return value

\string[][] An array of test data arrays.

File

core/modules/migrate/tests/src/Unit/process/LogTest.php, line 38

Class

LogTest
Tests the Log process plugin.

Namespace

Drupal\Tests\migrate\Unit\process

Code

public function providerTestLog() {
  $object = (object) [
    'a' => 'test',
    'b' => 'test2',
    'c' => 'test3',
  ];
  $xml_str = <<<XML
<?xml version='1.0'?>
<mathematician>
 <name>Ada Lovelace</name>
</mathematician>
XML;
  return [
    'int zero' => [
      'value' => 0,
      'expected_message' => "'foo' value is '0'",
    ],
    'string empty' => [
      'value' => '',
      'expected_message' => "'foo' value is ''",
    ],
    'string' => [
      'value' => 'Testing the log message',
      'expected_message' => "'foo' value is 'Testing the log message'",
    ],
    'array' => [
      'value' => [
        'key' => 'value',
      ],
      'expected_message' => "'foo' value is 'Array\n(\n    [key] => value\n)\n'",
    ],
    'float' => [
      'value' => 1.123,
      'expected_message' => "'foo' value is '1.123000'",
    ],
    'NULL' => [
      'value' => NULL,
      'expected_message' => "'foo' value is 'NULL'",
    ],
    'boolean' => [
      'value' => TRUE,
      'expected_message' => "'foo' value is 'true'",
    ],
    'object_with_to_String' => [
      'value' => new ObjWithString(),
      'expected_message' => "'foo' value is Drupal\\Tests\\migrate\\Unit\\process\\ObjWithString:\n'a test string'",
    ],
    'object_no_to_string' => [
      'value' => $object,
      'expected_message' => "Unable to log the value for 'foo'",
    ],
    'simple_xml' => [
      'value' => new \SimpleXMLElement($xml_str),
      'expected_message' => "'foo' value is SimpleXMLElement:\n'\n \n'",
    ],
  ];
}