package biz.paluch.logging.gelf; import static org.assertj.core.api.Assertions.assertThat; import java.util.List; import org.junit.jupiter.api.Test; /** * @author Mark Paluch */ public class MessageFieldUnitTests { private static final String NAME = "name"; @Test public void testMdcMessageField() throws Exception { MdcMessageField field = new MdcMessageField(NAME, "mdcName"); assertThat(field.toString()).isEqualTo(MdcMessageField.class.getSimpleName() + " [name='name', mdcName='mdcName']"); } @Test public void testLogMessageField() throws Exception { LogMessageField field = new LogMessageField(NAME, LogMessageField.NamedLogField.byName("SourceMethodName")); assertThat(field.toString()) .isEqualTo(LogMessageField.class.getSimpleName() + " [name='name', namedLogField=SourceMethodName]"); } @Test public void testStaticMessageField() throws Exception { StaticMessageField field = new StaticMessageField(NAME, "value"); assertThat(field.toString()).isEqualTo(StaticMessageField.class.getSimpleName() + " [name='name', value='value']"); } @Test public void testDynamicMdcMessageField() throws Exception { DynamicMdcMessageField field = new DynamicMdcMessageField(".*"); assertThat(field.toString()).isEqualTo(DynamicMdcMessageField.class.getSimpleName() + " [regex='.*']"); } @Test public void testGetMapping() throws Exception { List<LogMessageField> result = LogMessageField.getDefaultMapping(false, LogMessageField.NamedLogField.LoggerName, LogMessageField.NamedLogField.NDC); assertThat(result).hasSize(2); } @Test public void testGetMappingAllFields() throws Exception { List<LogMessageField> result = LogMessageField.getDefaultMapping(false, LogMessageField.NamedLogField.values()); assertThat(result.size()).isEqualTo(LogMessageField.NamedLogField.values().length); } @Test public void testGetMappingAllFieldsWithDefaultFile() throws Exception { List<LogMessageField> result = LogMessageField.getDefaultMapping(true, LogMessageField.NamedLogField.values()); assertThat(result.size()).isEqualTo(LogMessageField.NamedLogField.values().length); } }