diff --git a/apitest-commons/src/main/java/io/mosip/testrig/apirig/dbaccess/AuditDBManager.java b/apitest-commons/src/main/java/io/mosip/testrig/apirig/dbaccess/AuditDBManager.java index c4213a599a..9c79e09c43 100644 --- a/apitest-commons/src/main/java/io/mosip/testrig/apirig/dbaccess/AuditDBManager.java +++ b/apitest-commons/src/main/java/io/mosip/testrig/apirig/dbaccess/AuditDBManager.java @@ -1,6 +1,5 @@ package io.mosip.testrig.apirig.dbaccess; -import java.io.File; import java.sql.Connection; import java.sql.ResultSet; import java.sql.ResultSetMetaData; @@ -8,7 +7,6 @@ import java.sql.Statement; import java.util.Collections; import java.util.HashMap; -import java.util.List; import java.util.Map; import org.apache.log4j.Logger; @@ -19,14 +17,11 @@ import org.hibernate.jdbc.Work; import org.testng.Assert; -import io.mosip.testrig.apirig.testrunner.MosipTestRunner; import io.mosip.testrig.apirig.utils.AdminTestUtil; import io.mosip.testrig.apirig.utils.ConfigManager; public class AuditDBManager extends AdminTestUtil { private static final Logger DBCONNECTION_LOGGER = Logger.getLogger(AuditDBManager.class); - private static Map records; - private static List> allRecords; public static String env = System.getProperty("env.user"); public static Map sessionFactoryMapS = Collections .synchronizedMap(new HashMap()); @@ -104,13 +99,13 @@ private static Session getDataBaseConnection(String dbName) { Session session = null; SessionFactory sessionFactory = sessionFactoryMapS.get(dbName); if (sessionFactory == null) { - try { + try { sessionFactory = getDataBaseConnectionSessionFactory(dbName); sessionFactoryMapS.put(dbName, sessionFactory); } catch (HibernateException e) { DBCONNECTION_LOGGER.error("Exception in Database Connection with following message: " + e.getMessage()); } catch (NullPointerException e) { - Assert.assertTrue(false, "Exception in getting the SessionFactory for DB Schema : " + dbName ); + Assert.assertTrue(false, "Exception in getting the SessionFactory for DB Schema : " + dbName); } } if (sessionFactory != null) { @@ -118,26 +113,24 @@ private static Session getDataBaseConnection(String dbName) { session.beginTransaction(); DBCONNECTION_LOGGER.info("Session begined with Schema : " + dbName); } - return session; + return session; } - + private static SessionFactory getDataBaseConnectionSessionFactory(String dbName) { SessionFactory factory = null; String dbschema = ConfigManager.getAuditDbSchema(); - if(dbName.equalsIgnoreCase("partner")) - dbschema=ConfigManager.getIdaDbSchema(); - - if(dbName.equalsIgnoreCase("master")) - dbschema=ConfigManager.getMasterDbSchema(); + if (dbName.equalsIgnoreCase("partner")) + dbschema = ConfigManager.getIdaDbSchema(); + + if (dbName.equalsIgnoreCase("master")) + dbschema = ConfigManager.getMasterDbSchema(); try { Configuration config = new Configuration(); config.setProperty("hibernate.connection.driver_class", ConfigManager.getproperty("driver_class")); - config.setProperty("hibernate.connection.url", - "jdbc:" + ConfigManager.getproperty("postgresqlUser") + "://" - + ConfigManager.getDbServer() + ":" + ConfigManager.getDbPort() - + "/mosip_" + dbschema); + config.setProperty("hibernate.connection.url", "jdbc:" + ConfigManager.getproperty("postgresqlUser") + "://" + + ConfigManager.getDbServer() + ":" + ConfigManager.getDbPort() + "/mosip_" + dbschema); config.setProperty("hibernate.connection.username", ConfigManager.getAuditDbUser()); config.setProperty("hibernate.connection.password", ConfigManager.getAuditDbPass()); config.setProperty("hibernate.default_schema", ConfigManager.getproperty(dbName + "_default_schema")); @@ -146,21 +139,20 @@ private static SessionFactory getDataBaseConnectionSessionFactory(String dbName) config.setProperty("hibernate.show_sql", ConfigManager.getproperty("show_sql")); config.setProperty("hibernate.current_session_context_class", ConfigManager.getproperty("current_session_context_class")); - factory = config.buildSessionFactory(); + factory = config.buildSessionFactory(); } catch (HibernateException e) { DBCONNECTION_LOGGER.error("Exception in Database Connection with following message: " + e.getMessage()); } catch (NullPointerException e) { - Assert.assertTrue(false, "Exception in getting the SessionFactory for DB Schema : " + dbschema ); + Assert.assertTrue(false, "Exception in getting the SessionFactory for DB Schema : " + dbschema); } return factory; } - public static void closeDataBaseConnection(Session session) { if (session != null) { DBCONNECTION_LOGGER.info("Session closed"); session.close(); } } - + } diff --git a/apitest-commons/src/main/java/io/mosip/testrig/apirig/report/EmailableReport.java b/apitest-commons/src/main/java/io/mosip/testrig/apirig/report/EmailableReport.java index 825475092e..2057695417 100644 --- a/apitest-commons/src/main/java/io/mosip/testrig/apirig/report/EmailableReport.java +++ b/apitest-commons/src/main/java/io/mosip/testrig/apirig/report/EmailableReport.java @@ -14,7 +14,6 @@ import java.text.NumberFormat; import java.time.LocalDate; import java.time.format.DateTimeFormatter; -import java.util.ArrayList; import java.util.Collections; import java.util.Comparator; import java.util.Iterator; @@ -22,7 +21,6 @@ import java.util.Properties; import java.util.Set; -import org.apache.commons.lang3.SerializationUtils; import org.testng.IReporter; import org.testng.ISuite; import org.testng.ISuiteResult; @@ -187,6 +185,14 @@ private String getCommitId() { } } + + private static String convertMillisToTime(long milliseconds) { + long seconds = (milliseconds / 1000) % 60; + long minutes = (milliseconds / (1000 * 60)) % 60; + long hours = (milliseconds / (1000 * 60 * 60)) % 24; + // Format time into HH:MM:SS + return String.format("%02d:%02d:%02d", hours, minutes, seconds); + } protected PrintWriter createWriter(String outdir) throws IOException { new File(outdir).mkdirs(); @@ -253,7 +259,6 @@ protected void writeDocumentEnd() { protected void writeSuiteSummary() { NumberFormat integerFormat = NumberFormat.getIntegerInstance(); - NumberFormat decimalFormat = NumberFormat.getNumberInstance(); LocalDate currentDate = LocalDate.now(); String formattedDate =null; String branch = null; @@ -335,7 +340,7 @@ protected void writeSuiteSummary() { if (reportKnownIssueTestCases) { writer.print("# Known_Issues"); } - writer.print("Execution Time (ms)"); + writer.print("Execution Time (HH:MM:SS)"); // writer.print("Included Groups"); // writer.print("Excluded Groups"); writer.print(GlobalConstants.TR); @@ -388,7 +393,7 @@ protected void writeSuiteSummary() { if (reportKnownIssueTestCases) { writeTableData(integerFormat.format(knownIssueTests), (knownIssueTests > 0 ? "num thich-orange-bg" : "num")); } - writeTableData(decimalFormat.format(duration), "num"); + writeTableData(convertMillisToTime(duration), "num"); // writeTableData(testResult.getIncludedGroups()); // writeTableData(testResult.getExcludedGroups()); @@ -435,7 +440,7 @@ protected void writeSuiteSummary() { writeTableHeader(integerFormat.format(totalKnownIssueTests), (totalKnownIssueTests > 0 ? "num thich-orange-bg" : "num")); } - writeTableHeader(decimalFormat.format(totalDuration), "num"); + writeTableHeader(convertMillisToTime(totalDuration), "num"); writer.print(GlobalConstants.TR); } @@ -505,7 +510,7 @@ protected void writeScenarioSummary() { writer.print("Unique Identifier"); writer.print("Test Case"); writer.print("Test Case Description"); - writer.print("Execution Time (ms)"); + writer.print("Execution Time (HH:MM:SS)"); writer.print(GlobalConstants.TR); writer.print(""); @@ -636,7 +641,7 @@ private int writeScenarioSummary(String description, List classResu .append(methodName).append("").append("") .append(testCaseDescription).append("") .append("") - .append(duration).append(""); + .append(convertMillisToTime(duration)).append(""); scenarioIndex++; diff --git a/apitest-commons/src/main/java/io/mosip/testrig/apirig/testrunner/BaseTestCase.java b/apitest-commons/src/main/java/io/mosip/testrig/apirig/testrunner/BaseTestCase.java index 6951cd8048..6fed038f2c 100644 --- a/apitest-commons/src/main/java/io/mosip/testrig/apirig/testrunner/BaseTestCase.java +++ b/apitest-commons/src/main/java/io/mosip/testrig/apirig/testrunner/BaseTestCase.java @@ -4,9 +4,10 @@ import java.io.FileInputStream; import java.io.IOException; import java.security.SecureRandom; +import java.time.LocalDateTime; +import java.time.format.DateTimeFormatter; import java.util.ArrayList; import java.util.Arrays; -import java.util.Calendar; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -39,8 +40,6 @@ import io.mosip.testrig.apirig.utils.GlobalConstants; import io.mosip.testrig.apirig.utils.GlobalMethods; import io.mosip.testrig.apirig.utils.KernelAuthentication; -import io.mosip.testrig.apirig.utils.KeycloakUserManager; -import io.mosip.testrig.apirig.utils.PartnerRegistration; import io.mosip.testrig.apirig.utils.RestClient; import io.restassured.RestAssured; import io.restassured.response.Response; @@ -346,8 +345,18 @@ public static void suiteSetup() { public static void setReportName(String moduleName) { System.getProperties().setProperty("emailable.report2.name", - "mosip-" + environment + "-" + moduleName + "-" + System.currentTimeMillis() + "-report.html"); + "mosip-" + environment + "-" + moduleName + "-" + getCurrentDateTime() + "-report.html"); } + + // Method to get the current date and time in the specified format + public static String getCurrentDateTime() { + // Get the current date and time + LocalDateTime now = LocalDateTime.now(); + // Define the desired formatter with the pattern "yyyy-MM-dd_HH:mm:ss" + DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd_HH-mm"); + // Format the current date and time using the formatter + return now.format(formatter); + } /** * After the entire test suite clean up rest assured diff --git a/apitest-commons/src/main/java/io/mosip/testrig/apirig/testrunner/MosipTestRunner.java b/apitest-commons/src/main/java/io/mosip/testrig/apirig/testrunner/MosipTestRunner.java index 029162631d..1280dea16e 100644 --- a/apitest-commons/src/main/java/io/mosip/testrig/apirig/testrunner/MosipTestRunner.java +++ b/apitest-commons/src/main/java/io/mosip/testrig/apirig/testrunner/MosipTestRunner.java @@ -25,10 +25,7 @@ import io.mosip.testrig.apirig.utils.AdminTestUtil; import io.mosip.testrig.apirig.utils.CertificateGenerationUtil; import io.mosip.testrig.apirig.utils.CertsUtil; -import io.mosip.testrig.apirig.utils.ConfigManager; -import io.mosip.testrig.apirig.utils.EncryptionDecrptionUtil; import io.mosip.testrig.apirig.utils.GlobalConstants; -import io.mosip.testrig.apirig.utils.GlobalMethods; import io.mosip.testrig.apirig.utils.JWKKeyUtil; import io.mosip.testrig.apirig.utils.KeyCloakUserAndAPIKeyGeneration; import io.mosip.testrig.apirig.utils.KeycloakUserManager; @@ -69,7 +66,6 @@ public static void main(String[] arg) { } else { ExtractResource.copyCommonResources(); } -// ConfigManager.init(); BaseTestCase.suiteSetup(); setLogLevels(); diff --git a/apitest-commons/src/main/java/io/mosip/testrig/apirig/utils/ConfigManager.java b/apitest-commons/src/main/java/io/mosip/testrig/apirig/utils/ConfigManager.java index f54b8645b4..7559086da7 100644 --- a/apitest-commons/src/main/java/io/mosip/testrig/apirig/utils/ConfigManager.java +++ b/apitest-commons/src/main/java/io/mosip/testrig/apirig/utils/ConfigManager.java @@ -4,9 +4,7 @@ import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; -import java.util.ArrayList; import java.util.Arrays; -import java.util.Collections; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -14,8 +12,6 @@ import org.apache.log4j.Logger; -import io.mosip.testrig.apirig.testrunner.MosipTestRunner; - public class ConfigManager { private static final Logger LOGGER = Logger.getLogger(ConfigManager.class); @@ -110,8 +106,7 @@ public static String getproperty(String key) { public static String getRolesForUser(String userId) { - Properties props = getproperties(MosipTestRunner.getGlobalResourcePath() + "/" + "config/Kernel.properties"); - return props.getProperty("roles." + userId); + return getproperty("roles." + userId); } public static String getServerErrorsToMonitor() { return getproperty("serverErrorsToMonitor"); } diff --git a/apitest-commons/src/main/resources/config/Kernel.properties b/apitest-commons/src/main/resources/config/Kernel.properties index c25e25de3d..b50bb9e8e9 100644 --- a/apitest-commons/src/main/resources/config/Kernel.properties +++ b/apitest-commons/src/main/resources/config/Kernel.properties @@ -101,7 +101,7 @@ auditActuatorEndpoint=/v1/auditmanager/actuator/info validateBindingEndpoint=ida-binding esignetWellKnownEndPoint=/v1/esignet/oidc/.well-known/openid-configuration signupSettingsEndPoint=/v1/signup/settings - +esignetActuatorPropertySection=esignet-default.properties @@ -210,10 +210,7 @@ hibernate.show_sql=true hibernate.current_session_context_class=thread db-su-user=postgres postgres-password= -pms_db_schema=pms -km_db_schema=keymgr master_db_schema=master -audit_db_schema=audit ida_db_schema=ida @@ -241,6 +238,7 @@ usePreConfiguredOtp=false eSignetDeployed=yes partnerUrlSuffix=oYf63Lax0DY2QkYMRHnrmDqhmO3RMWQagwm0ftgLlkuin1KOND/666/576732 reportIgnoredTestCases=no +reportKnownIssueTestCases=no servicesNotDeployed= esignetMockBaseURL=esignet-insurance. sunBirdBaseURL=registry @@ -258,6 +256,8 @@ admin_password=mosip123 admin_userName=220005 admin_zone_password=mosip123 admin_zone_userName=globaladmin +mockNotificationChannel=email,phone +mountPathForReport=/home/mosip/testrig/report @@ -272,13 +272,9 @@ langselect=0 #----------------------------------AuthDemoService Host properties----------------------------------------------------------# #Uncommemnt the below to run locally -authDemoServiceBaseURL=http://localhost -authDemoServicePort=8082 -authCertsPath= +#authCertsPath= #Uncommemnt the below to run in Docker -#authDemoServiceBaseURL=http://authdemo.apitestrig -#authDemoServicePort=80 -#authCertsPath=/home/mosip/authcerts +authCertsPath=/home/mosip/authcerts mosip_components_base_urls=