def test_csv_parsing(self): csv_file = StringIO( '10525612,IASPEI,2008-02-09,07:12:06.43,32.4850,-115.2935, 20.6,,' 'IASPEI,MS,4.7,IASPEI,mb, 4.9\n' '10526626,IASPEI,2008-02-11,18:29:32.64,32.4765,-115.2965,16.5,,' 'IASPEI,MS,4.8,IASPEI,mb, 4.8\n') importer = Iaspei(csv_file, self.cat) exp_num_entries = 2 self.assertEqual(exp_num_entries, len( importer._parse_csv(header=False)))
class AIaspeiImporterShould(unittest.TestCase): def setUp(self): self.file = file(DATAFILE_IASPEI) self.cat = catalogue.CatalogueDatabase(memory=True, drop=True) self.csv_importer = Iaspei(self.file, self.cat) def tearDown(self): self.file.close() def test_raise_exception_with_invalid_mag_group(self): # Each mag is well defined when there are Author, Type and Value mag_group = ['IASPEI', 'MS', '3.4', 'IASPEI', 'mb', '4.3', 'NEIC'] with self.assertRaises(InvalidMagnitudeSeq) as exp: self.csv_importer._check_magnitude_group(mag_group) self.assertEqual(Iaspei.ERR_MAG_GROUP, exp.message) def test_csv_parsing(self): csv_file = StringIO( '10525612,IASPEI,2008-02-09,07:12:06.43,32.4850,-115.2935, 20.6,,' 'IASPEI,MS,4.7,IASPEI,mb, 4.9\n' '10526626,IASPEI,2008-02-11,18:29:32.64,32.4765,-115.2965,16.5,,' 'IASPEI,MS,4.8,IASPEI,mb, 4.8\n') importer = Iaspei(csv_file, self.cat) exp_num_entries = 2 self.assertEqual(exp_num_entries, len( importer._parse_csv(header=False))) def test_import_csv_iaspei(self): self.csv_importer.store() summary = self.csv_importer.summary self.assertEqual(summary, { BaseImporter.EVENT_SOURCE: 1, BaseImporter.AGENCY: 1, BaseImporter.ORIGIN: 46, BaseImporter.MEASURE: 61 }) importer = Iaspei(self.file, self.cat) importer.store() def test_importing_once_the_same_csv(self): first_importer = Iaspei(self.file, self.cat) first_importer.store() second_importer = Iaspei(self.file, self.cat) second_importer.store() measures = self.cat.session.query(catalogue.MagnitudeMeasure) self.assertEqual(measures.count(), 61)
def test_import_csv_iaspei(self): self.csv_importer.store() summary = self.csv_importer.summary self.assertEqual(summary, { BaseImporter.EVENT_SOURCE: 1, BaseImporter.AGENCY: 1, BaseImporter.ORIGIN: 46, BaseImporter.MEASURE: 61 }) importer = Iaspei(self.file, self.cat) importer.store()
def test_importing_once_the_same_csv(self): first_importer = Iaspei(self.file, self.cat) first_importer.store() second_importer = Iaspei(self.file, self.cat) second_importer.store() measures = self.cat.session.query(catalogue.MagnitudeMeasure) self.assertEqual(measures.count(), 61)
def test_importing_once_the_same_csv(self): first_importer = Iaspei(self.file, self.cat) first_importer.store() second_importer = Iaspei(self.file, self.cat) second_importer.store() sources = self.cat.session.query(catalogue.EventSource) agencies = self.cat.session.query(catalogue.Agency) events = self.cat.session.query(catalogue.Event) origins = self.cat.session.query(catalogue.Origin) measures = self.cat.session.query(catalogue.MagnitudeMeasure) self.assertEqual(sources.count(), 1) self.assertEqual(agencies.count(), 1) self.assertEqual(events.count(), 46) self.assertEqual(origins.count(), 46) self.assertEqual(measures.count(), 61)
def setUp(self): self.file = file(DATAFILE_IASPEI) self.cat = catalogue.CatalogueDatabase(memory=True, drop=True) self.cat.recreate() self.csv_importer = Iaspei(self.file, self.cat)