2020import static org .apache .logging .log4j .layout .template .json .TestHelpers .writeJson ;
2121import static org .assertj .core .api .Assertions .assertThat ;
2222
23- import java .io .*;
23+ import java .io .BufferedReader ;
24+ import java .io .FileInputStream ;
25+ import java .io .IOException ;
26+ import java .io .InputStream ;
27+ import java .io .InputStreamReader ;
28+ import java .io .Reader ;
2429import java .nio .charset .StandardCharsets ;
2530import java .nio .file .Files ;
2631import java .nio .file .Path ;
3843import org .apache .logging .log4j .core .config .builder .api .ConfigurationBuilderFactory ;
3944import org .apache .logging .log4j .core .layout .ByteBufferDestination ;
4045import org .apache .logging .log4j .core .layout .StringBuilderEncoder ;
46+ import org .junit .jupiter .api .Test ;
4147import org .junit .jupiter .api .parallel .Execution ;
4248import org .junit .jupiter .api .parallel .ExecutionMode ;
43- import org .junit .jupiter .params .ParameterizedTest ;
44- import org .junit .jupiter .params .provider .ValueSource ;
4549
4650/**
4751 * Tests {@link JsonTemplateLayout} doesn't exhibit unexpected behavior when accessed concurrently.
5862@ Execution (ExecutionMode .SAME_THREAD )
5963class JsonTemplateLayoutConcurrentEncodeTest {
6064
61- @ ParameterizedTest
62- @ ValueSource (
63- strings = {
64- "dummy" ,
65- "threadLocal" ,
66- "queue:supplier=java.util.concurrent.ArrayBlockingQueue.new" ,
67- "queue:supplier=org.jctools.queues.MpmcArrayQueue.new"
68- })
69- void test_concurrent_encode (final String recyclerFactory ) throws IOException {
70- final Path appenderFilepath = createAppenderFilepath (recyclerFactory );
65+ @ Test
66+ void test_concurrent_encode () throws IOException {
67+ final Path appenderFilepath = createAppenderFilepath ();
7168 final int workerCount = 10 ;
7269 final int messageLength = 1_000 ;
7370 final int messageCount = 1_000 ;
7471 try {
75- withContextFromTemplate (appenderFilepath , recyclerFactory , loggerContext -> {
72+ withContextFromTemplate (appenderFilepath , loggerContext -> {
7673 final Logger logger = loggerContext .getLogger (JsonTemplateLayoutConcurrentEncodeTest .class );
7774 runWorkers (workerCount , messageLength , messageCount , logger );
7875 });
@@ -84,24 +81,16 @@ void test_concurrent_encode(final String recyclerFactory) throws IOException {
8481 Files .delete (appenderFilepath );
8582 }
8683
87- private static Path createAppenderFilepath (final String recyclerFactory ) {
88- final String appenderFilename = String .format (
89- "%s-%s.log" ,
90- JsonTemplateLayoutConcurrentEncodeTest .class .getSimpleName (),
91- recyclerFactory .replaceAll ("[^A-Za-z0-9]+" , "" ));
84+ private static Path createAppenderFilepath () {
85+ final String appenderFilename = JsonTemplateLayoutConcurrentEncodeTest .class .getSimpleName () + ".log" ;
9286 return Paths .get (System .getProperty ("java.io.tmpdir" ), appenderFilename );
9387 }
9488
9589 private static void withContextFromTemplate (
96- final Path appenderFilepath ,
97- final String recyclerFactory ,
98- final Consumer <LoggerContext > loggerContextConsumer ) {
90+ final Path appenderFilepath , final Consumer <LoggerContext > loggerContextConsumer ) {
9991
10092 // Create the configuration builder.
101- final String configName = String .format (
102- "%s-%s" ,
103- JsonTemplateLayoutConcurrentEncodeTest .class .getSimpleName (),
104- recyclerFactory .replaceAll ("[^A-Za-z0-9]+" , "" ));
93+ final String configName = JsonTemplateLayoutConcurrentEncodeTest .class .getSimpleName ();
10594 final ConfigurationBuilder <?> configBuilder = ConfigurationBuilderFactory .newConfigurationBuilder ()
10695 .setStatusLevel (Level .ERROR )
10796 .setConfigurationName (configName );
@@ -120,8 +109,7 @@ private static void withContextFromTemplate(
120109 .addAttribute ("ignoreExceptions" , false )
121110 .add (configBuilder
122111 .newLayout ("JsonTemplateLayout" )
123- .addAttribute ("eventTemplate" , eventTemplateJson )
124- .addAttribute ("recyclerFactory" , recyclerFactory )))
112+ .addAttribute ("eventTemplate" , eventTemplateJson )))
125113 .add (configBuilder .newRootLogger (Level .ALL ).add (configBuilder .newAppenderRef (appenderName )))
126114 .build (false );
127115
0 commit comments