mirror of
https://github.com/status-im/spiff-arena.git
synced 2025-02-11 17:27:03 +00:00
getting all the tests to pass.
This commit is contained in:
parent
be14b9c05f
commit
0244d58613
@ -3,6 +3,8 @@ from typing import Any
|
|||||||
|
|
||||||
from flask.app import Flask
|
from flask.app import Flask
|
||||||
from flask.testing import FlaskClient
|
from flask.testing import FlaskClient
|
||||||
|
|
||||||
|
from spiffworkflow_backend.routes.tasks_controller import _interstitial_stream
|
||||||
from tests.spiffworkflow_backend.helpers.base_test import BaseTest
|
from tests.spiffworkflow_backend.helpers.base_test import BaseTest
|
||||||
from tests.spiffworkflow_backend.helpers.test_data import load_test_spec
|
from tests.spiffworkflow_backend.helpers.test_data import load_test_spec
|
||||||
|
|
||||||
@ -20,6 +22,10 @@ class TestForGoodErrors(BaseTest):
|
|||||||
client: FlaskClient,
|
client: FlaskClient,
|
||||||
with_super_admin_user: UserModel,
|
with_super_admin_user: UserModel,
|
||||||
) -> Any:
|
) -> Any:
|
||||||
|
|
||||||
|
# Call this to assure all engine-steps are fully processed before we search for human tasks.
|
||||||
|
_interstitial_stream(process_instance_id)
|
||||||
|
|
||||||
"""Returns the next available user task for a given process instance, if possible."""
|
"""Returns the next available user task for a given process instance, if possible."""
|
||||||
human_tasks = (
|
human_tasks = (
|
||||||
db.session.query(HumanTaskModel).filter(HumanTaskModel.process_instance_id == process_instance_id).all()
|
db.session.query(HumanTaskModel).filter(HumanTaskModel.process_instance_id == process_instance_id).all()
|
||||||
|
@ -1588,7 +1588,8 @@ class TestProcessApi(BaseTest):
|
|||||||
f"/v1.0/process-instances/{self.modify_process_identifier_for_path_param(process_model_identifier)}/{process_instance_id}/run",
|
f"/v1.0/process-instances/{self.modify_process_identifier_for_path_param(process_model_identifier)}/{process_instance_id}/run",
|
||||||
headers=self.logged_in_headers(with_super_admin_user),
|
headers=self.logged_in_headers(with_super_admin_user),
|
||||||
)
|
)
|
||||||
|
# Call this to assure all engine-steps are fully processed.
|
||||||
|
_interstitial_stream(process_instance_id)
|
||||||
assert response.json is not None
|
assert response.json is not None
|
||||||
assert response.json["next_task"] is not None
|
assert response.json["next_task"] is not None
|
||||||
|
|
||||||
@ -2391,7 +2392,7 @@ class TestProcessApi(BaseTest):
|
|||||||
f"/v1.0/tasks/{process_instance_id}/{task_id}",
|
f"/v1.0/tasks/{process_instance_id}/{task_id}",
|
||||||
headers=self.logged_in_headers(initiator_user),
|
headers=self.logged_in_headers(initiator_user),
|
||||||
)
|
)
|
||||||
assert response.status_code == 202
|
assert response.status_code == 200
|
||||||
|
|
||||||
response = client.get(
|
response = client.get(
|
||||||
"/v1.0/tasks",
|
"/v1.0/tasks",
|
||||||
|
@ -370,12 +370,13 @@ class TestProcessInstanceProcessor(BaseTest):
|
|||||||
)
|
)
|
||||||
assert top_level_subprocess_script_spiff_task is not None
|
assert top_level_subprocess_script_spiff_task is not None
|
||||||
processor.resume()
|
processor.resume()
|
||||||
processor.do_engine_steps(save=True)
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
|
|
||||||
assert len(process_instance.active_human_tasks) == 1
|
assert len(process_instance.active_human_tasks) == 1
|
||||||
human_task_one = process_instance.active_human_tasks[0]
|
human_task_one = process_instance.active_human_tasks[0]
|
||||||
spiff_manual_task = processor.bpmn_process_instance.get_task_from_id(UUID(human_task_one.task_id))
|
spiff_manual_task = processor.bpmn_process_instance.get_task_from_id(UUID(human_task_one.task_id))
|
||||||
ProcessInstanceService.complete_form_task(processor, spiff_manual_task, {}, initiator_user, human_task_one)
|
ProcessInstanceService.complete_form_task(processor, spiff_manual_task, {}, initiator_user, human_task_one)
|
||||||
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
|
|
||||||
assert process_instance.status == "complete"
|
assert process_instance.status == "complete"
|
||||||
|
|
||||||
@ -423,9 +424,11 @@ class TestProcessInstanceProcessor(BaseTest):
|
|||||||
|
|
||||||
process_instance = ProcessInstanceModel.query.filter_by(id=process_instance.id).first()
|
process_instance = ProcessInstanceModel.query.filter_by(id=process_instance.id).first()
|
||||||
processor = ProcessInstanceProcessor(process_instance)
|
processor = ProcessInstanceProcessor(process_instance)
|
||||||
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
human_task_one = process_instance.active_human_tasks[0]
|
human_task_one = process_instance.active_human_tasks[0]
|
||||||
spiff_manual_task = processor.bpmn_process_instance.get_task_from_id(UUID(human_task_one.task_id))
|
spiff_manual_task = processor.bpmn_process_instance.get_task_from_id(UUID(human_task_one.task_id))
|
||||||
ProcessInstanceService.complete_form_task(processor, spiff_manual_task, {}, initiator_user, human_task_one)
|
ProcessInstanceService.complete_form_task(processor, spiff_manual_task, {}, initiator_user, human_task_one)
|
||||||
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
human_task_one = process_instance.active_human_tasks[0]
|
human_task_one = process_instance.active_human_tasks[0]
|
||||||
spiff_manual_task = processor.bpmn_process_instance.get_task_from_id(UUID(human_task_one.task_id))
|
spiff_manual_task = processor.bpmn_process_instance.get_task_from_id(UUID(human_task_one.task_id))
|
||||||
ProcessInstanceService.complete_form_task(processor, spiff_manual_task, {}, initiator_user, human_task_one)
|
ProcessInstanceService.complete_form_task(processor, spiff_manual_task, {}, initiator_user, human_task_one)
|
||||||
@ -433,6 +436,7 @@ class TestProcessInstanceProcessor(BaseTest):
|
|||||||
# recreate variables to ensure all bpmn json was recreated from scratch from the db
|
# recreate variables to ensure all bpmn json was recreated from scratch from the db
|
||||||
process_instance_relookup = ProcessInstanceModel.query.filter_by(id=process_instance.id).first()
|
process_instance_relookup = ProcessInstanceModel.query.filter_by(id=process_instance.id).first()
|
||||||
processor_final = ProcessInstanceProcessor(process_instance_relookup)
|
processor_final = ProcessInstanceProcessor(process_instance_relookup)
|
||||||
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
assert process_instance_relookup.status == "complete"
|
assert process_instance_relookup.status == "complete"
|
||||||
|
|
||||||
data_set_1 = {"set_in_top_level_script": 1}
|
data_set_1 = {"set_in_top_level_script": 1}
|
||||||
@ -544,6 +548,7 @@ class TestProcessInstanceProcessor(BaseTest):
|
|||||||
# assert task_model.python_env_data() == expected_python_env_data, message
|
# assert task_model.python_env_data() == expected_python_env_data, message
|
||||||
assert task_model.json_data() == expected_python_env_data, message
|
assert task_model.json_data() == expected_python_env_data, message
|
||||||
|
|
||||||
|
processor_final.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
all_spiff_tasks = processor_final.bpmn_process_instance.get_tasks()
|
all_spiff_tasks = processor_final.bpmn_process_instance.get_tasks()
|
||||||
assert len(all_spiff_tasks) > 1
|
assert len(all_spiff_tasks) > 1
|
||||||
for spiff_task in all_spiff_tasks:
|
for spiff_task in all_spiff_tasks:
|
||||||
@ -689,7 +694,7 @@ class TestProcessInstanceProcessor(BaseTest):
|
|||||||
process_model=process_model, user=initiator_user
|
process_model=process_model, user=initiator_user
|
||||||
)
|
)
|
||||||
processor = ProcessInstanceProcessor(process_instance)
|
processor = ProcessInstanceProcessor(process_instance)
|
||||||
processor.do_engine_steps(save=True)
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
|
|
||||||
assert len(process_instance.active_human_tasks) == 1
|
assert len(process_instance.active_human_tasks) == 1
|
||||||
assert len(process_instance.human_tasks) == 1
|
assert len(process_instance.human_tasks) == 1
|
||||||
@ -699,6 +704,7 @@ class TestProcessInstanceProcessor(BaseTest):
|
|||||||
ProcessInstanceService.complete_form_task(processor, spiff_task, {}, initiator_user, human_task_one)
|
ProcessInstanceService.complete_form_task(processor, spiff_task, {}, initiator_user, human_task_one)
|
||||||
|
|
||||||
processor = ProcessInstanceProcessor(process_instance)
|
processor = ProcessInstanceProcessor(process_instance)
|
||||||
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
assert len(process_instance.active_human_tasks) == 1
|
assert len(process_instance.active_human_tasks) == 1
|
||||||
assert len(process_instance.human_tasks) == 2
|
assert len(process_instance.human_tasks) == 2
|
||||||
human_task_two = process_instance.active_human_tasks[0]
|
human_task_two = process_instance.active_human_tasks[0]
|
||||||
@ -707,6 +713,7 @@ class TestProcessInstanceProcessor(BaseTest):
|
|||||||
|
|
||||||
# ensure this does not raise a KeyError
|
# ensure this does not raise a KeyError
|
||||||
processor = ProcessInstanceProcessor(process_instance)
|
processor = ProcessInstanceProcessor(process_instance)
|
||||||
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
assert len(process_instance.active_human_tasks) == 1
|
assert len(process_instance.active_human_tasks) == 1
|
||||||
assert len(process_instance.human_tasks) == 3
|
assert len(process_instance.human_tasks) == 3
|
||||||
human_task_three = process_instance.active_human_tasks[0]
|
human_task_three = process_instance.active_human_tasks[0]
|
||||||
|
@ -43,7 +43,7 @@ class TestProcessModel(BaseTest):
|
|||||||
|
|
||||||
process_instance = self.create_process_instance_from_process_model(process_model)
|
process_instance = self.create_process_instance_from_process_model(process_model)
|
||||||
processor = ProcessInstanceProcessor(process_instance)
|
processor = ProcessInstanceProcessor(process_instance)
|
||||||
processor.do_engine_steps(save=True)
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
assert process_instance.status == "complete"
|
assert process_instance.status == "complete"
|
||||||
|
|
||||||
def test_can_run_process_model_with_call_activities_when_not_in_same_directory(
|
def test_can_run_process_model_with_call_activities_when_not_in_same_directory(
|
||||||
@ -74,7 +74,7 @@ class TestProcessModel(BaseTest):
|
|||||||
)
|
)
|
||||||
process_instance = self.create_process_instance_from_process_model(process_model)
|
process_instance = self.create_process_instance_from_process_model(process_model)
|
||||||
processor = ProcessInstanceProcessor(process_instance)
|
processor = ProcessInstanceProcessor(process_instance)
|
||||||
processor.do_engine_steps(save=True)
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
assert process_instance.status == "complete"
|
assert process_instance.status == "complete"
|
||||||
|
|
||||||
def test_can_run_process_model_with_call_activities_when_process_identifier_is_not_in_database(
|
def test_can_run_process_model_with_call_activities_when_process_identifier_is_not_in_database(
|
||||||
@ -110,7 +110,7 @@ class TestProcessModel(BaseTest):
|
|||||||
db.session.query(SpecReferenceCache).delete()
|
db.session.query(SpecReferenceCache).delete()
|
||||||
db.session.commit()
|
db.session.commit()
|
||||||
processor = ProcessInstanceProcessor(process_instance)
|
processor = ProcessInstanceProcessor(process_instance)
|
||||||
processor.do_engine_steps(save=True)
|
processor.do_engine_steps(save=True, execution_strategy_name="greedy")
|
||||||
assert process_instance.status == "complete"
|
assert process_instance.status == "complete"
|
||||||
|
|
||||||
def test_extract_metadata(
|
def test_extract_metadata(
|
||||||
|
Loading…
x
Reference in New Issue
Block a user