From f8c7a820130fcd89ac0a9dee46e8cb1586b80074 Mon Sep 17 00:00:00 2001
From: RIHTARSIC Joze <joze.rihtarsic@ext.ec.europa.eu>
Date: Thu, 29 Jun 2023 09:29:54 +0200
Subject: [PATCH] fix gitlab failed plans

---
 .../smp/test/PropertiesTestConfig.java        |  1 -
 .../DomainResourceIntegrationTest.java        | 41 ++++++++-----------
 .../DomainAdminResourceIntegrationTest.java   |  1 -
 .../KeystoreResourceIntegrationTest.java      |  4 +-
 ...ruststoreAdminResourceIntegrationTest.java |  2 +-
 5 files changed, 20 insertions(+), 29 deletions(-)

diff --git a/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/test/PropertiesTestConfig.java b/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/test/PropertiesTestConfig.java
index 856a813f1..d3e8c655d 100644
--- a/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/test/PropertiesTestConfig.java
+++ b/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/test/PropertiesTestConfig.java
@@ -63,6 +63,5 @@ public class PropertiesTestConfig {
         System.setProperty(SMP_MODE_DEVELOPMENT.getProperty(), "true");
         System.setProperty(DATABASE_CREATE_DDL.getProperty(), "true");
         System.setProperty(SECURITY_FOLDER.getProperty(), SECURITY_PATH.toFile().getPath());
-
     }
 }
diff --git a/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/external/DomainResourceIntegrationTest.java b/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/external/DomainResourceIntegrationTest.java
index 2df22e760..ffad2c65c 100644
--- a/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/external/DomainResourceIntegrationTest.java
+++ b/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/external/DomainResourceIntegrationTest.java
@@ -1,33 +1,31 @@
 package eu.europa.ec.edelivery.smp.ui.external;
 
 import com.fasterxml.jackson.databind.ObjectMapper;
+import eu.europa.ec.edelivery.smp.config.enums.SMPPropertyEnum;
+import eu.europa.ec.edelivery.smp.data.dao.ConfigurationDao;
 import eu.europa.ec.edelivery.smp.data.dao.DomainDao;
 import eu.europa.ec.edelivery.smp.data.ui.DomainRO;
 import eu.europa.ec.edelivery.smp.data.ui.ServiceResult;
 import eu.europa.ec.edelivery.smp.test.SmpTestWebAppConfig;
+import eu.europa.ec.edelivery.smp.test.testutils.MockMvcUtils;
+import eu.europa.ec.edelivery.smp.test.testutils.X509CertificateTestUtils;
 import eu.europa.ec.edelivery.smp.ui.ResourceConstants;
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.mock.web.MockServletContext;
-import org.springframework.security.test.web.servlet.setup.SecurityMockMvcConfigurers;
 import org.springframework.test.context.ContextConfiguration;
 import org.springframework.test.context.jdbc.Sql;
 import org.springframework.test.context.junit4.SpringRunner;
 import org.springframework.test.context.web.WebAppConfiguration;
 import org.springframework.test.web.servlet.MockMvc;
 import org.springframework.test.web.servlet.MvcResult;
-import org.springframework.test.web.servlet.setup.MockMvcBuilders;
-import org.springframework.web.context.ContextLoaderListener;
 import org.springframework.web.context.WebApplicationContext;
 
-import javax.servlet.ServletContextEvent;
-import javax.servlet.ServletContextListener;
+import java.io.IOException;
 
 import static org.junit.Assert.*;
 import static org.springframework.security.test.web.servlet.request.SecurityMockMvcRequestPostProcessors.csrf;
-import static org.springframework.test.context.jdbc.Sql.ExecutionPhase.BEFORE_TEST_METHOD;
 import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.get;
 import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
 
