Commit Graph

727 Commits

Author SHA1 Message Date
Dan 1916c4ff54 Assure we log reasonably clear errors when executing scheduled tasks in the background, so that sentry can pick them up and they can be addressed effectively. 2021-07-12 09:43:12 -04:00
mike cullerton 69974e89fd Added 2 simple tests for filtering by REVIEW_TYPE 2021-07-09 11:39:30 -04:00
mike cullerton 682b010f6f Added mocked study_details with an invalid REVIEW_TYPE
This is used to test StudyService.get_studies_for_user
StudyService.get_studies_for_user should now filter on REVIEW_TYPE
2021-07-09 11:38:45 -04:00
mike cullerton 445d3e5f0b Added mocked pb study_details since we now check whether a study has valid REVIEW_TYPEs 2021-07-09 10:41:46 -04:00
mike cullerton 95c710768e Fixed test to reflect adding REVIEW_TYPE to mocked study_details PB data 2021-07-09 10:40:18 -04:00
mike cullerton 841bbe73ef Added REVIEW_TYPE to the mocked PB data 2021-07-09 10:38:41 -04:00
mike cullerton f1a15ef8e9 Fix the test 2021-07-07 12:54:16 -04:00
Dan Funk 3c52453c26
Merge branch 'dev' into add-name-error-hint-8 2021-07-07 11:35:24 -04:00
Dan Funk 2ed436327f
Merge pull request #333 from sartography/check-study-script-273
Check study script #273
2021-07-07 11:28:32 -04:00
Dan 2a45f2fcda Merge branch 'dev' into add-name-error-hint-8 2021-07-07 11:24:00 -04:00
mike cullerton b0cf74fa3d Merge branch 'dev' into add-by-user-61
# Conflicts:
#	tests/files/test_files_api.py
2021-07-07 10:46:50 -04:00
mike cullerton ac19c3e3c6 Add users first 2021-07-07 10:33:30 -04:00
mike cullerton 621c11fe24 Add test for user_uid 2021-07-07 09:39:01 -04:00
Dan fb54edac1c Adding additional details to error messages, and cleaning up the cruft around these messages to keep them clear and succinct.
Most noteable is the addition of the line on which the error occurs for script tasks.  It will report the line number and pass back the content of
the line that failed.
The validator only returns the first error it encounters, as it's clear that all we ever get right now is two of the same error.
Did a lot of work between this and spiffworkflow to remove all the places where we obfuscate or drop details as we converted between workflowExceptions and APIExceptions.
Dropped the python levenshtein dependency, in favor of just rolling a simple one ourselves in Spiffworkflow.
2021-07-07 00:53:49 -04:00
Dan 1b1a994360 Refactoring Reference files to use the lookup table, rather than parsing the results directly out of the spreadsheet, or attempting to cache them.
Adding a DocumentService to clean up the FileService, and get Documents well seperated, as it seems likely be pulled out or seperated in the future, there is now a Documents api file as well, for the same reason.
Some other minor changes are just fixing white space to assure our code is linting correctly.
I removed _create_study_workflow_approvals from the base test, as we don't use approvals like this anymore.
2021-07-06 13:10:20 -04:00
mike cullerton 8145ff9025 Tests for calling the script 2021-07-02 16:14:19 -04:00
mike cullerton 2cb2874a49 Added test and json data for new check_study pb mock api endpoint 2021-07-02 15:26:39 -04:00
mike cullerton 2a43230121 Test and workflow for the new name error hint code 2021-07-01 15:39:25 -04:00
Dan 9a32fadc2f Merge branch 'dev' into 346-waiting-task-schedule
# Conflicts:
#	Pipfile.lock
#	crc/services/workflow_service.py
2021-06-30 10:14:37 -04:00
Dan Funk 48bf721b23
Merge pull request #331 from sartography/bug/356_duplicate_workflow
Bug/356 duplicate workflow
2021-06-22 17:42:24 -04:00
Dan 92ca506c8e Calls to eval no longer return the data, rather it will accept and return a key, allowing the front end to cache similar queries and not re-execute them. 2021-06-22 17:23:18 -04:00
Dan 61ad371680 Clean up the file api so we don't have a bunch of extra stuff in there. Just include the raw data from the document spraedsheet if it is available. 2021-06-22 15:08:08 -04:00
Dan 1f3febe2df Fix the panda warnings, which means we only support xlsx files now.
Include the document details when reutnring a file from the file model.
Improve the validation of file form elements.
2021-06-22 14:58:52 -04:00
Dan 0722a4bf13 Moving metrics into SpiffWorkflow so we can run the performance metrics deeply across both systems simultaniously.
Upgrading libraries.
Fixing deprication issue with Pandas and numpy.
We can only process xlsx files now, plain oldschool xls is fully removed.
2021-06-18 17:00:10 -04:00
Dan 07eb3f9ca8 Moving metrics into SpiffWorkflow so we can run the performance metrics deeply across both systems simultaniously.
Upgrading libraries.
Fixing deprication issue with Pandas and numpy.
We can only process xlsx files now, plain oldschool xls is fully removed.
2021-06-18 16:41:55 -04:00
Dan Funk 19d63e2aa2
Merge pull request #328 from sartography/restart-workflow-programmatically-347
Restart workflow programmatically #347
2021-06-17 10:36:46 -04:00
Dan a4caae8d64 when validating, we need to take every step to remove the workflows we create during the validation. 2021-06-16 14:40:20 -04:00
mike cullerton 94e730d04e Test script validation 2021-06-15 11:15:31 -04:00
mike cullerton 8db4199d73 Separate workflows for `using` the script and `validating` the script. 2021-06-15 11:15:04 -04:00
mike cullerton addf1cab5b Added tests for failing conditions 2021-06-15 10:30:18 -04:00
mike cullerton 9e20025f33 Test and workflow for reset_workflow 2021-06-15 08:37:42 -04:00
Dan 7282419174 modified the tools api to return the expression and data with the result, making it easier to cash results on the front end, This should help drastically reduce the calls to the python_eval from the front end.
The post processors for form submissions needs to take repeating sections into account, or it won't find the files it is looking for.
2021-06-11 08:27:50 -04:00
Kelly McDonald 5f722d675f Add a function that gets runs via a background scheduler to look for any workflows that are in a 'waiting' state - it runs the update waiting tasks and does do_engine_steps
We have a test for the function that runs, but an assumption was made that the scheduler module has its own unit tests and we do not need to test that.

