From 99b0134f78431429ad48e119ed14800916fe5a45 Mon Sep 17 00:00:00 2001 From: Lukasz Rajewski Date: Mon, 12 Feb 2024 17:34:50 +0100 Subject: Enhanced SDNC status check and SDNC distribution check Enhanced SDNC status check and SDNC distribution check Issue-ID: TEST-404 Signed-off-by: Lukasz Rajewski Change-Id: I4ed88c73251c5569bc6bc0ea9a4a4737ca903d93 --- src/onaptests/steps/instantiate/sdnc_service.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) (limited to 'src/onaptests/steps/instantiate') diff --git a/src/onaptests/steps/instantiate/sdnc_service.py b/src/onaptests/steps/instantiate/sdnc_service.py index 6d88c64..9dce7e9 100644 --- a/src/onaptests/steps/instantiate/sdnc_service.py +++ b/src/onaptests/steps/instantiate/sdnc_service.py @@ -42,7 +42,8 @@ class BaseSdncStep(BaseStep): class CheckSdncDbStep(BaseSdncStep): """Check MariaDB connection status.""" - SDNC_QUERY = "SELECT * FROM svc_logic LIMIT 1;" + SDNC_QUERY_LOGIC = "SELECT * FROM svc_logic LIMIT 1;" + SDNC_QUERY_MODEL = "SELECT * FROM service_model LIMIT 1;" SDNC_DATABASE = "sdnctl" SDNC_DB_LOGIN = "login" SDNC_DB_PASSWORD = "password" @@ -85,6 +86,13 @@ class CheckSdncDbStep(BaseSdncStep): self.password = None raise EnvironmentPreparationException("Error accessing secret") from e + def _check_query(self, conn, query): + cursor = conn.cursor() + cursor.execute(query) + for _ in cursor: + pass + cursor.close() + @BaseStep.store_state def execute(self) -> None: """Check MariaDB connection.""" @@ -98,8 +106,11 @@ class CheckSdncDbStep(BaseSdncStep): port=settings.SDNC_DB_PORT, user=self.login, password=self.password) - cursor = conn.cursor() - cursor.execute(self.SDNC_QUERY) + self._check_query(conn, self.SDNC_QUERY_LOGIC) + self._check_query(conn, self.SDNC_QUERY_MODEL) + except (mysql.errors.ProgrammingError, + mysql.errors.DatabaseError) as e: + raise OnapTestException(e) from e except Exception as e: raise OnapTestException("Cannot connect to SDNC Database") from e finally: -- cgit 1.2.3-korg