parent
74bfaaaf57
commit
d5ed949ed6
|
@ -3,7 +3,7 @@ from tests.base_test import BaseTest
|
||||||
from crc import session
|
from crc import session
|
||||||
|
|
||||||
from crc.models.data_store import DataStoreModel
|
from crc.models.data_store import DataStoreModel
|
||||||
from crc.models.file import FileModel
|
from crc.models.file import DocumentModel
|
||||||
from crc.models.task_event import TaskEventModel
|
from crc.models.task_event import TaskEventModel
|
||||||
from crc.services.workflow_service import WorkflowService
|
from crc.services.workflow_service import WorkflowService
|
||||||
|
|
||||||
|
@ -28,7 +28,7 @@ class TestDeleteTaskData(BaseTest):
|
||||||
workflow = self.create_workflow('delete_task_data')
|
workflow = self.create_workflow('delete_task_data')
|
||||||
|
|
||||||
# Make sure there are no files uploaded for workflow yet
|
# Make sure there are no files uploaded for workflow yet
|
||||||
files = session.query(FileModel).filter(FileModel.workflow_id == workflow.id).all()
|
files = session.query(DocumentModel).filter(DocumentModel.workflow_id == workflow.id).all()
|
||||||
self.assertEqual(0, len(files))
|
self.assertEqual(0, len(files))
|
||||||
|
|
||||||
workflow_api = self.get_workflow_api(workflow)
|
workflow_api = self.get_workflow_api(workflow)
|
||||||
|
@ -45,7 +45,7 @@ class TestDeleteTaskData(BaseTest):
|
||||||
'VerDate': '20210721'})
|
'VerDate': '20210721'})
|
||||||
|
|
||||||
# Make sure we have 1 file
|
# Make sure we have 1 file
|
||||||
files = session.query(FileModel).filter(FileModel.workflow_id == workflow.id).all()
|
files = session.query(DocumentModel).filter(DocumentModel.workflow_id == workflow.id).all()
|
||||||
self.assertEqual(1, len(files))
|
self.assertEqual(1, len(files))
|
||||||
|
|
||||||
# Make sure data store is set
|
# Make sure data store is set
|
||||||
|
@ -79,7 +79,7 @@ class TestDeleteTaskData(BaseTest):
|
||||||
]})
|
]})
|
||||||
|
|
||||||
# Make sure we have 2 more files
|
# Make sure we have 2 more files
|
||||||
files = session.query(FileModel).filter(FileModel.workflow_id == workflow.id).all()
|
files = session.query(DocumentModel).filter(DocumentModel.workflow_id == workflow.id).all()
|
||||||
self.assertEqual(3, len(files))
|
self.assertEqual(3, len(files))
|
||||||
|
|
||||||
# Make sure data stores are set for new files
|
# Make sure data stores are set for new files
|
||||||
|
@ -114,7 +114,7 @@ class TestDeleteTaskData(BaseTest):
|
||||||
data_stores = session.query(DataStoreModel).filter(DataStoreModel.file_id == file_id).all()
|
data_stores = session.query(DataStoreModel).filter(DataStoreModel.file_id == file_id).all()
|
||||||
data_stores_1 = session.query(DataStoreModel).filter(DataStoreModel.file_id == file_id_1).all()
|
data_stores_1 = session.query(DataStoreModel).filter(DataStoreModel.file_id == file_id_1).all()
|
||||||
data_stores_2 = session.query(DataStoreModel).filter(DataStoreModel.file_id == file_id_2).all()
|
data_stores_2 = session.query(DataStoreModel).filter(DataStoreModel.file_id == file_id_2).all()
|
||||||
files = session.query(FileModel).filter(FileModel.workflow_id == workflow.id).all()
|
files = session.query(DocumentModel).filter(DocumentModel.workflow_id == workflow.id).all()
|
||||||
task_events = session.query(TaskEventModel).\
|
task_events = session.query(TaskEventModel).\
|
||||||
filter(TaskEventModel.workflow_id == workflow.id).\
|
filter(TaskEventModel.workflow_id == workflow.id).\
|
||||||
filter(TaskEventModel.action == WorkflowService.TASK_ACTION_COMPLETE).all()
|
filter(TaskEventModel.action == WorkflowService.TASK_ACTION_COMPLETE).all()
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
from tests.base_test import BaseTest
|
from tests.base_test import BaseTest
|
||||||
|
|
||||||
from crc import session
|
from crc import session
|
||||||
from crc.models.file import FileModel, FileDataModel
|
from crc.models.file import DocumentModel
|
||||||
from crc.services.user_file_service import UserFileService
|
from crc.services.user_file_service import UserFileService
|
||||||
|
|
||||||
import io
|
import io
|
||||||
|
@ -38,10 +38,10 @@ class TestGetZippedFiles(BaseTest):
|
||||||
next_task = workflow_api.next_task
|
next_task = workflow_api.next_task
|
||||||
file_model_id = next_task.data['zip_file']['id']
|
file_model_id = next_task.data['zip_file']['id']
|
||||||
|
|
||||||
file_data = session.query(FileDataModel).filter(FileDataModel.file_model_id == file_model_id).first()
|
file_model = session.query(DocumentModel).filter(DocumentModel.file_model_id == file_model_id).first()
|
||||||
|
|
||||||
# Test what we get back in the zipped file
|
# Test what we get back in the zipped file
|
||||||
with zipfile.ZipFile(io.BytesIO(file_data.data), 'r') as zf:
|
with zipfile.ZipFile(io.BytesIO(file_model.data), 'r') as zf:
|
||||||
self.assertIsInstance(zf, zipfile.ZipFile)
|
self.assertIsInstance(zf, zipfile.ZipFile)
|
||||||
for name in zf.namelist():
|
for name in zf.namelist():
|
||||||
info = zf.getinfo(name)
|
info = zf.getinfo(name)
|
||||||
|
@ -54,8 +54,8 @@ class TestGetZippedFiles(BaseTest):
|
||||||
# So, we expect one to be set in the DB
|
# So, we expect one to be set in the DB
|
||||||
self.complete_form(workflow, next_task, {})
|
self.complete_form(workflow, next_task, {})
|
||||||
|
|
||||||
file_1 = session.query(FileModel).filter(FileModel.task_spec == 'Activity_GetZip').first()
|
file_1 = session.query(DocumentModel).filter(DocumentModel.task_spec == 'Activity_GetZip').first()
|
||||||
file_2 = session.query(FileModel).filter(FileModel.task_spec == 'Activity_GetZip_2').first()
|
file_2 = session.query(DocumentModel).filter(DocumentModel.task_spec == 'Activity_GetZip_2').first()
|
||||||
# file 1 should *not* have an irb doc code
|
# file 1 should *not* have an irb doc code
|
||||||
self.assertEqual(None, file_1.irb_doc_code)
|
self.assertEqual(None, file_1.irb_doc_code)
|
||||||
# file 2 *should* have an irb doc code
|
# file 2 *should* have an irb doc code
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
from tests.base_test import BaseTest
|
from tests.base_test import BaseTest
|
||||||
|
|
||||||
from crc import app, session
|
from crc import app, session
|
||||||
from crc.models.file import FileModel, FileDataModel
|
from crc.models.file import DocumentModel
|
||||||
from crc.services.user_file_service import UserFileService
|
from crc.services.user_file_service import UserFileService
|
||||||
|
|
||||||
from io import BytesIO
|
from io import BytesIO
|
||||||
|
@ -27,14 +27,11 @@ class TestModifySpreadsheet(BaseTest):
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def get_sheet(workflow_id, irb_doc_code):
|
def get_sheet(workflow_id, irb_doc_code):
|
||||||
spreadsheet = session.query(FileModel). \
|
spreadsheet = session.query(DocumentModel). \
|
||||||
filter(FileModel.workflow_id == workflow_id). \
|
filter(DocumentModel.workflow_id == workflow_id). \
|
||||||
filter(FileModel.irb_doc_code == irb_doc_code). \
|
filter(DocumentModel.irb_doc_code == irb_doc_code). \
|
||||||
first()
|
first()
|
||||||
spreadsheet_data = session.query(FileDataModel). \
|
workbook = load_workbook(BytesIO(spreadsheet.data))
|
||||||
filter(FileDataModel.file_model_id == spreadsheet.id). \
|
|
||||||
first()
|
|
||||||
workbook = load_workbook(BytesIO(spreadsheet_data.data))
|
|
||||||
sheet = workbook.active
|
sheet = workbook.active
|
||||||
return sheet
|
return sheet
|
||||||
|
|
||||||
|
|
|
@ -10,7 +10,7 @@ from unittest.mock import patch
|
||||||
from crc.models.email import EmailModel
|
from crc.models.email import EmailModel
|
||||||
from crc import session, app
|
from crc import session, app
|
||||||
from crc.models.protocol_builder import ProtocolBuilderCreatorStudySchema
|
from crc.models.protocol_builder import ProtocolBuilderCreatorStudySchema
|
||||||
from crc.models.file import FileModel
|
from crc.models.file import DocumentModel
|
||||||
from crc.models.task_event import TaskEventModel
|
from crc.models.task_event import TaskEventModel
|
||||||
from crc.models.study import StudyEvent, StudyModel, StudySchema, StudyStatus, StudyEventType, StudyAssociated
|
from crc.models.study import StudyEvent, StudyModel, StudySchema, StudyStatus, StudyEventType, StudyAssociated
|
||||||
from crc.models.workflow import WorkflowModel
|
from crc.models.workflow import WorkflowModel
|
||||||
|
@ -268,7 +268,7 @@ class TestStudyApi(BaseTest):
|
||||||
name="anything.png", content_type="text",
|
name="anything.png", content_type="text",
|
||||||
binary_data=b'5678', irb_doc_code="UVACompl_PRCAppr" )
|
binary_data=b'5678', irb_doc_code="UVACompl_PRCAppr" )
|
||||||
|
|
||||||
workflow_files = session.query(FileModel).filter_by(workflow_id=workflow.id)
|
workflow_files = session.query(DocumentModel).filter_by(workflow_id=workflow.id)
|
||||||
self.assertEqual(workflow_files.count(), 1)
|
self.assertEqual(workflow_files.count(), 1)
|
||||||
workflow_files_ids = [file.id for file in workflow_files]
|
workflow_files_ids = [file.id for file in workflow_files]
|
||||||
|
|
||||||
|
@ -276,7 +276,7 @@ class TestStudyApi(BaseTest):
|
||||||
self.assert_success(rv)
|
self.assert_success(rv)
|
||||||
|
|
||||||
# No files should have the deleted workflow id anymore
|
# No files should have the deleted workflow id anymore
|
||||||
workflow_files = session.query(FileModel).filter_by(workflow_id=workflow.id)
|
workflow_files = session.query(DocumentModel).filter_by(workflow_id=workflow.id)
|
||||||
self.assertEqual(workflow_files.count(), 0)
|
self.assertEqual(workflow_files.count(), 0)
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -4,9 +4,8 @@ from SpiffWorkflow.bpmn.PythonScriptEngine import Box
|
||||||
from tests.base_test import BaseTest
|
from tests.base_test import BaseTest
|
||||||
from unittest.mock import patch
|
from unittest.mock import patch
|
||||||
|
|
||||||
from crc import db, session
|
from crc import session
|
||||||
from crc.api.common import ApiError
|
from crc.api.common import ApiError
|
||||||
from crc.models.file import FileDataModel, FileModel
|
|
||||||
from crc.models.protocol_builder import ProtocolBuilderRequiredDocumentSchema
|
from crc.models.protocol_builder import ProtocolBuilderRequiredDocumentSchema
|
||||||
from crc.models.study import StudyModel
|
from crc.models.study import StudyModel
|
||||||
from crc.scripts.study_info import StudyInfo
|
from crc.scripts.study_info import StudyInfo
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
from tests.base_test import BaseTest
|
from tests.base_test import BaseTest
|
||||||
from crc import session
|
from crc import session
|
||||||
from crc.models.data_store import DataStoreModel
|
from crc.models.data_store import DataStoreModel
|
||||||
from crc.models.file import FileModel, FileType
|
from crc.models.file import DocumentModel, FileType
|
||||||
from crc.models.study import StudyModel
|
from crc.models.study import StudyModel
|
||||||
from crc.models.user import UserModel
|
from crc.models.user import UserModel
|
||||||
from crc.services.workflow_service import WorkflowService
|
from crc.services.workflow_service import WorkflowService
|
||||||
|
@ -14,14 +14,14 @@ class TestDataStoreValidation(BaseTest):
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def add_test_file():
|
def add_test_file():
|
||||||
file_model = FileModel(
|
file_model = DocumentModel(
|
||||||
name='my_test_file',
|
name='my_test_file',
|
||||||
type=FileType.pdf,
|
type=FileType.pdf,
|
||||||
content_type='application/pdf'
|
content_type='application/pdf'
|
||||||
)
|
)
|
||||||
session.add(file_model)
|
session.add(file_model)
|
||||||
session.commit()
|
session.commit()
|
||||||
file_id = session.query(FileModel.id).filter(FileModel.name == 'my_test_file').scalar()
|
file_id = session.query(DocumentModel.id).filter(DocumentModel.name == 'my_test_file').scalar()
|
||||||
return file_id
|
return file_id
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
|
|
|
@ -2,7 +2,6 @@ from tests.base_test import BaseTest
|
||||||
|
|
||||||
from crc.models.data_store import DataStoreModel, DataStoreSchema
|
from crc.models.data_store import DataStoreModel, DataStoreSchema
|
||||||
from crc.services.user_file_service import UserFileService
|
from crc.services.user_file_service import UserFileService
|
||||||
from crc.models.file import FileModel
|
|
||||||
from crc import session
|
from crc import session
|
||||||
|
|
||||||
import json
|
import json
|
||||||
|
|
|
@ -5,7 +5,7 @@ from tests.base_test import BaseTest
|
||||||
|
|
||||||
from crc.api.common import ApiError
|
from crc.api.common import ApiError
|
||||||
from crc import session, app
|
from crc import session, app
|
||||||
from crc.models.file import FileDataModel, FileModel, LookupFileModel, LookupDataModel, CONTENT_TYPES
|
from crc.models.file import DocumentModel, LookupFileModel, LookupDataModel
|
||||||
from crc.services.lookup_service import LookupService
|
from crc.services.lookup_service import LookupService
|
||||||
from crc.services.spec_file_service import SpecFileService
|
from crc.services.spec_file_service import SpecFileService
|
||||||
from crc.services.workflow_processor import WorkflowProcessor
|
from crc.services.workflow_processor import WorkflowProcessor
|
||||||
|
@ -17,8 +17,7 @@ class TestLookupService(BaseTest):
|
||||||
def test_lookup_returns_good_error_on_bad_field(self):
|
def test_lookup_returns_good_error_on_bad_field(self):
|
||||||
spec = self.load_test_spec('enum_options_with_search')
|
spec = self.load_test_spec('enum_options_with_search')
|
||||||
workflow = self.create_workflow('enum_options_with_search')
|
workflow = self.create_workflow('enum_options_with_search')
|
||||||
file_model = session.query(FileModel).filter(FileModel.name == "customer_list.xlsx").first()
|
file_model = session.query(DocumentModel).filter(DocumentModel.name == "customer_list.xlsx").first()
|
||||||
file_data_model = session.query(FileDataModel).filter(FileDataModel.file_model == file_model).first()
|
|
||||||
with self.assertRaises(ApiError):
|
with self.assertRaises(ApiError):
|
||||||
LookupService.lookup(workflow, "Task_Enum_Lookup", "not_the_right_field", "sam", limit=10)
|
LookupService.lookup(workflow, "Task_Enum_Lookup", "not_the_right_field", "sam", limit=10)
|
||||||
|
|
||||||
|
|
|
@ -8,7 +8,7 @@ from flask import g
|
||||||
|
|
||||||
from crc import session, db, app
|
from crc import session, db, app
|
||||||
from crc.api.common import ApiError
|
from crc.api.common import ApiError
|
||||||
from crc.models.file import FileModel, FileDataModel
|
from crc.models.file import DocumentModel
|
||||||
from crc.models.study import StudyModel
|
from crc.models.study import StudyModel
|
||||||
from crc.models.workflow import WorkflowStatus
|
from crc.models.workflow import WorkflowStatus
|
||||||
from crc.models.user import UserModel
|
from crc.models.user import UserModel
|
||||||
|
@ -218,14 +218,13 @@ class TestWorkflowProcessor(BaseTest):
|
||||||
self._populate_form_with_random_data(task)
|
self._populate_form_with_random_data(task)
|
||||||
processor.complete_task(task)
|
processor.complete_task(task)
|
||||||
|
|
||||||
files = session.query(FileModel).filter_by(workflow_id=processor.get_workflow_id()).all()
|
files = session.query(DocumentModel).filter_by(workflow_id=processor.get_workflow_id()).all()
|
||||||
self.assertEqual(0, len(files))
|
self.assertEqual(0, len(files))
|
||||||
processor.do_engine_steps()
|
processor.do_engine_steps()
|
||||||
files = session.query(FileModel).filter_by(workflow_id=processor.get_workflow_id()).all()
|
files = session.query(DocumentModel).filter_by(workflow_id=processor.get_workflow_id()).all()
|
||||||
self.assertEqual(1, len(files), "The task should create a new file.")
|
self.assertEqual(1, len(files), "The task should create a new file.")
|
||||||
file_data = session.query(FileDataModel).filter(FileDataModel.file_model_id == files[0].id).first()
|
self.assertIsNotNone(files[0].data)
|
||||||
self.assertIsNotNone(file_data.data)
|
self.assertTrue(len(files[0].data) > 0)
|
||||||
self.assertTrue(len(file_data.data) > 0)
|
|
||||||
# Not going any farther here, assuming this is tested in libraries correctly.
|
# Not going any farther here, assuming this is tested in libraries correctly.
|
||||||
|
|
||||||
def test_load_study_information(self):
|
def test_load_study_information(self):
|
||||||
|
|
|
@ -3,7 +3,6 @@ import os.path
|
||||||
|
|
||||||
from tests.base_test import BaseTest
|
from tests.base_test import BaseTest
|
||||||
from crc import session
|
from crc import session
|
||||||
from crc.models.file import FileModel
|
|
||||||
from crc.models.workflow import WorkflowModel, WorkflowSpecInfoSchema, WorkflowSpecInfo, WorkflowSpecCategory, \
|
from crc.models.workflow import WorkflowModel, WorkflowSpecInfoSchema, WorkflowSpecInfo, WorkflowSpecCategory, \
|
||||||
WorkflowSpecCategorySchema
|
WorkflowSpecCategorySchema
|
||||||
from crc.services.spec_file_service import SpecFileService
|
from crc.services.spec_file_service import SpecFileService
|
||||||
|
|
Loading…
Reference in New Issue