/*-
* ============LICENSE_START=======================================================
- * Copyright (C) 2019 Nordix Foundation.
+ * 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.models.base;
+import static org.assertj.core.api.Assertions.assertThat;
import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
import javax.ws.rs.core.Response;
-
import org.junit.Test;
+import org.onap.policy.models.errors.concepts.ErrorResponseInfo;
/**
* Test PfModelExceptionInfo interface.
* @author Liam Fallon (liam.fallon@est.tech)
*/
public class PfModelExceptionInfoTest {
- @Test
- public void exceptionInfoTest() {
- try {
- throw new PfModelException(Response.Status.ACCEPTED, "HELLO");
- } catch (PfModelException pfme) {
- String errorMessage = getErrorMessage(pfme);
- assertEquals("Server returned: Accepted", errorMessage.substring(0, 25));
- }
- try {
- throw new PfModelRuntimeException(Response.Status.ACCEPTED, "HELLO");
- } catch (PfModelRuntimeException pfme) {
- String errorMessage = getErrorMessage(pfme);
- assertEquals("Server returned: Accepted", errorMessage.substring(0, 25));
- }
+ @Test
+ public void testExceptionInfo() {
+ final PfModelException pfme = new PfModelException(Response.Status.ACCEPTED, "HELLO");
+ assertThat(pfme).hasMessage("HELLO");
+ assertEquals("Server returned: Accepted", getErrorMessage(pfme).substring(0, 25));
+ assertNotNull(pfme.toString());
+
+ final PfModelRuntimeException pfmr = new PfModelRuntimeException(Response.Status.ACCEPTED, "HELLO");
+ assertThat(pfmr).hasMessage("HELLO");
+ assertEquals("Server returned: Accepted", getErrorMessage(pfmr).substring(0, 25));
+ assertNotNull(pfmr.toString());
}
- private String getErrorMessage(final PfModelExceptionInfo pfme) {
+ private String getErrorMessage(final ErrorResponseInfo eri) {
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append("Server returned: ");
- stringBuilder.append(pfme.getStatusCode().toString());
+ stringBuilder.append(eri.getErrorResponse().getResponseCode().toString());
+ stringBuilder.append("Error Message:\n");
+ stringBuilder.append(eri.getErrorResponse().getErrorMessage());
stringBuilder.append("\nDetailed Message:\n");
- stringBuilder.append(pfme.getCascadedMessage());
- stringBuilder.append("\nStack Trace:\n");
- stringBuilder.append(pfme.getStackTraceAsString());
+ stringBuilder.append(String.join("\n", eri.getErrorResponse().getErrorDetails()));
return stringBuilder.toString();
}