Skip to content

Commit

Permalink
passing field name to parse_timestamp function
Browse files Browse the repository at this point in the history
  • Loading branch information
carlosp420 committed May 5, 2015
1 parent c6f2cdd commit 62747db
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 12 deletions.
16 changes: 8 additions & 8 deletions voseq/public_interface/management/commands/_migrate_db.py
Expand Up @@ -85,7 +85,7 @@ def import_table_genes(self):
self.parse_table_genes(self.dump_string)

for item in self.table_genes_items:
date_obj = self.parse_timestamp(item['timestamp'])
date_obj = self.parse_timestamp(item['timestamp'], 'timestamp')

item['time_created'] = date_obj
del item['timestamp']
Expand Down Expand Up @@ -293,8 +293,8 @@ def import_table_sequences(self):
item['gene_code'] = item['geneCode']
del item['geneCode']

item['time_created'] = self.parse_timestamp(item['time_created'])
item['time_edited'] = self.parse_timestamp(item['time_edited'])
item['time_created'] = self.parse_timestamp(item['time_created'], 'time_created')
item['time_edited'] = self.parse_timestamp(item['time_edited'], 'time_edited')

if item['sequences'] is not None:
ambiguous_chars = item['sequences'].count('?') + item['sequences'].count('-')
Expand Down Expand Up @@ -480,9 +480,9 @@ def import_table_vouchers(self):
if item['longitude'] is not None:
item['longitude'] = float(item['longitude'])

item['dateCollection'] = self.parse_timestamp(item['dateCollection'])
item['dateExtraction'] = self.parse_timestamp(item['dateExtraction'])
item['timestamp'] = self.parse_timestamp(item['timestamp'])
item['dateCollection'] = self.parse_timestamp(item['dateCollection'], 'dateCollection')
item['dateExtraction'] = self.parse_timestamp(item['dateExtraction'], 'dateExtraction')
item['timestamp'] = self.parse_timestamp(item['timestamp'], 'timestamp')

# Deal with flickr images
if item['voucherImage'] == '':
Expand Down Expand Up @@ -652,7 +652,7 @@ def convert_to_int(self, string):
string = None
return string

def parse_timestamp(self, timestamp):
def parse_timestamp(self, timestamp, field):
try:
date_obj = datetime.datetime.strptime(timestamp,
'%Y-%m-%d %H:%M:%S').replace(tzinfo=TZINFO)
Expand All @@ -662,5 +662,5 @@ def parse_timestamp(self, timestamp):
date_obj = None

if self.verbosity != 0:
print("WARNING:: Could not parse dateCreation properly.")
print("WARNING:: Could not parse %s properly." % field)
return date_obj
8 changes: 4 additions & 4 deletions voseq/public_interface/tests/test_parse_xml.py
Expand Up @@ -29,24 +29,24 @@ def test_parse_timestamp_good(self):

timestamp = '2014-10-01 10:20:45'
expected = datetime.datetime(2014, 10, 1, 10, 20, 45, tzinfo=TZINFO)
result = self.parse_xml.parse_timestamp(timestamp)
result = self.parse_xml.parse_timestamp(timestamp, 'good')
self.assertEqual(expected, result)

def test_parse_timestamp_bad(self):
timestamp = '0000-00-00 00:00:00'
expected = None
result = self.parse_xml.parse_timestamp(timestamp)
result = self.parse_xml.parse_timestamp(timestamp, 'bad')
self.assertEqual(expected, result)

def test_parse_timestamp_null(self):
timestamp = None
expected = None
result = self.parse_xml.parse_timestamp(timestamp)
result = self.parse_xml.parse_timestamp(timestamp, 'null')
self.assertEqual(expected, result)

def test_parse_timestamp_null_verbose(self):
timestamp = None
expected = None
self.parse_xml.verbosity = 1
result = self.parse_xml.parse_timestamp(timestamp)
result = self.parse_xml.parse_timestamp(timestamp, 'null_verbose')
self.assertEqual(expected, result)

0 comments on commit 62747db

Please sign in to comment.