Java 17 / Spring 6 / Spring Boot 3 Upgrade
[policy/pap.git] / main / src / test / java / org / onap / policy / pap / main / rest / e2e / PdpGroupCreateOrUpdateTest.java
index dacee67..e7fc09c 100644 (file)
@@ -2,7 +2,8 @@
  * ============LICENSE_START=======================================================
  * ONAP PAP
  * ================================================================================
- * Copyright (C) 2019 Nordix Foundation.
+ * Copyright (C) 2019, 2023 Nordix Foundation.
+ * Modifications Copyright (C) 2022 Bell Canada. 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.
 
 package org.onap.policy.pap.main.rest.e2e;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
+import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertNull;
+import static org.junit.jupiter.api.Assertions.assertTrue;
 
+import jakarta.ws.rs.client.Entity;
+import jakarta.ws.rs.client.Invocation;
+import jakarta.ws.rs.core.MediaType;
+import jakarta.ws.rs.core.Response;
 import java.util.Optional;
-import javax.ws.rs.client.Entity;
-import javax.ws.rs.client.Invocation;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-import org.junit.After;
-import org.junit.Before;
-import org.junit.BeforeClass;
-import org.junit.Test;
+import org.junit.jupiter.api.AfterEach;
+import org.junit.jupiter.api.BeforeEach;
+import org.junit.jupiter.api.Test;
 import org.onap.policy.models.pap.concepts.PdpGroupUpdateResponse;
 import org.onap.policy.models.pdp.concepts.PdpGroup;
 import org.onap.policy.models.pdp.concepts.PdpGroups;
@@ -40,7 +40,7 @@ import org.onap.policy.models.pdp.enums.PdpState;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-public class PdpGroupCreateOrUpdateTest extends End2EndBase {
+class PdpGroupCreateOrUpdateTest extends End2EndBase {
     private static final Logger logger = LoggerFactory.getLogger(PdpGroupCreateOrUpdateTest.class);
 
     private static final String CREATEORUPDATE_GROUPS_ENDPOINT = "pdps/groups/batch";
@@ -48,24 +48,13 @@ public class PdpGroupCreateOrUpdateTest extends End2EndBase {
     private static final String CREATE_SUBGROUP = "pdpTypeA";
     private static final String GROUP_ENDPOINT = "pdps";
 
-    /**
-     * Starts Main and adds policies to the DB.
-     *
-     * @throws Exception if an error occurs
-     */
-    @BeforeClass
-    public static void setUpBeforeClass() throws Exception {
-        End2EndBase.setUpBeforeClass();
-
-        addToscaPolicyTypes("monitoring.policy-type.yaml");
-    }
-
     /**
      * Sets up.
      */
     @Override
-    @Before
+    @BeforeEach
     public void setUp() throws Exception {
+        addToscaPolicyTypes("monitoring.policy-type.yaml");
         super.setUp();
 
         context = new End2EndContext();
@@ -75,7 +64,7 @@ public class PdpGroupCreateOrUpdateTest extends End2EndBase {
      * Deletes the deployed group.
      */
     @Override
-    @After
+    @AfterEach
     public void tearDown() {
         // delete the group that was inserted
         try {
@@ -88,18 +77,30 @@ public class PdpGroupCreateOrUpdateTest extends End2EndBase {
     }
 
     @Test
-    public void testCreateGroups() throws Exception {
+    void testCreateGroupsJson() throws Exception {
 
+        createPdpGroups("createGroups.json", MediaType.APPLICATION_JSON);
+    }
+
+    @Test
+    void testCreateGroupsYaml() throws Exception {
+
+        createPdpGroups("createGroups.yaml", "application/yaml");
+    }
+
+    private void createPdpGroups(String fileName, String mediaType) throws Exception, InterruptedException {
         context.addPdp("pdpAA_1", CREATE_SUBGROUP);
         context.addPdp("pdpAA_2", CREATE_SUBGROUP);
         context.addPdp("pdpAB_1", "pdpTypeB");
 
         context.startThreads();
 
-        Invocation.Builder invocationBuilder = sendRequest(CREATEORUPDATE_GROUPS_ENDPOINT);
+        Invocation.Builder invocationBuilder = sendRequest(CREATEORUPDATE_GROUPS_ENDPOINT, mediaType);
 
-        PdpGroups groups = loadJsonFile("createGroups.json", PdpGroups.class);
-        Entity<PdpGroups> entity = Entity.entity(groups, MediaType.APPLICATION_JSON);
+        PdpGroups groups = (mediaType.equalsIgnoreCase(MediaType.APPLICATION_JSON)
+                        ? loadJsonFile(fileName, PdpGroups.class)
+                        : loadYamlFile(fileName, PdpGroups.class));
+        Entity<PdpGroups> entity = Entity.entity(groups, mediaType);
         Response rawresp = invocationBuilder.post(entity);
         PdpGroupUpdateResponse resp = rawresp.readEntity(PdpGroupUpdateResponse.class);
         assertEquals(Response.Status.OK.getStatusCode(), rawresp.getStatus());