fixes #346
2021-06-09 10:42:34 -04:00
Dan 286803d10b fixing a big stupid bug I created when merging all the code and making changes to the files. 2021-06-08 14:24:59 -04:00
Dan 50ad42d3a8 You have to mock out the protocol builder in tests that rely on it. 2021-06-08 12:36:47 -04:00
Dan 076d198fc6 fixing a failing test for study associate. 2021-06-08 12:18:16 -04:00
Dan Funk 586a0f2f1a
Merge pull request #325 from sartography/feature/file_refactor
Prefer tasks that share a parent over just the the next available tas…
2021-06-08 11:28:23 -04:00
Dan 8d79fe9d94 Fixing failing tests, and now asserting that we only perform the post_process_form if we actually have a form. 2021-06-08 11:16:10 -04:00
Dan Funk 9c4994581d
Merge pull request #324 from sartography/modify-infinite-loop-312
Modify infinite loop #312
2021-06-08 10:30:13 -04:00
Dan Funk e10b210302
Merge pull request #323 from sartography/shield-test-issue-344
Shield test issue #344
2021-06-08 08:59:58 -04:00
Dan Funk a7b208f50a
Merge pull request #322 from sartography/data-store-refactor-330
Data store refactor #330
2021-06-08 08:58:53 -04:00
Dan Funk 6937c33719
Merge pull request #319 from sartography/datastore-file-endpoints-325
Datastore file endpoints #325
2021-06-08 08:54:43 -04:00
Dan Funk 37d4e7cc79
Merge pull request #318 from sartography/340-update_study_associate_change
Add test and fix to make sure that an empty study associates list (or…
2021-06-08 08:52:44 -04:00
Dan 59f605c3df Prefer tasks that share a parent over just the the next available task when returning the next_task in the workflow processor. 2021-06-08 08:03:14 -04:00
mike cullerton 9dc5871848 Added mocked PB data for tests using study_info script. 2021-06-07 10:08:44 -04:00
mike cullerton 70651e2a6a Test and BPMN files for testing 2021-06-04 11:45:51 -04:00
mike cullerton 37ba46fb8f These tests now require PB Mock because of the validate_study_id changes 2021-06-03 14:30:00 -04:00
mike cullerton a2e577829a Cleanup:
- removed unused imports
- removed testing print statement
2021-06-02 10:02:26 -04:00
mike cullerton 200a5b3bf3 Updated tests for file datastore endpoint
Added test of 2 entries
2021-06-01 16:27:55 -04:00
mike cullerton ec8353aaa6 Test for new datastore file api endpoint 2021-06-01 13:51:40 -04:00
Kelly McDonald 8c04e228e9 Add test and fix to make sure that an empty study associates list (or a blank list) will effectively clear the extra study associates 2021-06-01 11:46:43 -04:00
Kelly McDonald a5d67bb245 337 partial fix
if the user calls the file_data_set function for a valid file with the key 'irb_code' and a value of a valid IRB document code, then we should set the irb code on the file.
2021-05-27 12:24:30 -04:00
Dan ef7ee284b2 Prefer tasks that share a parent over just the the next available task when returning the next_task in the workflow processor. 2021-05-19 16:26:16 -04:00
Dan Funk 77f7fec5d4
Merge pull request #312 from sartography/study-is-none-329
Study is none #329
2021-05-14 16:33:04 -04:00
Mike Cullerton 668e2f4e3c
Merge pull request #313 from sartography/feature/add_file_data_store_properties_to_file
Assure that any data store values associated with a file come back as…
2021-05-14 16:30:35 -04:00
Dan 8e37f27399 Assure that any data store values associated with a file come back as a part of the get_study_data[documents
] endooint.
2021-05-14 15:52:25 -04:00
mike cullerton e75d933830 Make sure a standalone study does not cause an error in the /task_events api endpoint. 2021-05-14 15:35:17 -04:00
Dan Funk 4d7ce5eda9
Merge pull request #311 from sartography/deprecate-study-info-protocol-261
Deprecate study info protocol #261
2021-05-14 14:14:18 -04:00
mike cullerton 1a8c374ac0 Need to mock out these tests 2021-05-14 13:32:25 -04:00
mike cullerton a53e2db223 Final test for study_info script 2021-05-14 13:10:06 -04:00
Dan Funk ade7812540
Merge pull request #310 from sartography/get-primary-workflow-301
Get primary workflow #301
2021-05-14 12:41:48 -04:00
Dan Funk 6a34fc0cde
Merge pull request #309 from sartography/persist-read-only-data-324
Persist read only data #324
2021-05-14 12:38:48 -04:00
Dan Funk 1d28d602d5
Merge pull request #308 from sartography/get-dashboard-url-230
Get dashboard url #230
2021-05-14 12:36:40 -04:00
mike cullerton b0fcb09581 Fixed test to correspond to the changes in the mock data 2021-05-14 12:35:36 -04:00
Dan Funk 99da502912
Merge branch 'dev' into 321-Markdown-Macro 2021-05-14 12:32:41 -04:00
mike cullerton 1509bf23f8 Added some detail to the study_details mock data 2021-05-14 12:26:54 -04:00
mike cullerton 3e756dd501 Added two more test for the study_info script 2021-05-14 12:26:20 -04:00
mike cullerton 885c4c9a20 Started writing tests for the study_info script.
Need to add some mock data for a couple more
2021-05-13 16:30:17 -04:00
mike cullerton 4c8ea14435 Fixed test - changed the method name 2021-05-12 14:07:54 -04:00
mike cullerton 8f8d9d30e4 Added test for get_primary_workflow 2021-05-12 13:52:18 -04:00
mike cullerton 67321ecd97 Test and workflow for persisting read-only data 2021-05-07 14:07:19 -04:00
mike cullerton 4dc4e270aa Fixed the test to also use HTTPS 2021-05-06 15:54:39 -04:00
mike cullerton 375089e5df test and bpmn file for new get_dashboard_url script 2021-05-06 15:32:28 -04:00
mike cullerton 09a395fa34 Start for ticket 230 - Get Dashboard URL 2021-05-06 14:07:21 -04:00
Kelly McDonald cbd1d01203 Add URL to the study_info('documents') script
fixes #321 - I merged in branches that fix #320 and #297

320-add-default-for-file-data-get
297-filename-in-documents
2021-05-05 11:30:08 -04:00
Dan 8f28970f92 Resolving an alembic conflict.
Upgrading libraries, and resolving issues from that upgrade, including changes to how we manage tokens.  This seems to be working locally.
2021-05-04 13:39:49 -04:00
Dan Funk 8b0afa4437
Merge pull request #304 from sartography/irb-info-script-307
Irb info script #307
2021-05-04 11:40:52 -04:00
Dan Funk 34759a2f3d
Merge branch 'dev' into feature/performance-refactor 2021-05-04 11:30:13 -04:00
Dan Funk 4780240103
Merge pull request #302 from sartography/320-add-default-for-file-data-get
Add default capability to file_data_get script
2021-05-04 11:28:40 -04:00
Dan Funk d6054a9846
Merge branch 'dev' into 310-task-event-timezone 2021-05-04 11:21:36 -04:00
Dan Funk 77d9bfca43
Merge pull request #296 from sartography/launch-workflow-outside-study-204
Launch workflow outside study 204
2021-05-04 11:16:08 -04:00
mike cullerton 576f3a661d Removed print statement used while debugging. 2021-05-03 14:52:01 -04:00
mike cullerton c8446bfafd Mock the Protocol Builder response in my test 2021-05-03 14:51:27 -04:00
mike cullerton 9465b6408d Test and workflow for new `get_irb_info` script 2021-05-01 15:53:43 -04:00
mike cullerton 1bcf4ea02e Test and mock data for new `get_irb_info` service in ProtocolBuilderService 2021-05-01 15:23:07 -04:00
Dan a719cf4bf9 When retrieving the study, only update the status of underlying workflows if specifically requested.
Record the size of a file in the database for quick access (this helps with a frontend refactor, so it isn't downloading the file just to see it's size)
Cleaning up the timing/performance metric reporting to make it easier to read.
Fixing a bug that prevented non-admins for getting the document-directory
2021-04-30 11:55:12 -04:00
Kelly McDonald 7608a889fb Add default capability to file_data_get
script
2021-04-30 10:11:50 -04:00
Kelly McDonald 2b9cee6b89 Update database to include timezone and change all points where we set the time on an event to be utc time. If we get something in the database with a timezone, it will display properly on the front end, but by default everything will be put in the database in UTC 2021-04-29 10:25:28 -04:00
mike cullerton 09d8c8bcba added missing test for update_workflow_spec_category 2021-04-26 12:57:08 -04:00
Dan Funk 21e95b106d
Merge pull request #295 from sartography/299-document-datastore
Add file_data_get and file_data_set functions that can be accessed in…
2021-04-26 12:49:46 -04:00
mike cullerton 0aa3e8f586 added missing test for add_workflow_spec_category 2021-04-26 12:41:50 -04:00
Dan 047c68b2b5 Just some quick tidying up. Dropping commented out code, and using the SQLAlchemyAutoSchema to handle serializing db models 2021-04-26 12:31:22 -04:00
mike cullerton b73c2ff1cb Added missing test for `get_workflow_from_workflow_spec` 2021-04-26 12:00:06 -04:00
mike cullerton 1a44f50de6 Added `standalone` argument to fix failing test. 2021-04-26 11:21:35 -04:00
Mike Cullerton 39fcab3730
Merge branch 'dev' into launch-workflow-outside-study-204 2021-04-26 10:27:32 -04:00
Kelly McDonald d3d7eeb309 Add file_data_get and file_data_set functions that can be accessed in a bpmn script function
Fixes #299
2021-04-26 09:41:14 -04:00
mike cullerton 7cca559747 Fixed issue where we were passing in a workflow_api instead of a workflow when completing a form in tests. 2021-04-26 08:58:09 -04:00
mike cullerton c002ef1e76 Added test for new api endpoint to get all standalone workflow_specs.
Modified test_add_new_workflow_specification to include new standalone argument
2021-04-26 08:56:21 -04:00
mike cullerton 54ab7bd2f6 Test and workflow for launching a standalone workflow 2021-04-26 08:53:25 -04:00
mike cullerton a17e1bfaca When completing a form in a test, check whether workflow is standalone.
Do not set study_id when workflow is standalone.

*** Note the comment about passing in workflow_spec. We should be passing in a workflow, not a workflow_spec.
2021-04-26 08:50:46 -04:00