package biz.paluch.logging.gelf.jul; import static org.assertj.core.api.Assertions.assertThat; import java.util.logging.LogManager; import java.util.logging.Logger; import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import biz.paluch.logging.gelf.GelfTestSender; import biz.paluch.logging.gelf.intern.GelfMessage; /** * @author Mark Paluch * @since 27.09.13 08:25 */ public class GelfLogHandlerSystemPropertiesTests { public static final String LOG_MESSAGE = "foo bar test log message"; public static final String PROPERTY1 = "myproperty"; public static final String PROPERTY1_VALUE = "value of myproperty"; public static final String PROPERTY2 = "otherproperty"; public static final String PROPERTY2_VALUE = "value of otherproperty"; @BeforeEach public void before() throws Exception { System.clearProperty(PROPERTY1); System.clearProperty(PROPERTY2); GelfTestSender.getMessages().clear(); LogManager.getLogManager() .readConfiguration(getClass().getResourceAsStream("/jul/test-logging-systemproperties.properties")); } @Test public void testDefaults() throws Exception { Logger logger = Logger.getLogger(getClass().getName()); logger.info(LOG_MESSAGE); assertThat(GelfTestSender.getMessages()).hasSize(1); GelfMessage gelfMessage = GelfTestSender.getMessages().get(0); assertThat(gelfMessage.getField("propertyField1")).isEqualTo("${user.language}"); assertThat(gelfMessage.getField("propertyField2")).isEqualTo("${myproperty}"); assertThat(gelfMessage.getField("propertyField3")).isEqualTo("${otherproperty:fallback}"); assertThat(gelfMessage.getField("propertyField4")).isEqualTo("embedded${myproperty}property"); } }