@@ -36,9 +34,8 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.
 @WebAppConfiguration
 @ContextConfiguration(classes = {SmpTestWebAppConfig.class})
 @Sql(scripts = {
-        "classpath:/cleanup-database.sql",
-        "classpath:/webapp_integration_test_data.sql"},
-        executionPhase = BEFORE_TEST_METHOD)
+        "/cleanup-database.sql",
+        "/webapp_integration_test_data.sql"})
 public class DomainResourceIntegrationTest {
     private static final String PATH = ResourceConstants.CONTEXT_PATH_PUBLIC_DOMAIN;
 
@@ -46,31 +43,27 @@ public class DomainResourceIntegrationTest {
     private WebApplicationContext webAppContext;
     @Autowired
     DomainDao domainDao;
+    @Autowired
+    private ConfigurationDao configurationDao;
+
 
     private MockMvc mvc;
 
     @Before
-    public void setup() {
-        mvc = MockMvcBuilders.webAppContextSetup(webAppContext)
-                .apply(SecurityMockMvcConfigurers.springSecurity())
-                .build();
-
-        initServletContext();
+    public void setup() throws IOException {
+        X509CertificateTestUtils.reloadKeystores();
+        configurationDao.setPropertyToDatabase(SMPPropertyEnum.EXTERNAL_TLS_AUTHENTICATION_CLIENT_CERT_HEADER_ENABLED, "true", null);
+        configurationDao.reloadPropertiesFromDatabase();
+        mvc = MockMvcUtils.initializeMockMvc(webAppContext);
+        configurationDao.contextRefreshedEvent();
     }
 
-    private void initServletContext() {
-        MockServletContext sc = new MockServletContext("");
-        ServletContextListener listener = new ContextLoaderListener(webAppContext);
-        ServletContextEvent event = new ServletContextEvent(sc);
-    }
-
-
     @Test
     public void geDomainPublicList() throws Exception {
 
         // given when
         MvcResult result = mvc.perform(get(PATH)
-                .with(csrf()))
+                        .with(csrf()))
                 .andExpect(status().isOk()).andReturn();
 
         //them
diff --git a/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/DomainAdminResourceIntegrationTest.java b/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/DomainAdminResourceIntegrationTest.java
index 8c9f8f321..de19addd8 100644
--- a/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/DomainAdminResourceIntegrationTest.java
+++ b/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/DomainAdminResourceIntegrationTest.java
@@ -44,7 +44,6 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.
         "classpath:/cleanup-database.sql",
         "classpath:/webapp_integration_test_data.sql"},
         executionPhase = BEFORE_TEST_METHOD)
-@Ignore("Fail on GitLab")
 public class DomainAdminResourceIntegrationTest {
     private static final String PATH = ResourceConstants.CONTEXT_PATH_INTERNAL_DOMAIN;
 
diff --git a/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/KeystoreResourceIntegrationTest.java b/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/KeystoreResourceIntegrationTest.java
index e4469ed75..fa5d0bb73 100644
--- a/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/KeystoreResourceIntegrationTest.java
+++ b/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/KeystoreResourceIntegrationTest.java
@@ -47,7 +47,6 @@ import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.
 @Sql(scripts = {
         "classpath:/cleanup-database.sql",
         "classpath:/webapp_integration_test_data.sql"})
-@Ignore("Fail on gitlab")
 public class KeystoreResourceIntegrationTest {
     private static final String PATH = CONTEXT_PATH_INTERNAL_KEYSTORE;
     Path keystore = Paths.get("src", "test", "resources", "keystores", "smp-keystore.jks");
@@ -104,7 +103,8 @@ public class KeystoreResourceIntegrationTest {
         UserRO userRO = getLoggedUserData(mvc, session);
         MvcResult result = mvc.perform(post(PATH + "/" + userRO.getUserId() + "/upload/JKS/test123")
                         .session(session)
-                        .with(csrf())).
+                        .with(csrf())
+                        .content("Not keystore")).
                 andExpect(status().isOk()).andReturn();
 
         //then
diff --git a/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/TruststoreAdminResourceIntegrationTest.java b/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/TruststoreAdminResourceIntegrationTest.java
index b292edbd4..0c5dd0239 100644
--- a/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/TruststoreAdminResourceIntegrationTest.java
+++ b/smp-webapp/src/test/java/eu/europa/ec/edelivery/smp/ui/internal/TruststoreAdminResourceIntegrationTest.java
@@ -62,9 +62,9 @@ public class TruststoreAdminResourceIntegrationTest {
 
     @Before
     public void setup() throws IOException {
-        mvc = initializeMockMvc(webAppContext);
         uiTruststoreService.refreshData();
         X509CertificateTestUtils.reloadKeystores();
+        mvc = initializeMockMvc(webAppContext);
     }
 
 
-- 
GitLab