X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=smo-install%2Ftest%2Fpythonsdk%2Fsrc%2Forantests%2Fconftest.py;h=217c7d0723f639e75def7aa598e2de1765109794;hb=a8414e7e44dea72da6f4f235e14f7fef59b4e266;hp=2e78b5ba488e8d6fe459f05e9f1f7d02bb7257d2;hpb=6c7e3c3c5e51182a891a2a21676f1cc2646ba484;p=it%2Fdep.git diff --git a/smo-install/test/pythonsdk/src/orantests/conftest.py b/smo-install/test/pythonsdk/src/orantests/conftest.py index 2e78b5ba..217c7d07 100644 --- a/smo-install/test/pythonsdk/src/orantests/conftest.py +++ b/smo-install/test/pythonsdk/src/orantests/conftest.py @@ -26,6 +26,7 @@ import logging import logging.config import os from oransdk.dmaap.dmaap import OranDmaap +from oransdk.policy.policy import OranPolicy, PolicyType from oransdk.sdnc.sdnc import OranSdnc from onapsdk.configuration import settings from waiting import wait @@ -44,38 +45,24 @@ network_sims = NetworkSimulators("./resources") smo = Smo() dmaap = OranDmaap() sdnc = OranSdnc() +policy = OranPolicy() -TOPIC_PNFREG = '{"topicName": "unauthenticated.VES_PNFREG_OUTPUT"}' +def policy_component_ready(): + """Check if components are ready.""" + logger.info("Verify policy components are ready") + policy_ready = {"api_ready": False, "pap_ready": False, "apex_ready": False} + policy_status = policy.get_components_status(settings.POLICY_BASICAUTH) + if (policy_status["api"]["healthy"] and not policy_ready["api_ready"]): + logger.info("Policy Api is ready") + policy_ready["api_ready"] = True + if (policy_status["pap"]["healthy"] and not policy_ready["pap_ready"]): + logger.info("Policy Pap is ready") + policy_ready["pap_ready"] = True + if (policy_status["pdps"]["apex"][0]["healthy"] == "HEALTHY" and not policy_ready["apex_ready"]): + logger.info("Policy Apex is ready") + policy_ready["apex_ready"] = True + return policy_ready["api_ready"] and policy_ready["pap_ready"] and policy_ready["apex_ready"] -TOPIC_FAULT = '{"topicName": "unauthenticated.SEC_FAULT_OUTPUT"}' - -#TOPIC_PNFREG = { -# "owner": "", -# "readerAcl": { -# "enabled": "true", -# "users": [] -# }, -# "name": "unauthenticated.VES_PNFREG_OUTPUT", -# "description": "", -# "writerAcl": { -# "enabled": "true", -# "users": [] -# } -#} - -#TOPIC_FAULT = { -# "owner": "", -# "readerAcl": { -# "enabled": "true", -# "users": [] -# }, -# "name": "unauthenticated.SEC_FAULT_OUTPUT", -# "description": "", -# "writerAcl": { -# "enabled": "true", -# "users": [] -# } -#} ###### Entry points of PYTEST Session def pytest_sessionstart(): @@ -84,14 +71,8 @@ def pytest_sessionstart(): smo.wait_for_smo_to_be_running() logger.info("Check and for for SDNC to be running") wait(lambda: OranSdnc.get_events(settings.SDNC_BASICAUTH, "test").status_code == 200, sleep_seconds=10, timeout_seconds=300, waiting_for="SDNC to be ready") - - dmaap.create_topic(TOPIC_PNFREG) - dmaap.create_topic(TOPIC_FAULT) - ### Due to an Onap Ves/dmaap behavior !!! DU sims must send messages - ### twice so we need to create/delete the sims -# network_sims.start_network_simulators() -# network_sims.wait_for_network_simulators_to_be_running() -# time.sleep(20) - ## Now kill the simulators and restart them for the test session + wait(lambda: policy_component_ready(), sleep_seconds=10, timeout_seconds=300, waiting_for="Policy to be ready") + ## Just kill any simulators that could already be runnin network_sims.stop_network_simulators() ###### END of FIRST start, now we can start the sims for the real tests. + logger.info("Tests session setup is ready")