/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
+ * Copyright (C) 2019, 2021 Nordix Foundation.
+ * Modifications Copyright (C) 2019 AT&T Intellectual Property. 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.
import static org.junit.Assert.assertNotNull;
import java.io.IOException;
-
import javax.ws.rs.core.Response;
-
+import javax.ws.rs.core.Response.Status;
import org.junit.Test;
import org.onap.policy.models.errors.concepts.ErrorResponse;
public class ExceptionsTest {
+ private static final String STRING_TEXT = "String";
+ private static final String MESSAGE = "Message";
+
@Test
public void test() {
- assertNotNull(new PfModelException(Response.Status.OK, "Message"));
- assertNotNull(new PfModelException(Response.Status.OK, "Message", "String"));
- assertNotNull(new PfModelException(Response.Status.OK, "Message", new IOException()));
- assertNotNull(new PfModelException(Response.Status.OK, "Message", new IOException(), "String"));
+ assertNotNull(new PfModelException(Response.Status.OK, MESSAGE));
+ assertNotNull(new PfModelException(Response.Status.OK, MESSAGE, STRING_TEXT));
+ assertNotNull(new PfModelException(Response.Status.OK, MESSAGE, new IOException()));
+ assertNotNull(new PfModelException(Response.Status.OK, MESSAGE, new IOException(), STRING_TEXT));
String key = "A String";
PfModelException ae =
- new PfModelException(Response.Status.OK, "Message", new IOException("IO exception message"), key);
+ new PfModelException(Response.Status.OK, MESSAGE, new IOException("IO exception message"), key);
ErrorResponse errorResponse = ae.getErrorResponse();
assertEquals("Message\nIO exception message", String.join("\n", errorResponse.getErrorDetails()));
assertEquals(key, ae.getObject());
- assertNotNull(new PfModelRuntimeException(Response.Status.OK, "Message"));
- assertNotNull(new PfModelRuntimeException(Response.Status.OK, "Message", "String"));
- assertNotNull(new PfModelRuntimeException(Response.Status.OK, "Message", new IOException()));
- assertNotNull(new PfModelRuntimeException(Response.Status.OK, "Message", new IOException(), "String"));
+ assertNotNull(new PfModelRuntimeException(Response.Status.OK, MESSAGE));
+ assertNotNull(new PfModelRuntimeException(Response.Status.OK, MESSAGE, STRING_TEXT));
+ assertNotNull(new PfModelRuntimeException(Response.Status.OK, MESSAGE, new IOException()));
+ assertNotNull(new PfModelRuntimeException(Response.Status.OK, MESSAGE, new IOException(), STRING_TEXT));
String rkey = "A String";
PfModelRuntimeException re = new PfModelRuntimeException(Response.Status.OK, "Runtime Message",
assertEquals("Runtime Message\nIO runtime exception message",
String.join("\n", errorResponse.getErrorDetails()));
assertEquals(key, re.getObject());
+
+ PfModelRuntimeException pfre = new PfModelRuntimeException(ae);
+ assertEquals(ae.getErrorResponse().getResponseCode(), pfre.getErrorResponse().getResponseCode());
+ assertEquals(ae.getMessage(), pfre.getMessage());
+
+ try {
+ try {
+ throw new PfModelException(Status.BAD_GATEWAY, "An Exception");
+ } catch (PfModelException pfme) {
+ throw new PfModelRuntimeException(pfme);
+ }
+ } catch (PfModelRuntimeException pfmre) {
+ assertEquals(Status.BAD_GATEWAY, pfmre.getErrorResponse().getResponseCode());
+ assertEquals("An Exception", pfmre.getMessage());
+ assertEquals(PfModelException.class.getName(), pfmre.getCause().getClass().getName());
+ }
}
}