Skip to content
Snippets Groups Projects
Commit 024d89e0 authored by Jorrit Schaap's avatar Jorrit Schaap
Browse files

TMSS-419: proper setup of workflow test. The test still fails, and can be improved a lot.

parent 6f1485ee
No related branches found
No related tags found
1 merge request!268Resolve TMSS-419
...@@ -10,36 +10,51 @@ from lofar.common.test_utils import skip_integration_tests ...@@ -10,36 +10,51 @@ from lofar.common.test_utils import skip_integration_tests
if skip_integration_tests(): if skip_integration_tests():
exit(3) exit(3)
# Do Mandatory setup step: from lofar.messaging.messagebus import TemporaryExchange
# use setup/teardown magic for tmss test database, ldap server and django server import uuid
# (ignore pycharm unused import statement, python unittests does use at RunTime the tmss_test_environment_unittest_setup module)
from lofar.sas.tmss.test.tmss_test_environment_unittest_setup import *
tmss_test_env.populate_schemas()
from lofar.sas.tmss.test.test_utils import TMSSTestEnvironment class SchedulingUnitFlowTest(unittest.TestCase):
from lofar.sas.tmss.test.tmss_test_data_django_models import *
@classmethod
def setUpClass(cls) -> None:
cls.TEST_UUID = uuid.uuid1()
cls.tmp_exchange = TemporaryExchange("%s_%s" % (cls.__name__, cls.TEST_UUID))
cls.tmp_exchange.open()
# import and setup rest test data creator # override DEFAULT_BUSNAME
import lofar
lofar.messaging.config.DEFAULT_BUSNAME = cls.tmp_exchange.address
# import here, and not at top of module, because DEFAULT_BUSNAME needs to be set before importing
from lofar.sas.resourceassignment.resourceassigner.test.ra_test_environment import RATestEnvironment
from lofar.sas.tmss.test.test_utils import TMSSTestEnvironment
from lofar.sas.tmss.test.tmss_test_data_rest import TMSSRESTTestDataCreator from lofar.sas.tmss.test.tmss_test_data_rest import TMSSRESTTestDataCreator
rest_data_creator = TMSSRESTTestDataCreator(BASE_URL, AUTH)
from lofar.sas.tmss.tmss.tmssapp.adapters.parset import convert_to_parset
from lofar.sas.tmss.tmss.tmssapp.adapters.sip import generate_sip_for_dataproduct
from lofar.sas.tmss.tmss.tmssapp.adapters.feedback import generate_dataproduct_feedback_from_subtask_feedback_and_set_finished
from lofar.common.json_utils import get_default_json_object_for_schema
from lofar.lta.sip import constants
from datetime import datetime, timedelta
from lofar.sas.resourceassignment.resourceassigner.rarpc import RARPC
from lofar.sas.tmss.tmss.tmssapp import models
from lofar.sas.tmss.tmss.tmssapp.subtasks import *
from lofar.sas.tmss.tmss.tmssapp.tasks import *
from lofar.sas.tmss.tmss.workflowapp.models.schedulingunitflow import * cls.ra_test_env = RATestEnvironment(exchange=cls.tmp_exchange.address)
from viewflow.models import Task cls.ra_test_env.start()
cls.tmss_test_env = TMSSTestEnvironment(exchange=cls.tmp_exchange.address, populate_schemas=True, populate_test_data=False,
start_subtask_scheduler=False, start_postgres_listener=True, start_ra_test_environment=True,
start_dynamic_scheduler=False, enable_viewflow=True, start_workflow_service=True)
cls.tmss_test_env.start()
@classmethod
def tearDownClass(cls) -> None:
cls.tmss_test_env.stop()
cls.ra_test_env.stop()
cls.tmp_exchange.close()
class SchedulingUnitFlowTest(unittest.TestCase):
def test_qa_workflow(self): def test_qa_workflow(self):
from lofar.sas.tmss.tmss.tmssapp import models
from lofar.sas.tmss.tmss.tmssapp.tasks import create_task_blueprints_and_subtasks_from_scheduling_unit_draft
from lofar.sas.tmss.test.tmss_test_data_django_models import SchedulingSet_test_data
from lofar.sas.tmss.tmss.workflowapp.models.schedulingunitflow import SchedulingUnitProcess
from viewflow.models import Task
#check if one QA Workflow is created after scheduling unit blueprint creation #check if one QA Workflow is created after scheduling unit blueprint creation
self.assertEqual(0, len(SchedulingUnitProcess.objects.all())) self.assertEqual(0, len(SchedulingUnitProcess.objects.all()))
strategy_template = models.SchedulingUnitObservingStrategyTemplate.objects.get(name="UC1 CTC+pipelines") strategy_template = models.SchedulingUnitObservingStrategyTemplate.objects.get(name="UC1 CTC+pipelines")
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment