Clean up of Pair classes - models
[policy/models.git] / models-interactions / model-impl / sdnc / src / test / java / org / onap / policy / sdnc / SdncManagerTest.java
index 2a1cc69..45461de 100644 (file)
@@ -4,8 +4,8 @@
  * ================================================================================
  * Copyright (C) 2018 Huawei. All rights reserved.
  * ================================================================================
- * Modifications Copyright (C) 2019 AT&T Intellectual Property. All rights reserved
- * Modifications Copyright (C) 2019 Nordix Foundation.
+ * Modifications Copyright (C) 2019-2020 AT&T Intellectual Property. All rights reserved
+ * Modifications Copyright (C) 2019-2020 Nordix Foundation.
  * ================================================================================
  * 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.sdnc;
 
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.fail;
+import static org.assertj.core.api.Assertions.assertThatIllegalArgumentException;
+import static org.mockito.ArgumentMatchers.any;
 import static org.mockito.ArgumentMatchers.anyMap;
 import static org.mockito.ArgumentMatchers.anyString;
-import static org.mockito.ArgumentMatchers.endsWith;
 import static org.mockito.ArgumentMatchers.eq;
 import static org.mockito.ArgumentMatchers.startsWith;
 import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.verify;
 import static org.mockito.Mockito.when;
 
 import java.util.UUID;
+import org.apache.commons.lang3.tuple.Pair;
 import org.junit.Before;
-import org.junit.BeforeClass;
 import org.junit.Test;
 import org.onap.policy.rest.RestManager;
-import org.onap.policy.rest.RestManager.Pair;
 import org.onap.policy.sdnc.SdncManager.SdncCallback;
 import org.onap.policy.sdnc.util.Serialization;
 
 public class SdncManagerTest implements SdncCallback {
+    private static final String SOMEWHERE_OVER_THE_RAINBOW = "http://somewhere.over.the.rainbow";
+
+    private static final String DOROTHY = "Dorothy";
+
     private RestManager   mockedRestManager;
 
     private Pair<Integer, String> httpResponsePutOk;
-    private Pair<Integer, String> httpResponseGetOk;
     private Pair<Integer, String> httpResponseBadResponse;
     private Pair<Integer, String> httpResponseErr;
 
     private SdncRequest  request;
     private SdncResponse response;
 
-    @BeforeClass
-    public static void beforeTestSdncManager() {
-    }
-
     /**
      * Set up the mocked REST manager.
      */
@@ -64,10 +62,9 @@ public class SdncManagerTest implements SdncCallback {
     public void setupMockedRest() {
         mockedRestManager   = mock(RestManager.class);
 
-        httpResponsePutOk       = mockedRestManager.new Pair<>(202, Serialization.gsonPretty.toJson(response));
-        httpResponseGetOk       = mockedRestManager.new Pair<>(200, Serialization.gsonPretty.toJson(response));
-        httpResponseBadResponse = mockedRestManager.new Pair<>(202, Serialization.gsonPretty.toJson(null));
-        httpResponseErr         = mockedRestManager.new Pair<>(200, null);
+        httpResponsePutOk       = Pair.of(202, Serialization.gsonPretty.toJson(response));
+        httpResponseBadResponse = Pair.of(202, Serialization.gsonPretty.toJson(null));
+        httpResponseErr         = Pair.of(200, null);
     }
 
     /**
@@ -90,7 +87,7 @@ public class SdncManagerTest implements SdncCallback {
         request = new SdncRequest();
         request.setRequestId(requestId);
         request.setHealRequest(healRequest);
-        request.setNsInstanceId("Dorothy");
+        request.setNsInstanceId(DOROTHY);
 
         SdncResponseOutput responseDescriptor = new SdncResponseOutput();
         responseDescriptor.setSvcRequestId("1234");
@@ -103,117 +100,87 @@ public class SdncManagerTest implements SdncCallback {
     }
 
     @Test
-    public void testSdncInitiation() throws InterruptedException {
-        try {
-            new SdncManager(null, null, null, null, null);
-            fail("test should throw an exception here");
-        }
-        catch (IllegalArgumentException e) {
-            assertEquals(
-                "the parameters \"callback\" and \"request\" on the SdncManager constructor may not be null",
-                e.getMessage()
-            );
-        }
-
-        try {
-            new SdncManager(this, null, null, null, null);
-            fail("test should throw an exception here");
-        }
-        catch (IllegalArgumentException e) {
-            assertEquals(
-                "the parameters \"callback\" and \"request\" on the SdncManager constructor may not be null",
-                e.getMessage()
-            );
-        }
-
-        try {
-            new SdncManager(this, request, null, null, null);
-            fail("test should throw an exception here");
-        }
-        catch (IllegalArgumentException e) {
-            assertEquals(
-                "the \"url\" parameter on the SdncManager constructor may not be null",
-                e.getMessage()
-            );
-        }
-
-        new SdncManager(this, request, "http://somewhere.over.the.rainbow", "Dorothy", "Toto");
+    public void testSdncInitiation() {
+
+        assertThatIllegalArgumentException().isThrownBy(() -> new SdncManager(null, null, null, null, null))
+            .withMessage("the parameters \"callback\" and \"request\" on the SdncManager constructor may not be null");
+
+        assertThatIllegalArgumentException().isThrownBy(() -> new SdncManager(this, null, null, null, null))
+            .withMessage("the parameters \"callback\" and \"request\" on the SdncManager constructor may not be null");
+
+        assertThatIllegalArgumentException().isThrownBy(() -> new SdncManager(this, request, null, null, null))
+            .withMessage("the \"url\" parameter on the SdncManager constructor may not be null");
+
+        new SdncManager(this, request, SOMEWHERE_OVER_THE_RAINBOW, DOROTHY, "Toto");
     }
 
     @Test
     public void testSdncExecutionException() throws InterruptedException {
-        SdncManager manager = new SdncManager(this, request, "http://somewhere.over.the.rainbow", "Dorothy", "Exception");
+        SdncManager manager = new SdncManager(this, request, SOMEWHERE_OVER_THE_RAINBOW, DOROTHY, "Exception");
         manager.setRestManager(mockedRestManager);
 
+        when(mockedRestManager.post(startsWith(SOMEWHERE_OVER_THE_RAINBOW), eq(DOROTHY), eq("Exception"), anyMap(),
+                        anyString(), anyString())).thenThrow(new RuntimeException("OzException"));
+
         Thread managerThread = new Thread(manager);
         managerThread.start();
 
-        when(mockedRestManager.post(startsWith("http://somewhere.over.the.rainbow"), eq("Dorothy"), eq("Exception"), anyMap(), anyString(), anyString()))
-            .thenThrow(new RuntimeException("OzException"));
-
+        managerThread.join(1000);
 
-        managerThread.join(100);
+        verify(mockedRestManager).post(any(), any(), any(), any(), any(), any());
     }
 
     @Test
     public void testSdncExecutionNull() throws InterruptedException {
-        SdncManager manager = new SdncManager(this, request, "http://somewhere.over.the.rainbow", "Dorothy", "Null");
+        SdncManager manager = new SdncManager(this, request, SOMEWHERE_OVER_THE_RAINBOW, DOROTHY, "Null");
         manager.setRestManager(mockedRestManager);
 
-        Thread managerThread = new Thread(manager);
-        managerThread.start();
+        when(mockedRestManager.post(startsWith(SOMEWHERE_OVER_THE_RAINBOW), eq(DOROTHY), eq("Null"), anyMap(),
+                        anyString(), anyString())).thenReturn(null);
 
-        when(mockedRestManager.post(startsWith("http://somewhere.over.the.rainbow"), eq("Dorothy"), eq("Null"), anyMap(), anyString(), anyString()))
-            .thenReturn(null);
+        manager.run();
 
-        managerThread.join(100);
+        verify(mockedRestManager).post(any(), any(), any(), any(), any(), any());
     }
 
 
     @Test
     public void testSdncExecutionError0() throws InterruptedException {
-        SdncManager manager = new SdncManager(this, request, "http://somewhere.over.the.rainbow", "Dorothy", "Error0");
+        SdncManager manager = new SdncManager(this, request, SOMEWHERE_OVER_THE_RAINBOW, DOROTHY, "Error0");
         manager.setRestManager(mockedRestManager);
 
-        Thread managerThread = new Thread(manager);
-        managerThread.start();
+        when(mockedRestManager.post(startsWith(SOMEWHERE_OVER_THE_RAINBOW), eq(DOROTHY), eq("Error0"), anyMap(),
+                        anyString(), anyString())).thenReturn(httpResponseErr);
 
-        when(mockedRestManager.post(startsWith("http://somewhere.over.the.rainbow"), eq("Dorothy"), eq("Error0"), anyMap(), anyString(), anyString()))
-            .thenReturn(httpResponseErr);
+        manager.run();
 
-        managerThread.join(100);
+        verify(mockedRestManager).post(any(), any(), any(), any(), any(), any());
     }
 
     @Test
     public void testSdncExecutionBadResponse() throws InterruptedException {
-        SdncManager manager = new SdncManager(this, request, "http://somewhere.over.the.rainbow", "Dorothy", "BadResponse");
+        SdncManager manager = new SdncManager(this, request, SOMEWHERE_OVER_THE_RAINBOW, DOROTHY, "BadResponse");
         manager.setRestManager(mockedRestManager);
 
-        Thread managerThread = new Thread(manager);
-        managerThread.start();
+        when(mockedRestManager.post(startsWith(SOMEWHERE_OVER_THE_RAINBOW), eq(DOROTHY), eq("OK"), anyMap(),
+                        anyString(), anyString())).thenReturn(httpResponseBadResponse);
 
-        when(mockedRestManager.post(startsWith("http://somewhere.over.the.rainbow"), eq("Dorothy"), eq("OK"), anyMap(), anyString(), anyString()))
-            .thenReturn(httpResponseBadResponse);
+        manager.run();
 
-        managerThread.join(100);
+        verify(mockedRestManager).post(any(), any(), any(), any(), any(), any());
     }
 
     @Test
     public void testSdncExecutionOk() throws InterruptedException {
-        SdncManager manager = new SdncManager(this, request, "http://somewhere.over.the.rainbow", "Dorothy", "OOK");
+        SdncManager manager = new SdncManager(this, request, SOMEWHERE_OVER_THE_RAINBOW, DOROTHY, "OOK");
         manager.setRestManager(mockedRestManager);
 
-        Thread managerThread = new Thread(manager);
-        managerThread.start();
-
-        when(mockedRestManager.post(startsWith("http://somewhere.over.the.rainbow"), eq("Dorothy"), eq("OK"), anyMap(), anyString(), anyString()))
-            .thenReturn(httpResponsePutOk);
-
-        when(mockedRestManager.get(endsWith("1234"), eq("Dorothy"), eq("OK"), anyMap()))
-            .thenReturn(httpResponseGetOk);
+        when(mockedRestManager.post(startsWith(SOMEWHERE_OVER_THE_RAINBOW), eq(DOROTHY), eq("OK"), anyMap(),
+                        anyString(), anyString())).thenReturn(httpResponsePutOk);
 
+        manager.run();
 
-        managerThread.join(100);
+        verify(mockedRestManager).post(any(), any(), any(), any(), any(), any());
     }
 
     @Override