#!/bin/bash
 # ============LICENSE_START=======================================================
-#  Copyright (C) 2023-2024 Nordix Foundation. All rights reserved.
+#  Copyright (C) 2023-2025 Nordix Foundation. All rights reserved.
 # ================================================================================
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
     export WORKSPACE=$(git rev-parse --show-toplevel)
 fi
 
+export PROJECT="xacml"
 export TESTDIR=${WORKSPACE}/testsuites
 export XACML_PERF_TEST_FILE=$TESTDIR/performance/src/main/resources/testplans/perf.jmx
 export XACML_STAB_TEST_FILE=$TESTDIR/stability/src/main/resources/testplans/stability.jmx
 
-if [ $1 == "run" ]
-then
-
-  mkdir automate-s3p-test;cd automate-s3p-test;
-  git clone "https://gerrit.onap.org/r/policy/docker"
-  cd docker/csit
-
-  if [ $2 == "performance" ]
-  then
-    bash start-s3p-tests.sh run $XACML_PERF_TEST_FILE xacml-pdp;
-  elif [ $2 == "stability" ]
-  then
-    bash start-s3p-tests.sh run $XACML_STAB_TEST_FILE xacml-pdp;
-  else
-    echo "echo Invalid arguments provided. Usage: $0 [option..] {performance | stability}"
-  fi
-
-else
-  echo "Invalid arguments provided. Usage: $0 [option..] {run | uninstall}"
-fi
+function run_tests() {
+    local test_file=$1
+
+    mkdir -p automate-s3p-test
+    cd automate-s3p-test || exit 1
+    git clone "https://gerrit.onap.org/r/policy/docker"
+    cd docker/csit || exit 1
+
+    bash run-s3p-tests.sh test "$test_file" $PROJECT
+}
+
+function clean() {
+    cd $TESTDIR/automate-s3p-test/docker/csit
+    bash run-s3p-tests.sh clean
+}
+
+echo "================================="
+echo "Triggering S3P test for: $PROJECT"
+echo "================================="
 
+case $1 in
+    performance)
+        run_tests "$XACML_PERF_TEST_FILE"
+        ;;
+    stability)
+        run_tests "$XACML_STAB_TEST_FILE"
+        ;;
+    clean)
+        clean
+        ;;
+    *)
+        echo "Invalid arguments provided. Usage: $0 {performance | stability | clean}"
+        exit 1
+        ;;