testFile = 'tests/modules/Tasks/Bug61172Test.csv'; $_REQUEST = array( // user choice values 'has_header' => 'off', 'firstrow' => base64_encode(serialize(array('0' => 'Foo', '1' => 'Status'))), 'colnum_0' => 'foo', 'colnum_1' => 'status', 'columncount' => '2', 'custom_enclosure' => '"', 'custom_delimiter' => ',', 'source' => 'csv', 'save_map_as' => 'Bug61172TestSaveMap', // import settings values 'importlocale_charset' => 'UTF-8', 'importlocale_currency' => '-99', 'importlocale_dateformat' => 'd/m/Y', 'importlocale_dec_sep' => '.', 'importlocale_default_currency_significant_digits' => '2', 'importlocale_default_locale_name_format' => 's f l', 'importlocale_num_grp_sep' => ',', 'importlocale_timeformat' => 'H:i', 'importlocale_timezone' => 'Europe/Helsinki', 'import_module' => 'Leads', ); } public function tearDown() { SugarTestHelper::tearDown(); $_REQUEST = array(); } public function testSaveMappingFileSavesNumberFieldAssociationCorrectly() { $lead = new Lead(); $importSource = new ImportFile($this->testFile, ',', '', false); $importer = new Bug61172TestImporterMock($importSource, $lead); $importer->saveMappingFile(); $mappingFile = new ImportMap(); $mappingFile->retrieve_by_string_fields(array('name' => $_REQUEST['save_map_as'])); $this->assertNotEmpty($mappingFile->content); $contentFields = explode('&', $mappingFile->content); $this->assertContains('1=status', $contentFields, "Field status should be associated with #1"); $mappingFile->mark_deleted($mappingFile->id); } } class Bug61172TestImporterMock extends Importer { public function saveMappingFile() { parent::saveMappingFile(); } }