* If the source is an array, it is returned unchanged. * If the source is a string, is is converted depending on CONFIGURATION_STRING_FORMAT, which can be STRING_FORMAT_CSV or STRING_FORMAT_JSON. For CSV the delimiter can be set via CONFIGURATION_STRING_DELIMITER. * If the source is a PersistentResource object, it is converted to an array. The actual resource content is either embedded as base64-encoded data or saved to a file, depending on CONFIGURATION_RESOURCE_EXPORT_TYPE. For RESOURCE_EXPORT_TYPE_FILE the setting CONFIGURATION_RESOURCE_SAVE_PATH must be set as well.
Inheritance: extends AbstractTypeConverter
 /**
  * @test
  * @dataProvider stringToArrayDataProvider
  */
 public function canConvertFromStringToArray($source, $expectedResult, $mappingConfiguration)
 {
     // Create a map of arguments to return values.
     $configurationValueMap = [];
     foreach ($mappingConfiguration as $setting => $value) {
         $configurationValueMap[] = [ArrayConverter::class, $setting, $value];
     }
     $propertyMappingConfiguration = $this->createMock(PropertyMappingConfiguration::class);
     $propertyMappingConfiguration->expects($this->any())->method('getConfigurationValue')->will($this->returnValueMap($configurationValueMap));
     $this->assertEquals($expectedResult, $this->converter->convertFrom($source, 'array', [], $propertyMappingConfiguration));
 }