aboutsummaryrefslogtreecommitdiffstats
path: root/src/test
diff options
context:
space:
mode:
authorTomasz Wrobel <tomasz.wrobel@nokia.com>2021-04-21 11:50:48 +0200
committerTomasz Wrobel <tomasz.wrobel@nokia.com>2021-04-21 14:01:52 +0200
commit70e869e900fecc1bebf2ffc597ff782d02522c2c (patch)
tree090152ab0a06ba806e2c8c45b14a8fb4a562069c /src/test
parentc8f27b8684e748196b5eb9bd21865b06cbd2695f (diff)
Add log level configuration by system environment variable
Issue-ID: SDC-3185 Signed-off-by: Tomasz Wrobel <tomasz.wrobel@nokia.com> Change-Id: I7ec4cbfec802f38822665aca577a3c1ab09a3c73
Diffstat (limited to 'src/test')
-rw-r--r--src/test/java/org/onap/sdc/helmvalidator/config/LoggerConfigTest.java92
1 files changed, 92 insertions, 0 deletions
diff --git a/src/test/java/org/onap/sdc/helmvalidator/config/LoggerConfigTest.java b/src/test/java/org/onap/sdc/helmvalidator/config/LoggerConfigTest.java
new file mode 100644
index 0000000..b2ae9e5
--- /dev/null
+++ b/src/test/java/org/onap/sdc/helmvalidator/config/LoggerConfigTest.java
@@ -0,0 +1,92 @@
+/*
+ * ============LICENSE_START=======================================================
+ * SDC-HELM-VALIDATOR
+ * ================================================================================
+ * Copyright (C) 2021 Nokia. 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.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.onap.sdc.helmvalidator.config;
+
+import static org.assertj.core.api.Assertions.assertThat;
+import static org.mockito.ArgumentMatchers.anyString;
+import static org.mockito.Mockito.mock;
+import static org.mockito.Mockito.when;
+
+import java.util.Properties;
+import org.junit.jupiter.api.Test;
+
+class LoggerConfigTest {
+
+ private static final boolean WITHOUT_DETAILS = false;
+ private static final boolean WITH_DETAILS = true;
+ private static final String EXPECTED_ERROR = "ERROR";
+ private static final String EXPECTED_DEBUG = "DEBUG";
+
+ private final EnvProvider envProvider = mock(EnvProvider.class);
+ private final LoggerConfig loggerConfig = new LoggerConfig(envProvider);
+
+ @Test
+ void shouldProvideCorrectPropertiesForErrorLogLevel() {
+ when(envProvider.readEnvVariable(anyString())).thenReturn("ERROR");
+
+ Properties properties = loggerConfig.getLoggerProperties();
+
+ assertThatAllLogPropertiesHasExpectedValue(properties, EXPECTED_ERROR);
+ assertThatRequestDetailsPropertyHasExpectedValue(properties, WITHOUT_DETAILS);
+ }
+
+ @Test
+ void shouldProvideCorrectPropertiesForEnvInLowerCase() {
+ when(envProvider.readEnvVariable(anyString())).thenReturn("error");
+
+ Properties properties = loggerConfig.getLoggerProperties();
+
+ assertThatAllLogPropertiesHasExpectedValue(properties, EXPECTED_ERROR);
+ assertThatRequestDetailsPropertyHasExpectedValue(properties, WITHOUT_DETAILS);
+ }
+
+ @Test
+ void shouldProvideCorrectPropertiesForDebugLevel() {
+ when(envProvider.readEnvVariable(anyString())).thenReturn("DEBUG");
+
+ Properties properties = loggerConfig.getLoggerProperties();
+
+ assertThatAllLogPropertiesHasExpectedValue(properties, EXPECTED_DEBUG);
+ assertThatRequestDetailsPropertyHasExpectedValue(properties, WITH_DETAILS);
+ }
+
+ @Test
+ void shouldProvideCorrectPropertiesForNotSupportedLevel() {
+ when(envProvider.readEnvVariable(anyString())).thenReturn("notSupportedLevel");
+
+ Properties properties = loggerConfig.getLoggerProperties();
+
+ assertThatAllLogPropertiesHasExpectedValue(properties, "ERROR");
+ assertThatRequestDetailsPropertyHasExpectedValue(properties, WITHOUT_DETAILS);
+ }
+
+ private void assertThatAllLogPropertiesHasExpectedValue(Properties properties, String expectedValue) {
+ assertThat(properties.getProperty("logging.level.web")).isEqualTo(expectedValue);
+ assertThat(properties.getProperty("logging.level.org.springframework")).isEqualTo(expectedValue);
+ assertThat(properties.getProperty("logging.level.org.apache.catalina.core")).isEqualTo(expectedValue);
+ assertThat(properties.getProperty("logging.level.org.onap.sdc.helmvalidator")).isEqualTo(expectedValue);
+ }
+
+ private void assertThatRequestDetailsPropertyHasExpectedValue(Properties properties, Boolean expected) {
+ assertThat(properties.getProperty("spring.mvc.log-request-details")).isEqualTo(expected.toString());
+ }
+
+}