protected static function resolveCustomFieldsInstructionDataIntoImportAndSaveImport(ImportDataAnalyzer $importDataAnalyzer, Import $import)
 {
     $adapter = new ImportToCustomFieldsInstructionDataAdapter($import);
     $adapter->appendCustomFieldsInstructionData($importDataAnalyzer->getCustomFieldsInstructionData());
     $saved = $import->save();
     if (!$saved) {
         throw new FailedToSaveModelException();
     }
 }
 /**
  * @depends testAppendCustomFieldsInstructionDataForAddMissingValues
  */
 public function testAppendCustomFieldsInstructionDataForMapMissingValues()
 {
     $import = new Import();
     $customFieldsInstructionData = new CustomFieldsInstructionData();
     $this->assertNull($import->serializedData);
     $missingCustomFieldValues = array(CustomFieldsInstructionData::MAP_MISSING_VALUES => array('a' => 'b2', 'b' => 'b2', 'c' => 'c2'));
     $customFieldsInstructionData->addByInstructionsDataAndColumnName($missingCustomFieldValues, 'column_0');
     $adapter = new ImportToCustomFieldsInstructionDataAdapter($import);
     $adapter->appendCustomFieldsInstructionData($customFieldsInstructionData);
     $compareData = array('column_0' => array('customFieldsInstructionData' => array(CustomFieldsInstructionData::MAP_MISSING_VALUES => array('a' => 'b2', 'b' => 'b2', 'c' => 'c2'))));
     $unserializedData = unserialize($import->serializedData);
     $this->assertEquals($compareData, $unserializedData['mappingData']);
     //Now append the existing and that it doesn't duplicate existing values
     $customFieldsInstructionData = new CustomFieldsInstructionData();
     $missingCustomFieldValues = array(CustomFieldsInstructionData::MAP_MISSING_VALUES => array('a' => 'a2', 'd' => 'd2'));
     $customFieldsInstructionData->addByInstructionsDataAndColumnName($missingCustomFieldValues, 'column_0');
     $adapter = new ImportToCustomFieldsInstructionDataAdapter($import);
     $adapter->appendCustomFieldsInstructionData($customFieldsInstructionData);
     $compareData = array('column_0' => array('customFieldsInstructionData' => array(CustomFieldsInstructionData::MAP_MISSING_VALUES => array('a' => 'b2', 'b' => 'b2', 'c' => 'c2', 'd' => 'd2'))));
     $unserializedData = unserialize($import->serializedData);
     $this->assertEquals($compareData, $unserializedData['mappingData']);
 }