Catalog alignment
[sdc.git] / common-app-logging / src / test / java / org / openecomp / sdc / common / log / elements / LoggerDebugTest.java
1 package org.openecomp.sdc.common.log.elements;
2
3 /**
4  * Created by dd4296 on 12/25/2017.
5  */
6
7 import org.junit.Assert;
8 import org.junit.Before;
9 import org.junit.Test;
10 import org.junit.runner.RunWith;
11 import org.mockito.Mock;
12 import org.mockito.junit.MockitoJUnitRunner;
13 import org.onap.logging.ref.slf4j.ONAPLogConstants;
14 import org.openecomp.sdc.common.log.enums.LogLevel;
15 import org.openecomp.sdc.common.log.utils.LoggingThreadLocalsHolder;
16 import org.slf4j.Logger;
17 import org.slf4j.MDC;
18
19 import java.net.UnknownHostException;
20
21 import static org.junit.Assert.assertEquals;
22 import static org.junit.Assert.assertNull;
23 import static org.onap.logging.ref.slf4j.ONAPLogConstants.MDCs.RESPONSE_STATUS_CODE;
24 import static org.openecomp.sdc.common.log.api.ILogConfiguration.*;
25
26 @RunWith(MockitoJUnitRunner.class)
27 public class LoggerDebugTest {
28
29     @Mock
30     private Logger logger;
31
32     private LoggerDebug debugLog;
33
34      @Before
35     public void init() {
36         debugLog = new LoggerDebug(LogFieldsMdcHandler.getInstance(), logger);
37         LoggingThreadLocalsHolder.setUuid(null);
38         MDC.clear();
39     }
40
41     @Test
42     public void whenNoFieldsIsPopulated_RequestedMdcFieldsAreEmpty() {
43         debugLog.clear()
44                 .log(LogLevel.DEBUG, "some error code");
45         assertNull(MDC.get(ONAPLogConstants.MDCs.REQUEST_ID));
46     }
47
48     @Test
49     public void debugLogCheckValidationValidFieldsTest() {
50         debugLog.clear()
51                 .startTimer()
52                 .setKeyRequestId("uuid")
53                 .log(LogLevel.DEBUG, "some error code");
54
55         assertEquals(MDC.get(ONAPLogConstants.MDCs.REQUEST_ID), "uuid");
56     }
57
58     @Test
59     public void whenOnlyDebugUUIDFieldsIsPopulated_ShouldReturnAssertTrue_onUUIDFieldCheck() {
60         debugLog.clear()
61                 .setKeyRequestId("uuid")
62                 .log(LogLevel.DEBUG, "some error code");
63
64         assertEquals("uuid", MDC.get(ONAPLogConstants.MDCs.REQUEST_ID));
65     }
66
67     @Test
68     public void whenAllDebugFieldsArePopulated_ShouldReturnAssertTrue_onEachMACFieldCheck() throws UnknownHostException {
69         debugLog.clear()
70                 .startTimer()
71                 .setKeyRequestId(ONAPLogConstants.MDCs.REQUEST_ID)
72                 .log(LogLevel.DEBUG, "some message");
73
74         Assert.assertTrue(LogFieldsMdcHandler.getInstance().isMDCParamEmpty(MDC_END_TIMESTAMP));
75         Assert.assertTrue(LogFieldsMdcHandler.getInstance().isMDCParamEmpty(MDC_ELAPSED_TIME));
76         Assert.assertTrue(LogFieldsMdcHandler.getInstance().isMDCParamEmpty(RESPONSE_STATUS_CODE));
77     }
78
79
80     @Test
81     public void validateMandatoryFields(){
82         assertEquals(ONAPLogConstants.MDCs.REQUEST_ID, debugLog.checkMandatoryFieldsExistInMDC().trim());
83     }
84
85     @Test
86     public void validateMandatoryFieldsWhenFieldIsSet(){
87         debugLog.clear()
88                 .setKeyRequestId("1234");
89         assertEquals("", debugLog.checkMandatoryFieldsExistInMDC());
90     }
91 }