Polish "Add support for additional colors in Log4j2 and Logback"

See gh-34749
This commit is contained in:
Stephane Nicoll
2023-04-05 14:54:45 +02:00
parent 35994bbd74
commit 6cf08a36da
4 changed files with 51 additions and 51 deletions

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2012-2019 the original author or authors.
* Copyright 2012-2023 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -53,6 +53,8 @@ public final class ColorConverter extends LogEventPatternConverter {
static {
Map<String, AnsiElement> ansiElements = new HashMap<>();
ansiElements.put("black", AnsiColor.BLACK);
ansiElements.put("white", AnsiColor.WHITE);
ansiElements.put("faint", AnsiStyle.FAINT);
ansiElements.put("red", AnsiColor.RED);
ansiElements.put("green", AnsiColor.GREEN);
@@ -60,16 +62,14 @@ public final class ColorConverter extends LogEventPatternConverter {
ansiElements.put("blue", AnsiColor.BLUE);
ansiElements.put("magenta", AnsiColor.MAGENTA);
ansiElements.put("cyan", AnsiColor.CYAN);
ansiElements.put("white", AnsiColor.WHITE);
ansiElements.put("black", AnsiColor.BLACK);
ansiElements.put("bright_black", AnsiColor.BRIGHT_BLACK);
ansiElements.put("bright_white", AnsiColor.BRIGHT_WHITE);
ansiElements.put("bright_red", AnsiColor.BRIGHT_RED);
ansiElements.put("bright_green", AnsiColor.BRIGHT_GREEN);
ansiElements.put("bright_yellow", AnsiColor.BRIGHT_YELLOW);
ansiElements.put("bright_blue", AnsiColor.BRIGHT_BLUE);
ansiElements.put("bright_magenta", AnsiColor.BRIGHT_MAGENTA);
ansiElements.put("bright_cyan", AnsiColor.BRIGHT_CYAN);
ansiElements.put("bright_white", AnsiColor.BRIGHT_WHITE);
ELEMENTS = Collections.unmodifiableMap(ansiElements);
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2012-2019 the original author or authors.
* Copyright 2012-2023 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -43,6 +43,8 @@ public class ColorConverter extends CompositeConverter<ILoggingEvent> {
static {
Map<String, AnsiElement> ansiElements = new HashMap<>();
ansiElements.put("black", AnsiColor.BLACK);
ansiElements.put("white", AnsiColor.WHITE);
ansiElements.put("faint", AnsiStyle.FAINT);
ansiElements.put("red", AnsiColor.RED);
ansiElements.put("green", AnsiColor.GREEN);
@@ -50,16 +52,14 @@ public class ColorConverter extends CompositeConverter<ILoggingEvent> {
ansiElements.put("blue", AnsiColor.BLUE);
ansiElements.put("magenta", AnsiColor.MAGENTA);
ansiElements.put("cyan", AnsiColor.CYAN);
ansiElements.put("white", AnsiColor.WHITE);
ansiElements.put("black", AnsiColor.BLACK);
ansiElements.put("bright_black", AnsiColor.BRIGHT_BLACK);
ansiElements.put("bright_white", AnsiColor.BRIGHT_WHITE);
ansiElements.put("bright_red", AnsiColor.BRIGHT_RED);
ansiElements.put("bright_green", AnsiColor.BRIGHT_GREEN);
ansiElements.put("bright_yellow", AnsiColor.BRIGHT_YELLOW);
ansiElements.put("bright_blue", AnsiColor.BRIGHT_BLUE);
ansiElements.put("bright_magenta", AnsiColor.BRIGHT_MAGENTA);
ansiElements.put("bright_cyan", AnsiColor.BRIGHT_CYAN);
ansiElements.put("bright_white", AnsiColor.BRIGHT_WHITE);
ELEMENTS = Collections.unmodifiableMap(ansiElements);
}

View File

@@ -57,6 +57,20 @@ class ColorConverterTests {
return ColorConverter.newInstance(null, new String[] { this.in, styling });
}
@Test
void black() {
StringBuilder output = new StringBuilder();
newConverter("black").format(this.event, output);
assertThat(output).hasToString("\033[30min\033[0;39m");
}
@Test
void white() {
StringBuilder output = new StringBuilder();
newConverter("white").format(this.event, output);
assertThat(output).hasToString("\033[37min\033[0;39m");
}
@Test
void faint() {
StringBuilder output = new StringBuilder();
@@ -106,20 +120,6 @@ class ColorConverterTests {
assertThat(output).hasToString("\033[36min\033[0;39m");
}
@Test
void white() {
StringBuilder output = new StringBuilder();
newConverter("white").format(this.event, output);
assertThat(output).hasToString("\033[37min\033[0;39m");
}
@Test
void black() {
StringBuilder output = new StringBuilder();
newConverter("black").format(this.event, output);
assertThat(output).hasToString("\033[30min\033[0;39m");
}
@Test
void brightBlack() {
StringBuilder output = new StringBuilder();
@@ -127,6 +127,13 @@ class ColorConverterTests {
assertThat(output).hasToString("\033[90min\033[0;39m");
}
@Test
void brightWhite() {
StringBuilder output = new StringBuilder();
newConverter("bright_white").format(this.event, output);
assertThat(output).hasToString("\033[97min\033[0;39m");
}
@Test
void brightRed() {
StringBuilder output = new StringBuilder();
@@ -169,13 +176,6 @@ class ColorConverterTests {
assertThat(output).hasToString("\033[96min\033[0;39m");
}
@Test
void brightWhite() {
StringBuilder output = new StringBuilder();
newConverter("bright_white").format(this.event, output);
assertThat(output).hasToString("\033[97min\033[0;39m");
}
@Test
void highlightFatal() {
this.event.setLevel(Level.FATAL);

View File

@@ -1,5 +1,5 @@
/*
* Copyright 2012-2019 the original author or authors.
* Copyright 2012-2023 the original author or authors.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -51,6 +51,20 @@ class ColorConverterTests {
AnsiOutput.setEnabled(AnsiOutput.Enabled.DETECT);
}
@Test
void black() {
this.converter.setOptionList(Collections.singletonList("black"));
String out = this.converter.transform(this.event, this.in);
assertThat(out).isEqualTo("\033[30min\033[0;39m");
}
@Test
void white() {
this.converter.setOptionList(Collections.singletonList("white"));
String out = this.converter.transform(this.event, this.in);
assertThat(out).isEqualTo("\033[37min\033[0;39m");
}
@Test
void faint() {
this.converter.setOptionList(Collections.singletonList("faint"));
@@ -100,20 +114,6 @@ class ColorConverterTests {
assertThat(out).isEqualTo("\033[36min\033[0;39m");
}
@Test
void white() {
this.converter.setOptionList(Collections.singletonList("white"));
String out = this.converter.transform(this.event, this.in);
assertThat(out).isEqualTo("\033[37min\033[0;39m");
}
@Test
void black() {
this.converter.setOptionList(Collections.singletonList("black"));
String out = this.converter.transform(this.event, this.in);
assertThat(out).isEqualTo("\033[30min\033[0;39m");
}
@Test
void brightBlack() {
this.converter.setOptionList(Collections.singletonList("bright_black"));
@@ -121,6 +121,13 @@ class ColorConverterTests {
assertThat(out).isEqualTo("\033[90min\033[0;39m");
}
@Test
void brightWhite() {
this.converter.setOptionList(Collections.singletonList("bright_white"));
String out = this.converter.transform(this.event, this.in);
assertThat(out).isEqualTo("\033[97min\033[0;39m");
}
@Test
void brightRed() {
this.converter.setOptionList(Collections.singletonList("bright_red"));
@@ -163,13 +170,6 @@ class ColorConverterTests {
assertThat(out).isEqualTo("\033[96min\033[0;39m");
}
@Test
void brightWhite() {
this.converter.setOptionList(Collections.singletonList("bright_white"));
String out = this.converter.transform(this.event, this.in);
assertThat(out).isEqualTo("\033[97min\033[0;39m");
}
@Test
void highlightError() {
this.event.setLevel(Level.ERROR);