Working on #1 - FDA import process works. 3 hours for first import, 1.25 hours on subsequent updates.
This commit is contained in:
56
tests/importers/test_fda_importer.py
Normal file
56
tests/importers/test_fda_importer.py
Normal file
@@ -0,0 +1,56 @@
|
||||
import os
|
||||
import nose
|
||||
from nose.tools import raises
|
||||
import mercy.models
|
||||
import mercy.importers.fda
|
||||
import mercy.exceptions
|
||||
|
||||
VALID_ROWS=[]
|
||||
|
||||
FIXTUREFILE=os.path.abspath(
|
||||
os.path.join(
|
||||
__file__,
|
||||
"..",
|
||||
"fixtures",
|
||||
"fda_database.tar.gz"
|
||||
)
|
||||
)
|
||||
|
||||
FIXTUREFILE_BAD=os.path.abspath(
|
||||
os.path.join(
|
||||
__file__,
|
||||
"..",
|
||||
"fixtures",
|
||||
"fda_database_bad.tar.gz"
|
||||
)
|
||||
)
|
||||
|
||||
FIXTUREFILE_CORRUPT=os.path.abspath(
|
||||
os.path.join(
|
||||
__file__,
|
||||
"..",
|
||||
"fixtures",
|
||||
"fda_database_corrupt.tar.gz"
|
||||
)
|
||||
)
|
||||
|
||||
@raises(mercy.exceptions.CorruptTarError)
|
||||
def test_fda_import_fails_on_corrupt_tar():
|
||||
importer = mercy.importers.fda.FDAImporter()
|
||||
impoter.read(FIXTUREFILE_CORRUPT)
|
||||
|
||||
def test_fda_import_populates_table():
|
||||
importer = FDAImporter().read(FIXTUREFILE)
|
||||
rows = mercy.models.fda.Product.query.all()
|
||||
for i in range(0, len(rows)):
|
||||
row = rows[i]
|
||||
canned_row = CANNED_ROWS[i]
|
||||
assert(len(row) == len(canned_row))
|
||||
for j in canned_row.keys():
|
||||
assert(row[j] == canned_row[j])
|
||||
|
||||
@raises(AttributeError, KeyError, ValueError)
|
||||
def test_fda_import_rejects_bad_records:
|
||||
importer = mercy.importers.fda.FDAImporter()
|
||||
importer.read(FIXTUREFILE_BAD)
|
||||
|
||||
Reference in New Issue
Block a user