You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by rg...@apache.org on 2021/05/04 06:37:38 UTC
[logging-log4j2] 01/01: More JPMS work
This is an automated email from the ASF dual-hosted git repository.
rgoers pushed a commit to branch jpms-mockito-fails
in repository https://gitbox.apache.org/repos/asf/logging-log4j2.git
commit 347edbb882c76c8549875b3c354cbd09f50b5eea
Author: Ralph Goers <rg...@apache.org>
AuthorDate: Mon May 3 23:37:07 2021 -0700
More JPMS work
---
.../org/apache/log4j/CallerInformationTest.java | 2 +-
.../test/java/org/apache/log4j/CategoryTest.java | 2 +-
.../test/java/org/apache/log4j/LogWithMDCTest.java | 2 +-
.../java/org/apache/log4j/LogWithRouteTest.java | 2 +-
.../src/test/java/org/apache/log4j/LoggerTest.java | 2 +-
log4j-api/pom.xml | 103 ++++---
.../src/main/{java9 => java}/module-info.java | 1 +
.../logging/log4j/util/SortedArrayStringMap.java | 8 +
.../src/test/java-test/module-info.java | 21 +-
log4j-api/src/test/java/module-info.java | 17 ++
{log4j-core => log4j-core-gctests}/pom.xml | 246 ++--------------
.../test/gc}/GcFreeAsynchronousLoggingTest.java | 5 +-
.../log4j/core/test/gc}/GcFreeLoggingTestUtil.java | 12 +-
.../test/gc}/GcFreeMixedSyncAyncLoggingTest.java | 5 +-
.../test/gc}/GcFreeSynchronousLoggingTest.java | 5 +-
.../SecureSocketAppenderSocketOptionsTest.java | 2 +-
.../appender/SocketAppenderBufferSizeTest.java | 2 +-
.../appender/SocketAppenderSocketOptionsTest.java | 2 +-
.../log4j/core/appender/SocketAppenderTest.java | 2 +-
log4j-core/README.md | 37 +++
log4j-core/pom.xml | 269 +++++++++++++----
.../log4j/core/impl/ExtendedStackTraceElement.java | 5 +
.../logging/log4j/core/plugins}/package-info.java | 6 +-
log4j-core/src/main/java9/module-info.java | 86 ++++++
log4j-core/src/main/resources/META-INF/MANIFEST.MF | 0
.../log4j/core}/test/AvailablePortFinder.java | 2 +-
.../test/AvailablePortSystemPropertyTestRule.java | 2 +-
.../logging/log4j/core}/test/ExtendedLevels.java | 2 +-
.../apache/logging/log4j/core}/test/GetLogger.java | 2 +-
.../logging/log4j/core}/test/RuleChainFactory.java | 2 +-
.../logging/log4j/core/test}/TestMarkers.java | 5 +-
.../core}/test/appender/AlwaysFailAppender.java | 2 +-
.../core}/test/appender/BlockingAppender.java | 2 +-
.../core}/test/appender/EncodingListAppender.java | 6 +-
.../core}/test/appender/FailOnceAppender.java | 2 +-
.../core}/test/appender/InMemoryAppender.java | 2 +-
.../log4j/core}/test/appender/ListAppender.java | 4 +-
.../log4j/core/test}/hamcrest/Descriptors.java | 2 +-
.../log4j/core/test}/hamcrest/FileMatchers.java | 2 +-
.../log4j/core/test}/hamcrest/MapMatchers.java | 2 +-
.../log4j/core/test}/junit/AppenderResolver.java | 4 +-
.../core/test}/junit/ConfigurationResolver.java | 5 +-
.../logging/log4j/core/test}/junit/JndiRule.java | 2 +-
.../core/test}/junit/LoggerContextResolver.java | 3 +-
.../log4j/core/test}/junit/LoggerContextRule.java | 4 +-
.../core/test}/junit/LoggerContextSource.java | 2 +-
.../logging/log4j/core/test}/junit/Named.java | 2 +-
.../core/test}/junit/ReconfigurationPolicy.java | 2 +-
.../test/junit/TypeBasedParameterResolver.java | 80 ++++++
.../log4j/core/test}/junit/package-info.java | 2 +-
log4j-core/src/test/java-test9/module-info.java | 20 ++
.../apache/logging/log4j/categories/Appenders.java | 33 ---
.../logging/log4j/categories/Configurations.java | 25 --
.../apache/logging/log4j/categories/Layouts.java | 28 --
.../logging/log4j/categories/package-info.java | 22 --
.../log4j/core/AppenderRefLevelJsonTest.java | 6 +-
.../logging/log4j/core/AppenderRefLevelTest.java | 6 +-
.../logging/log4j/core/CollectionLoggingTest.java | 6 +-
.../log4j/core/CustomLevelsOverrideTest.java | 6 +-
.../logging/log4j/core/CustomLevelsTest.java | 6 +-
.../log4j/core/CustomLevelsWithFiltersTest.java | 4 +-
.../apache/logging/log4j/core/DeadlockTest.java | 2 +-
.../logging/log4j/core/ExtendedLevelTest.java | 8 +-
.../{ => core}/FormatterLoggerManualExample.java | 5 +-
.../apache/logging/log4j/core/HostNameTest.java | 6 +-
.../org/apache/logging/log4j/core/LevelTest.java | 6 +-
.../logging/log4j/core/LogEventFactoryTest.java | 4 +-
.../logging/log4j/{ => core}/LogRolloverTest.java | 5 +-
.../log4j/{ => core}/LogbackSubstitution.java | 11 +-
.../apache/logging/log4j/core/LoggerDateTest.java | 4 +-
.../org/apache/logging/log4j/core/LoggerTest.java | 10 +-
.../logging/log4j/core/LoggerUpdateTest.java | 6 +-
.../org/apache/logging/log4j/core/LookupTest.java | 4 +-
.../logging/log4j/core/PatternSelectorTest.java | 6 +-
.../log4j/core/PropertiesFileConfigTest.java | 6 +-
.../logging/log4j/core/ShutdownDisabledTest.java | 2 +-
.../core/ShutdownTimeoutConfigurationTest.java | 2 +-
.../logging/log4j/core/StrictXmlConfigTest.java | 6 +-
.../log4j/{ => core}/ThreadContextTestAccess.java | 2 +-
.../logging/log4j/core/TimestampMessageTest.java | 6 +-
.../org/apache/logging/log4j/core/XmlEvents.java | 2 +-
.../appender/AsyncAppenderQueueFullPolicyTest.java | 6 +-
.../log4j/core/appender/AsyncAppenderTest.java | 6 +-
.../log4j/core/appender/FailoverAppenderTest.java | 8 +-
.../core/appender/FileAppenderPermissionsTest.java | 2 +-
.../log4j/core/appender/InMemoryAppenderTest.java | 2 +-
.../appender/MemoryMappedFileAppenderTest.java | 11 +-
.../core/appender/OutputStreamManagerTest.java | 2 +-
.../appender/RandomAccessFileAppenderTest.java | 2 +-
.../core/appender/ScriptAppenderSelectorTest.java | 4 +-
.../appender/rewrite/MapRewritePolicyTest.java | 2 +-
.../core/appender/rewrite/RewriteAppenderTest.java | 8 +-
.../RandomRollingAppenderOnStartupTest.java | 2 +-
.../appender/rolling/RollingAppenderCountTest.java | 2 +-
.../rolling/RollingAppenderCronAndSizeTest.java | 6 +-
.../RollingAppenderCronEvery2DirectTest.java | 6 +-
.../rolling/RollingAppenderCronEvery2Test.java | 6 +-
.../rolling/RollingAppenderCronOnceADayTest.java | 6 +-
.../appender/rolling/RollingAppenderCronTest.java | 6 +-
.../RollingAppenderCustomDeleteActionTest.java | 2 +-
...RollingAppenderDeleteAccumulatedCount1Test.java | 2 +-
...RollingAppenderDeleteAccumulatedCount2Test.java | 2 +-
.../RollingAppenderDeleteAccumulatedSizeTest.java | 2 +-
.../rolling/RollingAppenderDeleteMaxDepthTest.java | 2 +-
.../rolling/RollingAppenderDeleteNestedTest.java | 2 +-
.../RollingAppenderDeleteScriptFri13thTest.java | 2 +-
.../rolling/RollingAppenderDeleteScriptTest.java | 2 +-
.../RollingAppenderDirectWrite1906Test.java | 6 +-
.../RollingAppenderDirectWriteStartupSizeTest.java | 2 +-
...erDirectWriteTempCompressedFilePatternTest.java | 6 +-
.../rolling/RollingAppenderDirectWriteTest.java | 6 +-
...RollingAppenderDirectWriteWithFilenameTest.java | 2 +-
...llingAppenderDirectWriteWithHtmlLayoutTest.java | 6 +-
...lingAppenderDirectWriteWithReconfigureTest.java | 2 +-
.../RollingAppenderNoUnconditionalDeleteTest.java | 2 +-
.../rolling/RollingAppenderReconfigureTest.java | 6 +-
.../rolling/RollingAppenderRestartTest.java | 6 +-
...RollingAppenderSizeCompressPermissionsTest.java | 2 +-
.../rolling/RollingAppenderSizeNoCompressTest.java | 2 +-
.../appender/rolling/RollingAppenderSizeTest.java | 6 +-
.../rolling/RollingAppenderSizeWithTimeTest.java | 2 +-
...llingAppenderTempCompressedFilePatternTest.java | 2 +-
.../RollingAppenderTimeAndSizeDirectTest.java | 6 +-
.../rolling/RollingAppenderTimeAndSizeTest.java | 6 +-
.../appender/rolling/RollingAppenderTimeTest.java | 6 +-
.../RollingDirectSizeTimeNewDirectoryTest.java | 2 +-
.../rolling/RollingDirectTimeNewDirectoryTest.java | 2 +-
.../RollingFileAppenderReconfigureTest.java | 2 +-
...nderReconfigureUndefinedSystemPropertyTest.java | 2 +-
.../appender/rolling/RollingNewDirectoryTest.java | 2 +-
...ingRandomAccessFileManagerHeaderFooterTest.java | 2 +-
.../RollingRandomAccessFileManagerTest.java | 8 +-
.../RollingRandomAppenderDirectWriteTest.java | 6 +-
...gRandomAppenderDirectWriteWithFilenameTest.java | 2 +-
.../rolling/RolloverWithDeletedOldFileTest.java | 2 +-
.../appender/rolling/RolloverWithPaddingTest.java | 2 +-
.../rolling/action/AbstractActionTest.java | 2 +-
.../routing/DefaultRouteScriptAppenderTest.java | 4 +-
.../appender/routing/JsonRoutingAppender2Test.java | 2 +-
.../appender/routing/JsonRoutingAppenderTest.java | 2 +-
.../routing/PropertiesRoutingAppenderTest.java | 4 +-
.../appender/routing/RoutesScriptAppenderTest.java | 4 +-
.../appender/routing/RoutingAppender2767Test.java | 2 +-
.../core/appender/routing/RoutingAppenderTest.java | 4 +-
.../routing/RoutingAppenderWithJndiTest.java | 6 +-
.../routing/RoutingAppenderWithPurgingTest.java | 4 +-
.../routing/RoutingDefaultAppenderTest.java | 2 +-
.../async/AbstractAsyncThreadContextTestBase.java | 2 +-
.../async/AsyncAppenderExceptionHandlingTest.java | 2 +-
.../async/AsyncLoggersWithAsyncAppenderTest.java | 2 +-
.../AsyncLoggersWithAsyncLoggerConfigTest.java | 2 +-
.../log4j/core/async/AsyncRootReloadTest.java | 2 +-
.../async/BasicAsyncLoggerContextSelectorTest.java | 2 +-
.../log4j/core/async/Log4j2Jira1688AsyncTest.java | 4 +-
.../log4j/core/async/Log4j2Jira1688Test.java | 4 +-
.../core/async/QueueFullAsyncAppenderTest.java | 2 +-
.../core/async/QueueFullAsyncAppenderTest2.java | 2 +-
...llAsyncLoggerConfigLoggingFromToStringTest.java | 2 +-
...lAsyncLoggerConfigLoggingFromToStringTest2.java | 2 +-
.../core/async/QueueFullAsyncLoggerConfigTest.java | 2 +-
.../async/QueueFullAsyncLoggerConfigTest2.java | 2 +-
...ueueFullAsyncLoggerLoggingFromToStringTest.java | 2 +-
...eueFullAsyncLoggerLoggingFromToStringTest2.java | 2 +-
.../log4j/core/async/QueueFullAsyncLoggerTest.java | 2 +-
.../core/async/QueueFullAsyncLoggerTest2.java | 2 +-
.../core/async/QueueFullAsyncLoggerTest3.java | 4 +-
.../categories/GarbageFree.java} | 6 +-
.../core/config/AppenderControlArraySetTest.java | 2 +-
.../core/config/CompositeConfigurationTest.java | 2 +-
.../core/config/ConfigurationFactoryTest.java | 2 +-
.../log4j/core/config/CustomConfigurationTest.java | 2 +-
.../logging/log4j/core/config/FileOutputTest.java | 2 +-
.../log4j/core/config/JiraLog4j2_2134Test.java | 2 +-
.../log4j/core/config/LoggersPluginTest.java | 2 +-
.../log4j/core/config/MissingRootLoggerTest.java | 4 +-
.../core/config/MultipleTriggeringPolicyTest.java | 2 +-
.../logging/log4j/core/config/PropertyTest.java | 6 +-
.../core/config/ReconfigurationDeadlockTest.java | 2 +-
.../log4j/core/config/ReliabilityStrategyTest.java | 4 +-
.../log4j/core/config/TestConfigurator.java | 2 +-
.../core/config/arbiters/BasicArbiterTest.java | 2 +-
.../core/config/arbiters/ScriptArbiterTest.java | 2 +-
.../core/config/arbiters/SelectArbiterTest.java | 2 +-
.../core/config/plugins/LegacyPluginTest.java | 2 +-
.../plugins/util/PluginManagerPackagesTest.java | 29 +-
.../properties/PropertiesConfigurationTest.java | 2 +-
.../log4j/core/config/xml/XmlLoggerPropsTest.java | 6 +-
.../core/filter/AbstractScriptFilterTest.java | 4 +-
.../logging/log4j/core/filter/BurstFilterTest.java | 6 +-
.../core/filter/DynamicThresholdFilterTest.java | 2 +-
.../logging/log4j/core/filter/MapFilterTest.java | 6 +-
.../filter/ScriptFileFilterPropertiesTest.java | 2 +-
.../log4j/core/filter/ScriptFileFilterTest.java | 2 +-
.../log4j/core/filter/ScriptFilterTest.java | 2 +-
.../log4j/core/filter/ScriptRefFilterTest.java | 2 +-
.../core/filter/StructuredDataFilterTest.java | 2 +-
.../logging/log4j/core/hamcrest/FileMatchers.java | 163 -----------
...taFactoryPropertySetMissingConstructorTest.java | 4 +-
.../log4j/core/impl/ContextDataFactoryTest.java | 4 +-
.../NestedLoggingFromThrowableMessageTest.java | 2 +-
.../core/impl/NestedLoggingFromToStringTest.java | 4 +-
.../log4j/core/junit/ConfigurationResolver.java | 39 ---
.../log4j/core/junit/LoggerContextResolver.java | 157 ----------
.../org/apache/logging/log4j/core/junit/Named.java | 41 ---
.../log4j/core/junit/ReconfigurationPolicy.java | 35 ---
.../ConcurrentLoggingWithGelfLayoutTest.java | 2 +-
.../logging/log4j/core/layout/GelfLayout2Test.java | 6 +-
.../logging/log4j/core/layout/GelfLayout3Test.java | 6 +-
.../core/layout/GelfLayoutPatternSelectorTest.java | 6 +-
.../logging/log4j/core/layout/GelfLayoutTest.java | 4 +-
.../logging/log4j/core/layout/HtmlLayoutTest.java | 2 +-
.../log4j/core/layout/Log4j2_2195_Test.java | 6 +-
.../core/layout/PatternLayoutLookupDateTest.java | 6 +-
.../layout/PatternLayoutMainMapLookupTest.java | 8 +-
.../core/layout/PatternLayoutNoLookupDateTest.java | 6 +-
.../log4j/core/layout/PatternLayoutRepeatTest.java | 6 +-
.../log4j/core/layout/Rfc5424LayoutTest.java | 2 +-
.../log4j/core/layout/SyslogLayoutTest.java | 2 +-
.../log4j/core/lookup/ContextMapLookupTest.java | 2 +-
.../log4j/core/lookup/InterpolatorTest.java | 2 +-
.../logging/log4j/core/lookup/JndiLookupTest.java | 2 +-
.../log4j/core/lookup/MarkerLookupConfigTest.java | 2 +-
.../log4j/core/net/SocketMessageLossTest.java | 4 +-
.../log4j/core/net/SocketReconnectTest.java | 2 +-
.../apache/logging/log4j/core/net/SocketTest.java | 4 +-
.../log4j/core/pattern/CallerInformationTest.java | 6 +-
.../log4j/core/pattern/DisableAnsiTest.java | 6 +-
.../log4j/core/pattern/ExtendedThrowableTest.java | 6 +-
.../core/pattern/MessageJansiConverterTest.java | 6 +-
.../core/pattern/MessageStyledConverterTest.java | 6 +-
.../log4j/core/pattern/NoConsoleNoAnsiTest.java | 6 +-
.../log4j/core/pattern/RegexReplacementTest.java | 6 +-
.../core/pattern/RepeatPatternConverterTest.java | 2 +-
.../log4j/core/pattern/RootThrowableTest.java | 6 +-
.../SequenceNumberPatternConverterTest.java | 6 +-
...quenceNumberPatternConverterZeroPaddedTest.java | 6 +-
.../log4j/core/pattern/StyleConverterTest.java | 6 +-
.../logging/log4j/core/pattern/ThrowableTest.java | 6 +-
.../log4j/core/tools/GenerateCustomLoggerTest.java | 25 +-
.../core/tools/GenerateExtendedLoggerTest.java | 28 +-
.../log4j/core/util/ContextDataProviderTest.java | 2 +-
.../core/util/ShutdownCallbackRegistryTest.java | 2 +-
.../apache/logging/log4j/hamcrest/Descriptors.java | 44 ---
.../apache/logging/log4j/hamcrest/MapMatchers.java | 62 ----
.../logging/log4j/junit/AppenderResolver.java | 54 ----
.../org/apache/logging/log4j/junit/JndiRule.java | 59 ----
.../logging/log4j/junit/LoggerContextRule.java | 319 ---------------------
.../logging/log4j/junit/LoggerContextSource.java | 79 -----
.../MutableLogEventWithReusableParamMsgTest.java | 61 ----
log4j-core/src/test/java9/module-info.java | 92 ++++++
.../test/resources/gcFreeMixedSyncAsyncLogging.xml | 2 +-
.../log4j/csv/layout/CsvLogEventLayoutTest.java | 2 +-
.../log4j/csv/layout/CsvParameterLayoutTest.java | 2 +-
.../log4j/flume/appender/FlumeAppenderTest.java | 2 +-
.../flume/appender/FlumeEmbeddedAgentTest.java | 2 +-
.../flume/appender/FlumeEmbeddedAppenderTest.java | 2 +-
.../appender/FlumePersistentAppenderTest.java | 2 +-
.../log4j/flume/appender/FlumePersistentPerf.java | 2 +-
.../log4j/io/IoBuilderCallerInfoTesting.java | 2 +-
.../org/apache/logging/log4j/io/IoBuilderTest.java | 2 +-
.../log4j/io/LoggerPrintWriterJdbcH2Test.java | 2 +-
.../logging/log4j/jcl/CallerInformationTest.java | 2 +-
.../org/apache/logging/log4j/jcl/LoggerTest.java | 2 +-
.../JdbcAppenderColumnMappingLiteralTest.java | 2 +-
.../JdbcAppenderColumnMappingPatternTest.java | 2 +-
log4j-jpl/pom.xml | 2 +-
.../logging/log4j/jpl/Log4jSystemLoggerTest.java | 2 +-
.../logging/log4j/jul/AbstractLoggerTest.java | 2 +-
.../apache/logging/log4j/jul/ApiLoggerTest.java | 2 +-
.../jul/BracketInNotInterpolatedMessageTest.java | 2 +-
.../logging/log4j/jul/CallerInformationTest.java | 2 +-
.../apache/logging/log4j/jul/CoreLoggerTest.java | 2 +-
.../jackson/json/layout/JsonLayoutMillisTest.java | 2 +-
.../log4j/jackson/json/layout/JsonLayoutTest.java | 2 +-
.../log4j/jackson/xml/layout/XmlLayoutTest.java | 2 +-
.../log4j/jackson/yaml/layout/YamlLayoutTest.java | 2 +-
.../JsonTemplateLayoutAdditionalFieldJsonTest.java | 2 +-
...emplateLayoutAdditionalFieldPropertiesTest.java | 2 +-
...onTemplateLayoutAdditionalFieldTestHelpers.java | 2 +-
.../JsonTemplateLayoutAdditionalFieldXmlTest.java | 2 +-
.../JsonTemplateLayoutAdditionalFieldYamlTest.java | 2 +-
.../template/json/JsonTemplateLayoutTest.java | 2 +-
.../template/json/util/RecyclerFactoriesTest.java | 2 +-
.../liquibase/ext/logging/log4j2/LoggingTest.java | 2 +-
.../log4j/mongodb3/MongoDb3AuthFailureTest.java | 4 +-
.../logging/log4j/mongodb3/MongoDb3CappedTest.java | 4 +-
.../log4j/mongodb3/MongoDb3MapMessageTest.java | 4 +-
.../logging/log4j/mongodb3/MongoDb3Test.java | 4 +-
.../log4j/mongodb3/MongoDb3TestTestRuleTest.java | 4 +-
.../log4j/mongodb4/MongoDb4AuthFailureTest.java | 4 +-
.../logging/log4j/mongodb4/MongoDb4CappedTest.java | 4 +-
.../log4j/mongodb4/MongoDb4MapMessageTest.java | 4 +-
.../logging/log4j/mongodb4/MongoDb4Test.java | 4 +-
.../log4j/mongodb4/MongoDb4TestTestRuleTest.java | 4 +-
log4j-osgi/pom.xml | 7 +-
log4j-plugins/pom.xml | 135 +++++++--
.../log4j/plugins/processor/PluginProcessor.java | 4 +
log4j-plugins/src/main/java9/module-info.java | 2 +-
log4j-plugins/src/test/java-test9/module-info.java | 8 +
.../log4j/plugins}/processor/FakePlugin.java | 2 +-
.../plugins/processor/PluginProcessorTest.java | 3 +-
log4j-plugins/src/test/java9/module-info.java | 2 +
.../logging/slf4j/CallerInformationTest.java | 2 +-
.../java/org/apache/logging/slf4j/LoggerTest.java | 2 +-
.../org/apache/logging/slf4j/OptionalTest.java | 2 +-
.../logging/slf4j/CallerInformationTest.java | 2 +-
.../java/org/apache/logging/slf4j/LoggerTest.java | 2 +-
.../log4j/smtp/appender/SmtpAppenderAsyncTest.java | 2 +-
.../log4j/smtp/appender/SmtpAppenderTest.java | 2 +-
.../log4j/spring/boot/SpringProfileTest.java | 2 +-
.../logging/log4j/taglib/CatchingTagTest.java | 2 +-
.../apache/logging/log4j/taglib/EnterTagTest.java | 2 +-
.../apache/logging/log4j/taglib/ExitTagTest.java | 2 +-
.../log4j/taglib/LoggingMessageTagSupportTest.java | 2 +-
pom.xml | 87 +++++-
315 files changed, 1401 insertions(+), 2069 deletions(-)
diff --git a/log4j-1.2-api/src/test/java/org/apache/log4j/CallerInformationTest.java b/log4j-1.2-api/src/test/java/org/apache/log4j/CallerInformationTest.java
index 3ae5c34..b95545c 100644
--- a/log4j-1.2-api/src/test/java/org/apache/log4j/CallerInformationTest.java
+++ b/log4j-1.2-api/src/test/java/org/apache/log4j/CallerInformationTest.java
@@ -21,7 +21,7 @@ import static org.junit.Assert.assertEquals;
import java.util.List;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.ClassRule;
import org.junit.Test;
diff --git a/log4j-1.2-api/src/test/java/org/apache/log4j/CategoryTest.java b/log4j-1.2-api/src/test/java/org/apache/log4j/CategoryTest.java
index a16f2a3..e7bd5ad 100644
--- a/log4j-1.2-api/src/test/java/org/apache/log4j/CategoryTest.java
+++ b/log4j-1.2-api/src/test/java/org/apache/log4j/CategoryTest.java
@@ -31,7 +31,7 @@ import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.layout.PatternLayout;
import org.apache.logging.log4j.message.Message;
import org.apache.logging.log4j.message.ObjectMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.AfterClass;
import org.junit.Before;
diff --git a/log4j-1.2-api/src/test/java/org/apache/log4j/LogWithMDCTest.java b/log4j-1.2-api/src/test/java/org/apache/log4j/LogWithMDCTest.java
index 624c806..e0936bf 100644
--- a/log4j-1.2-api/src/test/java/org/apache/log4j/LogWithMDCTest.java
+++ b/log4j-1.2-api/src/test/java/org/apache/log4j/LogWithMDCTest.java
@@ -17,7 +17,7 @@
package org.apache.log4j;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.ClassRule;
import org.junit.Test;
diff --git a/log4j-1.2-api/src/test/java/org/apache/log4j/LogWithRouteTest.java b/log4j-1.2-api/src/test/java/org/apache/log4j/LogWithRouteTest.java
index 8b647fa..d98e348 100644
--- a/log4j-1.2-api/src/test/java/org/apache/log4j/LogWithRouteTest.java
+++ b/log4j-1.2-api/src/test/java/org/apache/log4j/LogWithRouteTest.java
@@ -17,7 +17,7 @@
package org.apache.log4j;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.ClassRule;
import org.junit.Test;
diff --git a/log4j-1.2-api/src/test/java/org/apache/log4j/LoggerTest.java b/log4j-1.2-api/src/test/java/org/apache/log4j/LoggerTest.java
index 1742422..bdc74fe 100644
--- a/log4j-1.2-api/src/test/java/org/apache/log4j/LoggerTest.java
+++ b/log4j-1.2-api/src/test/java/org/apache/log4j/LoggerTest.java
@@ -28,7 +28,7 @@ import org.apache.logging.log4j.core.appender.AbstractAppender;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.config.Property;
import org.apache.logging.log4j.core.layout.PatternLayout;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.BeforeClass;
diff --git a/log4j-api/pom.xml b/log4j-api/pom.xml
index 069c8e2..ffa275a 100644
--- a/log4j-api/pom.xml
+++ b/log4j-api/pom.xml
@@ -36,28 +36,38 @@
<dependencies>
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.core</artifactId>
+ <artifactId>org.osgi.framework</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.resource</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
+ <scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-migrationsupport</artifactId>
+ <scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-params</artifactId>
+ <scope>test</scope>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
+ <scope>test</scope>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
+ <scope>test</scope>
</dependency>
<dependency>
<groupId>org.hamcrest</groupId>
@@ -95,21 +105,64 @@
<goal>clean</goal>
</goals>
</execution>
+ <execution>
+ <id>delete-test-module-info</id>
+ <phase>generate-test-resources</phase>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ <configuration>
+ <excludeDefaultDirectories>true</excludeDefaultDirectories>
+ <verbose>true</verbose>
+ <filesets>
+ <fileset>
+ <directory>${project.build.testOutputDirectory}</directory>
+ <followSymlinks>false</followSymlinks>
+ <useDefaultExcludes>true</useDefaultExcludes>
+ <includes>
+ <include>module-info.class</include>
+ </includes>
+ </fileset>
+ </filesets>
+ </configuration>
+ </execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
- <!-- compile first without module-info -->
- <id>base-compile</id>
+ <id>default-compile</id>
<goals>
<goal>compile</goal>
</goals>
- <phase>generate-sources</phase>
- <configuration>
+ <configuration combine.self="override">
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
+ <release>${maven.compiler.release}</release>
+ <showDeprecation>true</showDeprecation>
+ <showWarnings>true</showWarnings>
+ <encoding>UTF-8</encoding>
+ <fork>true</fork>
+ <meminitial>256</meminitial>
+ <maxmem>1024</maxmem>
+ <compilerArgs>
+ <arg>-XDcompilePolicy=simple</arg>
+ <arg>-Xplugin:ErrorProne</arg>
+ </compilerArgs>
+ <compilerArguments>
+ <Xmaxwarns>10000</Xmaxwarns>
+ <Xlint />
+ </compilerArguments>
+ <annotationProcessorPaths>
+ <path>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_core</artifactId>
+ <version>${errorprone.version}</version>
+ </path>
+ </annotationProcessorPaths>
+ <forceJavacCompilerUse>true</forceJavacCompilerUse>
+ <parameters>true</parameters>
</configuration>
</execution>
<execution>
@@ -118,21 +171,7 @@
<goals>
<goal>testCompile</goal>
</goals>
- <phase>generate-sources</phase>
- <configuration>
- <source>${maven.compiler.source}</source>
- <target>${maven.compiler.target}</target>
- <compileSourceRoots>
- <compileSourceRoot>${project.basedir}/src/test/java-test</compileSourceRoot>
- </compileSourceRoots>
- </configuration>
- </execution>
- <execution>
- <!-- compile the source -->
- <id>default-compile</id>
- <goals>
- <goal>compile</goal>
- </goals>
+ <phase>generate-test-sources</phase>
<configuration combine.self="override">
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
@@ -161,7 +200,7 @@
<forceJavacCompilerUse>true</forceJavacCompilerUse>
<parameters>true</parameters>
<compileSourceRoots>
- <compileSourceRoot>${project.basedir}/src/main/java9</compileSourceRoot>
+ <compileSourceRoot>${project.basedir}/src/test/java-test</compileSourceRoot>
</compileSourceRoots>
</configuration>
</execution>
@@ -203,24 +242,6 @@
</executions>
</plugin>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>build-helper-maven-plugin</artifactId>
- <version>3.2.0</version>
- <executions>
- <execution>
- <phase>process-sources</phase>
- <goals>
- <goal>add-source</goal>
- </goals>
- <configuration>
- <sources>
- <source>src/main/java9</source>
- </sources>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
@@ -268,7 +289,7 @@
<goals>
<goal>test-jar</goal>
</goals>
- <phase>process-resources</phase>
+ <phase>process-test-sources</phase>
<configuration>
<archive>
<manifestFile>${manifestfile}</manifestFile>
@@ -313,7 +334,7 @@
sun.reflect;resolution:=optional,
*
</Import-Package>
- <Bundle-Activator>org.apache.logging.log4j.util.Activator</Bundle-Activator>
+ <Bundle-Activator>org.apache.logging.log4j.osgi.Activator</Bundle-Activator>
<_fixupmessages>"Classes found in the wrong directory";is:=warning</_fixupmessages>
</instructions>
</configuration>
diff --git a/log4j-api/src/main/java9/module-info.java b/log4j-api/src/main/java/module-info.java
similarity index 97%
rename from log4j-api/src/main/java9/module-info.java
rename to log4j-api/src/main/java/module-info.java
index 45d0de3..b74edd7 100644
--- a/log4j-api/src/main/java9/module-info.java
+++ b/log4j-api/src/main/java/module-info.java
@@ -22,6 +22,7 @@ module org.apache.logging.log4j {
exports org.apache.logging.log4j.status;
exports org.apache.logging.log4j.util;
+ requires transitive org.osgi.framework;
uses org.apache.logging.log4j.spi.Provider;
uses org.apache.logging.log4j.util.PropertySource;
uses org.apache.logging.log4j.message.ThreadDumpMessage.ThreadInfoFactory;
diff --git a/log4j-api/src/main/java/org/apache/logging/log4j/util/SortedArrayStringMap.java b/log4j-api/src/main/java/org/apache/logging/log4j/util/SortedArrayStringMap.java
index db5bcca..1dec0c2 100644
--- a/log4j-api/src/main/java/org/apache/logging/log4j/util/SortedArrayStringMap.java
+++ b/log4j-api/src/main/java/org/apache/logging/log4j/util/SortedArrayStringMap.java
@@ -160,6 +160,14 @@ public class SortedArrayStringMap implements IndexedStringMap {
}
}
+ /**
+ * For unit testing.
+ * @return The threshold.
+ */
+ public int getThreshold() {
+ return threshold;
+ }
+
private void assertNotFrozen() {
if (immutable) {
throw new UnsupportedOperationException(FROZEN);
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/categories/AsyncLoggers.java b/log4j-api/src/test/java-test/module-info.java
similarity index 58%
rename from log4j-core/src/test/java/org/apache/logging/log4j/categories/AsyncLoggers.java
rename to log4j-api/src/test/java-test/module-info.java
index b46b185..9541d67 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/categories/AsyncLoggers.java
+++ b/log4j-api/src/test/java-test/module-info.java
@@ -14,10 +14,19 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.categories;
+module org.apache.logging.log4j.test {
+ exports org.apache.logging.log4j.test;
+ exports org.apache.logging.log4j.test.junit;
+ opens org.apache.logging.log4j.test.junit to org.junit.platform.commons;
-/**
- * Category for tests related to AsyncLogger (requires LMAX Disruptor dependency).
- */
-public interface AsyncLoggers {
-}
+ requires org.apache.logging.log4j;
+ requires com.fasterxml.jackson.core;
+ requires com.fasterxml.jackson.databind;
+ requires org.assertj.core;
+ requires org.junit.jupiter.api;
+ requires org.junit.jupiter.engine;
+ requires org.junit.jupiter.params;
+ requires org.junit.platform.commons;
+ requires org.junit.platform.engine;
+ requires junit;
+}
\ No newline at end of file
diff --git a/log4j-api/src/test/java/module-info.java b/log4j-api/src/test/java/module-info.java
index 9ff63a2..2d0046f 100644
--- a/log4j-api/src/test/java/module-info.java
+++ b/log4j-api/src/test/java/module-info.java
@@ -1,4 +1,21 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
open module org.apache.logging.log4j {
+ exports org.apache.logging.log4j.test;
exports org.apache.logging.log4j.test.junit;
requires com.fasterxml.jackson.core;
diff --git a/log4j-core/pom.xml b/log4j-core-gctests/pom.xml
similarity index 52%
copy from log4j-core/pom.xml
copy to log4j-core-gctests/pom.xml
index f7d81f8..5ea6ffb 100644
--- a/log4j-core/pom.xml
+++ b/log4j-core-gctests/pom.xml
@@ -23,10 +23,10 @@
<version>3.0.0-SNAPSHOT</version>
<relativePath>../</relativePath>
</parent>
- <artifactId>log4j-core</artifactId>
+ <artifactId>log4j-core-gctests</artifactId>
<packaging>jar</packaging>
- <name>Apache Log4j Core</name>
- <description>The Apache Log4j Implementation</description>
+ <name>Apache Log4j Core Garbage Collection Tests</name>
+ <description>Apache Log4j Implementation GC Tests</description>
<properties>
<log4jParentDir>${basedir}/..</log4jParentDir>
<docLabel>Core Documentation</docLabel>
@@ -44,11 +44,9 @@
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-plugins</artifactId>
</dependency>
- <!-- Used for OSGi bundle support -->
<dependency>
- <groupId>org.osgi</groupId>
- <artifactId>org.osgi.core</artifactId>
- <scope>provided</scope>
+ <groupId>org.apache.logging.log4j</groupId>
+ <artifactId>log4j-core</artifactId>
</dependency>
<!-- Required for AsyncLoggers -->
<dependency>
@@ -154,11 +152,6 @@
<artifactId>slf4j-api</artifactId>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-ext</artifactId>
- <scope>test</scope>
- </dependency>
<!-- JUnit, naturally -->
<dependency>
<groupId>org.junit.vintage</groupId>
@@ -209,17 +202,6 @@
</dependency>
<!-- JNDI and JMS tests -->
<dependency>
- <groupId>org.apache.activemq</groupId>
- <artifactId>activemq-broker</artifactId>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-jms_1.1_spec</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<scope>test</scope>
@@ -235,27 +217,6 @@
<artifactId>logback-classic</artifactId>
<scope>test</scope>
</dependency>
- <!-- OSGi tests -->
- <dependency>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>org.eclipse.osgi</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.framework</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-utils</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.maven</groupId>
- <artifactId>maven-core</artifactId>
- <scope>test</scope>
- </dependency>
<!-- GELF -->
<dependency>
<groupId>net.javacrumbs.json-unit</groupId>
@@ -314,6 +275,12 @@
<groupId>com.google.code.java-allocation-instrumenter</groupId>
<artifactId>java-allocation-instrumenter</artifactId>
<scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava-testlib</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.hdrhistogram</groupId>
@@ -344,14 +311,6 @@
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
- <configuration>
- <excludedGroups>
- org.apache.logging.log4j.categories.PerformanceTests
- </excludedGroups>
- <systemPropertyVariables>
- <org.apache.activemq.SERIALIZABLE_PACKAGES>*</org.apache.activemq.SERIALIZABLE_PACKAGES>
- </systemPropertyVariables>
- </configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
@@ -363,196 +322,35 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
- <executions>
- <execution>
- <id>default-jar</id>
- <goals>
- <goal>jar</goal>
- </goals>
- <configuration combine.self="override">
- <archive>
- <manifestFile>${manifestfile}</manifestFile>
- <manifestEntries>
- <Specification-Title>${project.name}</Specification-Title>
- <Specification-Version>${project.version}</Specification-Version>
- <Specification-Vendor>${project.organization.name}</Specification-Vendor>
- <Implementation-Title>${project.name}</Implementation-Title>
- <Implementation-Version>${project.version}</Implementation-Version>
- <Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
- <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
- <X-Compile-Source-JDK>${maven.compiler.source}</X-Compile-Source-JDK>
- <X-Compile-Target-JDK>${maven.compiler.target}</X-Compile-Target-JDK>
- <Automatic-Module-Name>org.apache.logging.log4j.core</Automatic-Module-Name>
- <Multi-Release>true</Multi-Release>
- </manifestEntries>
- </archive>
- </configuration>
- </execution>
- <execution>
- <id>default</id>
- <goals>
- <goal>test-jar</goal>
- </goals>
- <configuration>
- <archive>
- <manifestFile>${manifestfile}</manifestFile>
- <manifestEntries>
- <Specification-Title>${project.name}</Specification-Title>
- <Specification-Version>${project.version}</Specification-Version>
- <Specification-Vendor>${project.organization.name}</Specification-Vendor>
- <Implementation-Title>${project.name}</Implementation-Title>
- <Implementation-Version>${project.version}</Implementation-Version>
- <Implementation-Vendor>${project.organization.name}</Implementation-Vendor>
- <Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
- <X-Compile-Source-JDK>${maven.compiler.source}</X-Compile-Source-JDK>
- <X-Compile-Target-JDK>${maven.compiler.target}</X-Compile-Target-JDK>
- </manifestEntries>
- </archive>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <configuration>
- <instructions>
- <Bundle-SymbolicName>org.apache.logging.log4j.core</Bundle-SymbolicName>
- <!-- TODO: exclude internal classes from export -->
- <Export-Package>org.apache.logging.log4j.core.*</Export-Package>
- <Import-Package>
- sun.reflect;resolution:=optional,
- org.apache.logging.log4j.util,
- org.apache.logging.log4j.plugins,
- org.apache.logging.log4j.plugins.convert,
- org.apache.logging.log4j.plugins.processor,
- org.apache.logging.log4j.plugins.util,
- org.apache.logging.log4j.plugins.validation,
- org.apache.logging.log4j.plugins.inject,
- *
- </Import-Package>
- <Bundle-Activator>org.apache.logging.log4j.core.osgi.Activator</Bundle-Activator>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
- <reporting>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-changes-plugin</artifactId>
- <version>${changes.plugin.version}</version>
- <reportSets>
- <reportSet>
- <reports>
- <report>changes-report</report>
- </reports>
- </reportSet>
- </reportSets>
<configuration>
- <issueLinkTemplate>%URL%/%ISSUE%</issueLinkTemplate>
- <useJql>true</useJql>
- <component>Appenders, Configuration, Configurators, Core, Filters, Layouts, Lookups, Pattern Converters, Reconfiguration</component>
+ <skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-checkstyle-plugin</artifactId>
- <version>${checkstyle.plugin.version}</version>
+ <artifactId>maven-deploy-plugin</artifactId>
+ <version>${deploy.plugin.version}</version>
<configuration>
- <!--<propertiesLocation>${vfs.parent.dir}/checkstyle.properties</propertiesLocation> -->
- <configLocation>${log4jParentDir}/checkstyle.xml</configLocation>
- <suppressionsLocation>${log4jParentDir}/checkstyle-suppressions.xml</suppressionsLocation>
- <enableRulesSummary>false</enableRulesSummary>
- <propertyExpansion>basedir=${basedir}</propertyExpansion>
- <propertyExpansion>licensedir=${log4jParentDir}/checkstyle-header.txt</propertyExpansion>
+ <skip>true</skip>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-javadoc-plugin</artifactId>
- <version>${javadoc.plugin.version}</version>
+ <artifactId>maven-site-plugin</artifactId>
<configuration>
- <failOnError>false</failOnError>
- <source>8</source>
- <bottom><![CDATA[<p align="center">Copyright © {inceptionYear}-{currentYear} {organizationName}. All Rights Reserved.<br />
- Apache Logging, Apache Log4j, Log4j, Apache, the Apache feather logo, the Apache Logging project logo,
- and the Apache Log4j logo are trademarks of The Apache Software Foundation.</p>]]></bottom>
- <!-- module link generation is completely broken in the javadoc plugin for a multi-module non-aggregating
- project -->
- <additionalparam>${javadoc.opts}</additionalparam>
- <detectOfflineLinks>false</detectOfflineLinks>
- <linksource>true</linksource>
- <links>
- <link>http://docs.oracle.com/javaee/6/api/</link>
- <link>http://www.osgi.org/javadoc/r4v43/core/</link>
- <link>https://commons.apache.org/proper/commons-lang/javadocs/api-release/</link>
- </links>
- <groups>
- <group>
- <title>Core API</title>
- <packages>org.apache.logging.log4j.core</packages>
- </group>
- <group>
- <title>Configuration</title>
- <packages>org.apache.logging.log4j.core.config*:org.apache.logging.log4j.core.selector</packages>
- </group>
- <group>
- <title>Core Plugins</title>
- <packages>org.apache.logging.log4j.core.appender*:org.apache.logging.log4j.core.filter:org.apache.logging.log4j.core.layout:org.apache.logging.log4j.core.lookup:org.apache.logging.log4j.core.pattern:org.apache.logging.log4j.core.script</packages>
- </group>
- <group>
- <title>Tools</title>
- <packages>org.apache.logging.log4j.core.net*:org.apache.logging.log4j.core.tools</packages>
- </group>
- <group>
- <title>Internals</title>
- <packages>org.apache.logging.log4j.core.async:org.apache.logging.log4j.core.impl:org.apache.logging.log4j.core.util*:org.apache.logging.log4j.core.osgi:org.apache.logging.log4j.core.jackson:org.apache.logging.log4j.core.jmx</packages>
- </group>
- </groups>
+ <skip>true</skip>
+ <skipDeploy>true</skipDeploy>
</configuration>
- <reportSets>
- <reportSet>
- <id>non-aggregate</id>
- <reports>
- <report>javadoc</report>
- </reports>
- </reportSet>
- </reportSets>
- </plugin>
- <plugin>
- <groupId>com.github.spotbugs</groupId>
- <artifactId>spotbugs-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jxr-plugin</artifactId>
- <version>${jxr.plugin.version}</version>
- <reportSets>
- <reportSet>
- <id>non-aggregate</id>
- <reports>
- <report>jxr</report>
- </reports>
- </reportSet>
- <reportSet>
- <id>aggregate</id>
- <reports>
- <report>aggregate</report>
- </reports>
- </reportSet>
- </reportSets>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-pmd-plugin</artifactId>
- <version>${pmd.plugin.version}</version>
+ <artifactId>maven-doap-plugin</artifactId>
+ <version>1.2</version>
<configuration>
- <targetJdk>${maven.compiler.target}</targetJdk>
+ <skip>true</skip>
</configuration>
</plugin>
</plugins>
- </reporting>
+ </build>
</project>
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeAsynchronousLoggingTest.java b/log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeAsynchronousLoggingTest.java
similarity index 91%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeAsynchronousLoggingTest.java
rename to log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeAsynchronousLoggingTest.java
index 286a113..ef0d19f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeAsynchronousLoggingTest.java
+++ b/log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeAsynchronousLoggingTest.java
@@ -14,9 +14,11 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.core;
+package org.apache.logging.log4j.core.test.gc;
import org.apache.logging.log4j.core.async.AsyncLoggerContextSelector;
+import org.apache.logging.log4j.core.categories.GarbageFree;
+import org.junit.experimental.categories.Category;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
@@ -27,6 +29,7 @@ import org.junit.jupiter.api.Test;
*/
@Tag("allocation")
@Tag("functional")
+@Category(GarbageFree.class)
public class GcFreeAsynchronousLoggingTest {
@Test
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeLoggingTestUtil.java b/log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeLoggingTestUtil.java
similarity index 95%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeLoggingTestUtil.java
rename to log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeLoggingTestUtil.java
index 94c5fc1..3ad896e 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeLoggingTestUtil.java
+++ b/log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeLoggingTestUtil.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.core;
+package org.apache.logging.log4j.core.test.gc;
import com.google.monitoring.runtime.instrumentation.AllocationRecorder;
import com.google.monitoring.runtime.instrumentation.Sampler;
@@ -52,9 +52,9 @@ public enum GcFreeLoggingTestUtil {;
System.setProperty("log4j2.is.webapp", "false");
System.setProperty("log4j.configurationFile", configurationFile);
- assertTrue(Constants.ENABLE_THREADLOCALS, "Constants.ENABLE_THREADLOCALS");
- assertTrue(Constants.ENABLE_DIRECT_ENCODERS, "Constants.ENABLE_DIRECT_ENCODERS");
- assertFalse(Constants.IS_WEB_APP, "Constants.IS_WEB_APP");
+ Assertions.assertTrue(Constants.ENABLE_THREADLOCALS, "Constants.ENABLE_THREADLOCALS");
+ Assertions.assertTrue(Constants.ENABLE_DIRECT_ENCODERS, "Constants.ENABLE_DIRECT_ENCODERS");
+ Assertions.assertFalse(Constants.IS_WEB_APP, "Constants.IS_WEB_APP");
final MyCharSeq myCharSeq = new MyCharSeq();
final Marker testGrandParent = MarkerManager.getMarker("testGrandParent");
@@ -173,7 +173,7 @@ public enum GcFreeLoggingTestUtil {;
Pattern.quote("[main] value1 {aKey=value1, " +
"key2=value2, prop1=value1, prop2=value2} " +
"This message is logged to the console"));
- assertTrue(
+ Assertions.assertTrue(
line.matches(firstLinePattern),
"pattern mismatch at line 1: " + line);
}
@@ -181,7 +181,7 @@ public enum GcFreeLoggingTestUtil {;
// Check the rest of the lines. We are looking for the messages written to System.err
// in the sampleAllocation() method above in executeLogging().
else {
- assertFalse(
+ Assertions.assertFalse(
line.contains(" allocated ") || line.contains(" array "),
"(allocated|array) pattern matches at line " + lineNumber + ": " + line);
}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeMixedSyncAyncLoggingTest.java b/log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeMixedSyncAyncLoggingTest.java
similarity index 90%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeMixedSyncAyncLoggingTest.java
rename to log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeMixedSyncAyncLoggingTest.java
index ed844d0..91fdde6 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeMixedSyncAyncLoggingTest.java
+++ b/log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeMixedSyncAyncLoggingTest.java
@@ -14,8 +14,10 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.core;
+package org.apache.logging.log4j.core.test.gc;
+import org.apache.logging.log4j.core.categories.GarbageFree;
+import org.junit.experimental.categories.Category;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
@@ -26,6 +28,7 @@ import org.junit.jupiter.api.Test;
*/
@Tag("allocation")
@Tag("functional")
+@Category(GarbageFree.class)
public class GcFreeMixedSyncAyncLoggingTest {
@Test
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeSynchronousLoggingTest.java b/log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeSynchronousLoggingTest.java
similarity index 89%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeSynchronousLoggingTest.java
rename to log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeSynchronousLoggingTest.java
index 99648de..c45bc7e 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/GcFreeSynchronousLoggingTest.java
+++ b/log4j-core-gctests/src/test/java/org/apache/logging/log4j/core/test/gc/GcFreeSynchronousLoggingTest.java
@@ -14,8 +14,10 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.core;
+package org.apache.logging.log4j.core.test.gc;
+import org.apache.logging.log4j.core.categories.GarbageFree;
+import org.junit.experimental.categories.Category;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
@@ -26,6 +28,7 @@ import org.junit.jupiter.api.Test;
*/
@Tag("allocation")
@Tag("functional")
+@Category(GarbageFree.class)
public class GcFreeSynchronousLoggingTest {
@Test
diff --git a/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SecureSocketAppenderSocketOptionsTest.java b/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SecureSocketAppenderSocketOptionsTest.java
index ecccfb0..b602734 100644
--- a/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SecureSocketAppenderSocketOptionsTest.java
+++ b/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SecureSocketAppenderSocketOptionsTest.java
@@ -33,7 +33,7 @@ import org.apache.logging.log4j.core.net.ssl.TestConstants;
import org.apache.logging.log4j.core.net.ssl.TrustStoreConfiguration;
import org.apache.logging.log4j.core.util.NullOutputStream;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.Assume;
diff --git a/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderBufferSizeTest.java b/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderBufferSizeTest.java
index 8d8b905..65111ff 100644
--- a/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderBufferSizeTest.java
+++ b/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderBufferSizeTest.java
@@ -22,7 +22,7 @@ import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.SocketAppenderTest.TcpSocketTestServer;
import org.apache.logging.log4j.core.util.Constants;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
diff --git a/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderSocketOptionsTest.java b/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderSocketOptionsTest.java
index db37ffd..5aba225 100644
--- a/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderSocketOptionsTest.java
+++ b/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderSocketOptionsTest.java
@@ -26,7 +26,7 @@ import org.apache.logging.log4j.core.net.SocketOptions;
import org.apache.logging.log4j.core.net.TcpSocketManager;
import org.apache.logging.log4j.core.util.NullOutputStream;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.Assume;
diff --git a/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderTest.java b/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderTest.java
index 807e8ac..5b330f2 100644
--- a/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderTest.java
+++ b/log4j-core-its/src/test/java/org/apache/logging/log4j/core/appender/SocketAppenderTest.java
@@ -48,7 +48,7 @@ import org.apache.logging.log4j.core.util.Constants;
import org.apache.logging.log4j.core.util.Throwables;
import org.apache.logging.log4j.jackson.json.Log4jJsonObjectMapper;
import org.apache.logging.log4j.jackson.json.layout.JsonLayout;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Assert;
diff --git a/log4j-core/README.md b/log4j-core/README.md
new file mode 100644
index 0000000..03f5046
--- /dev/null
+++ b/log4j-core/README.md
@@ -0,0 +1,37 @@
+# Building Log4j Core
+
+Log4j 2 supports the Java Platform Module System. JPMS has requirements that conflict with several things
+Log4j also tries to support:
+1. OSGi - OSGi frameworks are not packaged as OSGi modules. Including an OSGi implementation will cause
+compiler errors while resolving the JPMS module inforation.
+2. Garbage Free - The Google tool Log4j uses to verify that Log4j core is garbage free violates JPMS rules. The test
+compilations fail when it is included as a dependency.
+3. Compiler bugs - When compiling with module-info.java included the classes in the appender, layout, and filter
+directories get "duplicate class" errors. For some reason these directory names are being interpreted as starting
+with upper case letters even though they are not. For some reason the compiler is showing an error
+that the class cannot be found even though it is being generated. See
+ [JDK-8265826](https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8265826).
+4. Test classes that are used by other modules - Several test classes are used by other log4j modules and need
+to be passed to them. This requires these classes exist in a package that is not used in log4j-core.
+5. Test classes used by log4j-core must use the same package space to be able to access some methods in the classes
+being tested.
+6. Once Java has compiled the main module with a module-info.java all test compiles also require one. Likewise,
+a test compile with a module-info.java is not allowed if the main compile doesn't have one.
+
+For these reasons the build will need to be processed as follows:
+1. Move the Garbage Free tests to their own module. This will require copying all the test resources.
+1. Compile all the main classes except module-info.java with the Plugin preprocessor.
+1. Compile the main module-info.java.
+1. Compile the test classes used by other modules with module-info.java and with the plugin preprocessor.
+1. Package these test classes in a test jar.
+1. Delete the module-info and generated source for the test classes.
+1. Move the main module-info to a temp location.
+1. Compile the unit test classes without module-info.java.
+1. Move the main module-info back to the classes directory.
+1. Compile module-info.java for unit tests.
+1. Run the unit tests.
+1. Create the main jar if the unit tests pass.
+
+Once the JDK bug is fixed this process can be simplified quite a bit since the components will all be able to be
+compiled once with the module-info.java file.
+
\ No newline at end of file
diff --git a/log4j-core/pom.xml b/log4j-core/pom.xml
index f7d81f8..8cb6145 100644
--- a/log4j-core/pom.xml
+++ b/log4j-core/pom.xml
@@ -47,7 +47,12 @@
<!-- Used for OSGi bundle support -->
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.core</artifactId>
+ <artifactId>org.osgi.framework</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.resource</artifactId>
<scope>provided</scope>
</dependency>
<!-- Required for AsyncLoggers -->
@@ -154,11 +159,6 @@
<artifactId>slf4j-api</artifactId>
<scope>test</scope>
</dependency>
- <dependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-ext</artifactId>
- <scope>test</scope>
- </dependency>
<!-- JUnit, naturally -->
<dependency>
<groupId>org.junit.vintage</groupId>
@@ -181,6 +181,11 @@
<artifactId>hamcrest-all</artifactId>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.assertj</groupId>
+ <artifactId>assertj-core</artifactId>
+ <scope>test</scope>
+ </dependency>
<!-- Mocking framework for use with JUnit -->
<dependency>
<groupId>org.mockito</groupId>
@@ -209,17 +214,6 @@
</dependency>
<!-- JNDI and JMS tests -->
<dependency>
- <groupId>org.apache.activemq</groupId>
- <artifactId>activemq-broker</artifactId>
- <scope>test</scope>
- <exclusions>
- <exclusion>
- <groupId>org.apache.geronimo.specs</groupId>
- <artifactId>geronimo-jms_1.1_spec</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<scope>test</scope>
@@ -235,27 +229,6 @@
<artifactId>logback-classic</artifactId>
<scope>test</scope>
</dependency>
- <!-- OSGi tests -->
- <dependency>
- <groupId>org.eclipse.tycho</groupId>
- <artifactId>org.eclipse.osgi</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.felix</groupId>
- <artifactId>org.apache.felix.framework</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.codehaus.plexus</groupId>
- <artifactId>plexus-utils</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.maven</groupId>
- <artifactId>maven-core</artifactId>
- <scope>test</scope>
- </dependency>
<!-- GELF -->
<dependency>
<groupId>net.javacrumbs.json-unit</groupId>
@@ -309,12 +282,6 @@
<artifactId>groovy-dateutil</artifactId>
<scope>test</scope>
</dependency>
- <!-- GC-free -->
- <dependency>
- <groupId>com.google.code.java-allocation-instrumenter</groupId>
- <artifactId>java-allocation-instrumenter</artifactId>
- <scope>test</scope>
- </dependency>
<dependency>
<groupId>org.hdrhistogram</groupId>
<artifactId>HdrHistogram</artifactId>
@@ -343,14 +310,217 @@
<build>
<plugins>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-clean-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>delete-test-module-info</id>
+ <phase>generate-test-sources</phase>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ <configuration>
+ <excludeDefaultDirectories>true</excludeDefaultDirectories>
+ <verbose>true</verbose>
+ <filesets>
+ <fileset>
+ <directory>${project.build.testOutputDirectory}</directory>
+ <followSymlinks>false</followSymlinks>
+ <useDefaultExcludes>true</useDefaultExcludes>
+ <includes>
+ <include>module-info.class</include>
+ <include>**/Log4jPlugins.class</include>
+ </includes>
+ </fileset>
+ <fileset>
+ <directory>${project.build.directory}/generated-test-sources/test-annotations</directory>
+ <followSymlinks>false</followSymlinks>
+ <useDefaultExcludes>true</useDefaultExcludes>
+ </fileset>
+ </filesets>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <executions>
+ <execution>
+ <!-- compile the source except for module-info.java -->
+ <id>default-compile</id>
+ <goals>
+ <goal>compile</goal>
+ </goals>
+ <phase>compile</phase>
+ <configuration combine.self="override">
+ <source>${maven.compiler.source}</source>
+ <target>${maven.compiler.target}</target>
+ <release>${maven.compiler.release}</release>
+ <forceJavacCompilerUse>true</forceJavacCompilerUse>
+ <parameters>true</parameters>
+ </configuration>
+ </execution>
+ <execution>
+ <!-- compile the module-info.java -->
+ <id>compile-module</id>
+ <goals>
+ <goal>compile</goal>
+ </goals>
+ <phase>compile</phase>
+ <configuration combine.self="override">
+ <source>${maven.compiler.source}</source>
+ <target>${maven.compiler.target}</target>
+ <release>${maven.compiler.release}</release>
+ <forceJavacCompilerUse>true</forceJavacCompilerUse>
+ <parameters>true</parameters>
+ <compileSourceRoots>
+ <compileSourceRoot>${project.basedir}/src/main/java9</compileSourceRoot>
+ </compileSourceRoots>
+ </configuration>
+ </execution>
+ <execution>
+ <!-- compile only the classes used by other modules. -->
+ <id>compile-test-utils</id>
+ <goals>
+ <goal>testCompile</goal>
+ </goals>
+ <phase>compile</phase>
+ <configuration>
+ <source>${maven.compiler.source}</source>
+ <target>${maven.compiler.target}</target>
+ <release>${maven.compiler.release}</release>
+ <compileSourceRoots>
+ <compileSourceRoot>${project.basedir}/src/test/java-test</compileSourceRoot>
+ <compileSourceRoot>${project.basedir}/src/test/java-test9</compileSourceRoot>
+ </compileSourceRoots>
+ <forceJavacCompilerUse>true</forceJavacCompilerUse>
+ <parameters>true</parameters>
+ </configuration>
+ </execution>
+ <execution>
+ <!-- Compile unit tests without module-info -->
+ <id>compile-unit-tests</id>
+ <goals>
+ <goal>testCompile</goal>
+ </goals>
+ <phase>process-test-sources</phase>
+ <configuration>
+ <source>${maven.compiler.source}</source>
+ <target>${maven.compiler.target}</target>
+ <release>${maven.compiler.release}</release>
+ <forceJavacCompilerUse>true</forceJavacCompilerUse>
+ <parameters>true</parameters>
+ <compilerArgs>
+ <arg>-ApluginPackage=org.apache.logging.log4j.core.test</arg>
+ </compilerArgs>
+ <compileSourceRoots>
+ <compileSourceRoot>${project.basedir}/src/test/java</compileSourceRoot>
+ <compileSourceRoot>${project.basedir}/src/test/java-test</compileSourceRoot>
+ </compileSourceRoots>
+ </configuration>
+ </execution>
+ <execution>
+ <!-- compile the unit tests module-info -->
+ <id>default-testCompile</id>
+ <goals>
+ <goal>testCompile</goal>
+ </goals>
+ <configuration>
+ <source>${maven.compiler.source}</source>
+ <target>${maven.compiler.target}</target>
+ <release>${maven.compiler.release}</release>
+ <forceJavacCompilerUse>true</forceJavacCompilerUse>
+ <parameters>true</parameters>
+ <compileSourceRoots>
+ <compileSourceRoot>${project.basedir}/src/test/java9</compileSourceRoot>
+ </compileSourceRoots>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>3.0.0</version>
+ <executions>
+ <execution>
+ <phase>generate-test-sources</phase>
+ <configuration>
+ <target>
+ <move todir="${project.build.directory}/saved-classes">
+ <fileset dir="${project.build.outputDirectory}">
+ <include name="module-info.class"/>
+ </fileset>
+ </move>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <!-- Include the standard NOTICE and LICENSE -->
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>3.2.0</version>
+ <executions>
+ <execution>
+ <id>default-resources</id>
+ <goals>
+ <goal>resources</goal>
+ </goals>
+ <phase>generate-resources</phase>
+ </execution>
+ <execution>
+ <id>copy-to-test</id>
+ <phase>process-classes</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${project.build.testOutputDirectory}</outputDirectory>
+ <overwrite>true</overwrite>
+ <resources>
+ <resource>
+ <directory>${project.build.outputDirectory}</directory>
+ <includes>
+ <include>org/apache/logging/log4j/core/**/*.class</include>
+ </includes>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ <execution>
+ <id>restore-module-info</id>
+ <phase>process-test-resources</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${project.build.outputDirectory}</outputDirectory>
+ <overwrite>true</overwrite>
+ <resources>
+ <resource>
+ <directory>${project.build.directory}/saved-classes</directory>
+ <includes>
+ <include>module-info.class</include>
+ </includes>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<excludedGroups>
- org.apache.logging.log4j.categories.PerformanceTests
+ org.apache.logging.log4j.categories.PerformanceTests,
</excludedGroups>
- <systemPropertyVariables>
- <org.apache.activemq.SERIALIZABLE_PACKAGES>*</org.apache.activemq.SERIALIZABLE_PACKAGES>
- </systemPropertyVariables>
+ <argLine>--add-opens java.base/java.lang.reflect=org.apache.commons.lang3
+ --add-opens org.apache.logging.log4j.plugins.test/org.apache.logging.log4j.plugins.test.validation=org.apache.logging.log4j.core
+ </argLine>
</configuration>
</plugin>
<plugin>
@@ -382,8 +552,6 @@
<Implementation-Vendor-Id>org.apache</Implementation-Vendor-Id>
<X-Compile-Source-JDK>${maven.compiler.source}</X-Compile-Source-JDK>
<X-Compile-Target-JDK>${maven.compiler.target}</X-Compile-Target-JDK>
- <Automatic-Module-Name>org.apache.logging.log4j.core</Automatic-Module-Name>
- <Multi-Release>true</Multi-Release>
</manifestEntries>
</archive>
</configuration>
@@ -393,6 +561,7 @@
<goals>
<goal>test-jar</goal>
</goals>
+ <phase>process-classes</phase>
<configuration>
<archive>
<manifestFile>${manifestfile}</manifestFile>
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ExtendedStackTraceElement.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ExtendedStackTraceElement.java
index 083f356..c65eaa1 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ExtendedStackTraceElement.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/impl/ExtendedStackTraceElement.java
@@ -167,8 +167,13 @@ public final class ExtendedStackTraceElement implements Serializable {
final String fileName = stElement.getFileName();
final int lineNumber = stElement.getLineNumber();
String moduleName = getModuleName();
+ String moduleVersion = getModuleVersion();
if (Strings.isNotEmpty(moduleName)) {
textRenderer.render(moduleName, output, "StackTraceElement.ModuleName");
+ if (Strings.isNotEmpty(moduleVersion) && !moduleName.startsWith("java")) {
+ textRenderer.render("@", output, "StackTraceElement.ModuleVersionSeparator");
+ textRenderer.render(moduleVersion, output, "StackTraceElement.ModuleVersion");
+ }
textRenderer.render("/", output, "StackTraceElement.ModuleNameSeparator");
}
textRenderer.render(getClassName(), output, "StackTraceElement.ClassName");
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/package-info.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/plugins/package-info.java
similarity index 85%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/junit/package-info.java
rename to log4j-core/src/main/java/org/apache/logging/log4j/core/plugins/package-info.java
index cda2595..33dbfd3 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/package-info.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/plugins/package-info.java
@@ -14,9 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-
/**
- * JUnit helper classes and TestRules.
- * @see org.junit.rules.TestRule
+ * Placeholder package. The plugins class will be generated here and needs to be present .
*/
-package org.apache.logging.log4j.core.junit;
+package org.apache.logging.log4j.core.plugins;
diff --git a/log4j-core/src/main/java9/module-info.java b/log4j-core/src/main/java9/module-info.java
new file mode 100644
index 0000000..9133d77
--- /dev/null
+++ b/log4j-core/src/main/java9/module-info.java
@@ -0,0 +1,86 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+module org.apache.logging.log4j.core {
+ exports org.apache.logging.log4j.core;
+ exports org.apache.logging.log4j.core.appender;
+ exports org.apache.logging.log4j.core.appender.db;
+ exports org.apache.logging.log4j.core.appender.nosql;
+ exports org.apache.logging.log4j.core.appender.rewrite;
+ exports org.apache.logging.log4j.core.appender.rolling;
+ exports org.apache.logging.log4j.core.appender.rolling.action;
+ exports org.apache.logging.log4j.core.appender.routing;
+ exports org.apache.logging.log4j.core.async;
+ exports org.apache.logging.log4j.core.config;
+ exports org.apache.logging.log4j.core.config.arbiters;
+ exports org.apache.logging.log4j.core.config.builder.api;
+ exports org.apache.logging.log4j.core.config.builder.impl;
+ exports org.apache.logging.log4j.core.config.composite;
+ exports org.apache.logging.log4j.core.config.json;
+ exports org.apache.logging.log4j.core.config.plugins;
+ exports org.apache.logging.log4j.core.config.plugins.convert;
+ exports org.apache.logging.log4j.core.config.plugins.inject;
+ exports org.apache.logging.log4j.core.config.plugins.util;
+ exports org.apache.logging.log4j.core.config.plugins.visitors;
+ exports org.apache.logging.log4j.core.config.properties;
+ exports org.apache.logging.log4j.core.config.status;
+ exports org.apache.logging.log4j.core.config.xml;
+ exports org.apache.logging.log4j.core.config.yaml;
+ exports org.apache.logging.log4j.core.filter;
+ exports org.apache.logging.log4j.core.impl;
+ exports org.apache.logging.log4j.core.jmx;
+ exports org.apache.logging.log4j.core.layout;
+ exports org.apache.logging.log4j.core.lookup;
+ exports org.apache.logging.log4j.core.message;
+ exports org.apache.logging.log4j.core.net;
+ exports org.apache.logging.log4j.core.net.ssl;
+ exports org.apache.logging.log4j.core.osgi;
+ exports org.apache.logging.log4j.core.parser;
+ exports org.apache.logging.log4j.core.pattern;
+ exports org.apache.logging.log4j.core.script;
+ exports org.apache.logging.log4j.core.selector;
+ exports org.apache.logging.log4j.core.time;
+ exports org.apache.logging.log4j.core.tools;
+ exports org.apache.logging.log4j.core.tools.picocli;
+ exports org.apache.logging.log4j.core.util;
+ exports org.apache.logging.log4j.core.util.datetime;
+
+ requires transitive java.desktop;
+ requires transitive java.management;
+ requires transitive java.naming;
+ requires transitive java.sql;
+ requires transitive java.rmi;
+ requires transitive java.scripting;
+ requires transitive java.xml;
+ requires transitive org.apache.logging.log4j;
+ requires transitive org.apache.logging.log4j.plugins;
+ requires transitive com.lmax.disruptor;
+ requires transitive org.jctools.core;
+ requires transitive org.osgi.framework;
+ requires transitive com.conversantmedia.disruptor;
+ requires transitive com.fasterxml.jackson.core;
+ requires transitive com.fasterxml.jackson.databind;
+ requires transitive com.fasterxml.jackson.dataformat.xml;
+ requires transitive com.fasterxml.jackson.dataformat.yaml;
+ requires transitive org.apache.commons.compress;
+ requires transitive org.fusesource.jansi;
+ uses org.apache.logging.log4j.core.util.ContextDataProvider;
+ uses org.apache.logging.log4j.core.util.WatchEventService;
+ provides org.apache.logging.log4j.message.ThreadDumpMessage.ThreadInfoFactory with org.apache.logging.log4j.core.message.ExtendedThreadInfoFactory;
+ provides org.apache.logging.log4j.core.util.ContextDataProvider with org.apache.logging.log4j.core.impl.ThreadContextDataProvider;
+ provides org.apache.logging.log4j.spi.Provider with org.apache.logging.log4j.core.impl.Log4jProvider;
+ provides org.apache.logging.log4j.plugins.processor.PluginService with org.apache.logging.log4j.core.plugins.Log4jPlugins;
+}
diff --git a/log4j-core/src/main/resources/META-INF/MANIFEST.MF b/log4j-core/src/main/resources/META-INF/MANIFEST.MF
new file mode 100644
index 0000000..e69de29
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/AvailablePortFinder.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/AvailablePortFinder.java
similarity index 99%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/AvailablePortFinder.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/AvailablePortFinder.java
index 14122c5..9cac7ac 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/AvailablePortFinder.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/AvailablePortFinder.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.test;
+package org.apache.logging.log4j.core.test;
import java.io.IOException;
import java.net.DatagramSocket;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/AvailablePortSystemPropertyTestRule.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/AvailablePortSystemPropertyTestRule.java
similarity index 98%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/AvailablePortSystemPropertyTestRule.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/AvailablePortSystemPropertyTestRule.java
index 1bece7b..d62d180 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/AvailablePortSystemPropertyTestRule.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/AvailablePortSystemPropertyTestRule.java
@@ -15,7 +15,7 @@
* limitations under the license.
*/
-package org.apache.logging.log4j.test;
+package org.apache.logging.log4j.core.test;
import org.junit.rules.TestRule;
import org.junit.runner.Description;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/ExtendedLevels.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/ExtendedLevels.java
similarity index 96%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/ExtendedLevels.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/ExtendedLevels.java
index 81a6707..9474809 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/ExtendedLevels.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/ExtendedLevels.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.test;
+package org.apache.logging.log4j.core.test;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.plugins.Plugin;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/GetLogger.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/GetLogger.java
similarity index 97%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/GetLogger.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/GetLogger.java
index 13015f2..8fc3d81 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/GetLogger.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/GetLogger.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.test;
+package org.apache.logging.log4j.core.test;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/RuleChainFactory.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/RuleChainFactory.java
similarity index 97%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/RuleChainFactory.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/RuleChainFactory.java
index 30629b2..803872a 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/RuleChainFactory.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/RuleChainFactory.java
@@ -15,7 +15,7 @@
* limitations under the license.
*/
-package org.apache.logging.log4j.test;
+package org.apache.logging.log4j.core.test;
import org.junit.rules.RuleChain;
import org.junit.rules.TestRule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/TestMarkers.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/TestMarkers.java
similarity index 90%
rename from log4j-core/src/test/java/org/apache/logging/log4j/TestMarkers.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/TestMarkers.java
index 29ba32c..d9957bc 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/TestMarkers.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/TestMarkers.java
@@ -15,7 +15,10 @@
* limitations under the license.
*/
-package org.apache.logging.log4j;
+package org.apache.logging.log4j.core.test;
+
+import org.apache.logging.log4j.Marker;
+import org.apache.logging.log4j.MarkerManager;
/**
* Markers useful in tests.
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/AlwaysFailAppender.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/AlwaysFailAppender.java
similarity index 97%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/appender/AlwaysFailAppender.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/AlwaysFailAppender.java
index 380dfe5..d569486 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/AlwaysFailAppender.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/AlwaysFailAppender.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.test.appender;
+package org.apache.logging.log4j.core.test.appender;
import org.apache.logging.log4j.LoggingException;
import org.apache.logging.log4j.core.Appender;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/BlockingAppender.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/BlockingAppender.java
similarity index 97%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/appender/BlockingAppender.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/BlockingAppender.java
index 922f50b..f121e85 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/BlockingAppender.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/BlockingAppender.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.test.appender;
+package org.apache.logging.log4j.core.test.appender;
import java.util.concurrent.TimeUnit;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/EncodingListAppender.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/EncodingListAppender.java
similarity index 95%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/appender/EncodingListAppender.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/EncodingListAppender.java
index aa76254..4910494 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/EncodingListAppender.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/EncodingListAppender.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.test.appender;
+package org.apache.logging.log4j.core.test.appender;
import java.io.Serializable;
import java.nio.ByteBuffer;
@@ -44,7 +44,7 @@ public class EncodingListAppender extends ListAppender {
private static class Destination implements ByteBufferDestination {
// JUnit 5 stack traces can start to get looooong
- ByteBuffer byteBuffer = ByteBuffer.wrap(new byte[8192]);
+ ByteBuffer byteBuffer = ByteBuffer.wrap(new byte[8192 * 2]);
@Override
public ByteBuffer getByteBuffer() {
@@ -53,7 +53,7 @@ public class EncodingListAppender extends ListAppender {
@Override
public ByteBuffer drain(final ByteBuffer buf) {
- throw new IllegalStateException("Unexpected message larger than 4096 bytes");
+ throw new IllegalStateException("Unexpected message larger than 16 KB");
}
@Override
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/FailOnceAppender.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/FailOnceAppender.java
similarity index 98%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/appender/FailOnceAppender.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/FailOnceAppender.java
index 6a8f5f2..3864669 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/FailOnceAppender.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/FailOnceAppender.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.test.appender;
+package org.apache.logging.log4j.core.test.appender;
import org.apache.logging.log4j.LoggingException;
import org.apache.logging.log4j.core.Appender;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/InMemoryAppender.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/InMemoryAppender.java
similarity index 97%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/appender/InMemoryAppender.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/InMemoryAppender.java
index d67c845..532a6b3 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/InMemoryAppender.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/InMemoryAppender.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.test.appender;
+package org.apache.logging.log4j.core.test.appender;
import java.io.ByteArrayOutputStream;
import java.io.IOException;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/ListAppender.java
similarity index 98%
rename from log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/ListAppender.java
index 939e66a..565d41f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/test/appender/ListAppender.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/appender/ListAppender.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.test.appender;
+package org.apache.logging.log4j.core.test.appender;
import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.Core;
@@ -25,7 +25,7 @@ import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.AbstractAppender;
import org.apache.logging.log4j.core.config.Property;
import org.apache.logging.log4j.core.impl.MutableLogEvent;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.plugins.Plugin;
import org.apache.logging.log4j.plugins.PluginAttribute;
import org.apache.logging.log4j.plugins.PluginElement;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/hamcrest/Descriptors.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/Descriptors.java
similarity index 96%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/hamcrest/Descriptors.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/Descriptors.java
index f45a6a6..0ddb27e 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/hamcrest/Descriptors.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/Descriptors.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.core.hamcrest;
+package org.apache.logging.log4j.core.test.hamcrest;
import org.hamcrest.Description;
import org.hamcrest.Matcher;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/FileMatchers.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/FileMatchers.java
similarity index 98%
rename from log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/FileMatchers.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/FileMatchers.java
index 7336e33..5c0be8e 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/FileMatchers.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/FileMatchers.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.hamcrest;
+package org.apache.logging.log4j.core.test.hamcrest;
import java.io.File;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/hamcrest/MapMatchers.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/MapMatchers.java
similarity index 97%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/hamcrest/MapMatchers.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/MapMatchers.java
index 078214b..0803189 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/hamcrest/MapMatchers.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/hamcrest/MapMatchers.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.core.hamcrest;
+package org.apache.logging.log4j.core.test.hamcrest;
import java.util.Map;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/AppenderResolver.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/AppenderResolver.java
similarity index 94%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/junit/AppenderResolver.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/AppenderResolver.java
index 88ec29b..a2343fb 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/AppenderResolver.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/AppenderResolver.java
@@ -15,7 +15,7 @@
* limitations under the license.
*/
-package org.apache.logging.log4j.core.junit;
+package org.apache.logging.log4j.core.test.junit;
import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.LoggerContext;
@@ -24,7 +24,7 @@ import org.junit.jupiter.api.extension.ParameterContext;
import org.junit.jupiter.api.extension.ParameterResolutionException;
import org.junit.jupiter.api.extension.ParameterResolver;
-import static org.apache.logging.log4j.core.junit.LoggerContextResolver.getParameterLoggerContext;
+import static org.apache.logging.log4j.core.test.junit.LoggerContextResolver.getParameterLoggerContext;
class AppenderResolver implements ParameterResolver {
@Override
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/junit/ConfigurationResolver.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/ConfigurationResolver.java
similarity index 88%
rename from log4j-core/src/test/java/org/apache/logging/log4j/junit/ConfigurationResolver.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/ConfigurationResolver.java
index e48b565..274a6d9 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/ConfigurationResolver.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/ConfigurationResolver.java
@@ -15,16 +15,15 @@
* limitations under the license.
*/
-package org.apache.logging.log4j.junit;
+package org.apache.logging.log4j.core.test.junit;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.Configuration;
import org.junit.jupiter.api.extension.ExtensionContext;
import org.junit.jupiter.api.extension.ParameterContext;
import org.junit.jupiter.api.extension.ParameterResolutionException;
-import org.junit.jupiter.api.extension.support.TypeBasedParameterResolver;
-import static org.apache.logging.log4j.junit.LoggerContextResolver.getParameterLoggerContext;
+import static org.apache.logging.log4j.core.test.junit.LoggerContextResolver.getParameterLoggerContext;
class ConfigurationResolver extends TypeBasedParameterResolver<Configuration> {
@Override
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/JndiRule.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/JndiRule.java
similarity index 97%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/junit/JndiRule.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/JndiRule.java
index 4ade779..8007ab5 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/JndiRule.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/JndiRule.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.core.junit;
+package org.apache.logging.log4j.core.test.junit;
import java.util.Collections;
import java.util.Map;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextResolver.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextResolver.java
similarity index 98%
rename from log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextResolver.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextResolver.java
index 3a92d3b..023b84d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextResolver.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextResolver.java
@@ -15,7 +15,7 @@
* limitations under the license.
*/
-package org.apache.logging.log4j.junit;
+package org.apache.logging.log4j.core.test.junit;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.LoggerContextAccessor;
@@ -27,7 +27,6 @@ import org.junit.jupiter.api.extension.BeforeEachCallback;
import org.junit.jupiter.api.extension.ExtensionContext;
import org.junit.jupiter.api.extension.ParameterContext;
import org.junit.jupiter.api.extension.ParameterResolutionException;
-import org.junit.jupiter.api.extension.support.TypeBasedParameterResolver;
import java.lang.reflect.Method;
import java.util.concurrent.TimeUnit;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/LoggerContextRule.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextRule.java
similarity index 99%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/junit/LoggerContextRule.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextRule.java
index af422bb..de678e0 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/LoggerContextRule.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextRule.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j.core.junit;
+package org.apache.logging.log4j.core.test.junit;
import java.util.concurrent.TimeUnit;
@@ -29,7 +29,7 @@ import org.apache.logging.log4j.core.config.Configurator;
import org.apache.logging.log4j.core.selector.ContextSelector;
import org.apache.logging.log4j.core.util.Constants;
import org.apache.logging.log4j.status.StatusLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.test.junit.CleanFiles;
import org.apache.logging.log4j.test.junit.CleanFolders;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/LoggerContextSource.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextSource.java
similarity index 98%
rename from log4j-core/src/test/java/org/apache/logging/log4j/core/junit/LoggerContextSource.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextSource.java
index a63f0b8..7dfcf18 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/LoggerContextSource.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/LoggerContextSource.java
@@ -15,7 +15,7 @@
* limitations under the license.
*/
-package org.apache.logging.log4j.core.junit;
+package org.apache.logging.log4j.core.test.junit;
import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.LoggerContext;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/junit/Named.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/Named.java
similarity index 96%
rename from log4j-core/src/test/java/org/apache/logging/log4j/junit/Named.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/Named.java
index fe776d7..0a8b786 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/Named.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/Named.java
@@ -15,7 +15,7 @@
* limitations under the license.
*/
-package org.apache.logging.log4j.junit;
+package org.apache.logging.log4j.core.test.junit;
import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/junit/ReconfigurationPolicy.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/ReconfigurationPolicy.java
similarity index 96%
rename from log4j-core/src/test/java/org/apache/logging/log4j/junit/ReconfigurationPolicy.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/ReconfigurationPolicy.java
index 3b872bd..1c19ac5 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/ReconfigurationPolicy.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/ReconfigurationPolicy.java
@@ -15,7 +15,7 @@
* limitations under the license.
*/
-package org.apache.logging.log4j.junit;
+package org.apache.logging.log4j.core.test.junit;
import org.apache.logging.log4j.core.LoggerContext;
diff --git a/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/TypeBasedParameterResolver.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/TypeBasedParameterResolver.java
new file mode 100644
index 0000000..e24af48
--- /dev/null
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/TypeBasedParameterResolver.java
@@ -0,0 +1,80 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+package org.apache.logging.log4j.core.test.junit;
+
+import java.lang.reflect.ParameterizedType;
+import java.lang.reflect.Type;
+
+import org.junit.jupiter.api.extension.ExtensionContext;
+import org.junit.jupiter.api.extension.ParameterContext;
+import org.junit.jupiter.api.extension.ParameterResolutionException;
+import org.junit.jupiter.api.extension.ParameterResolver;
+
+import static org.junit.jupiter.api.Assertions.fail;
+
+/**
+ * An adapter that resolved a parameter based on its type.
+ */
+public abstract class TypeBasedParameterResolver<T> implements ParameterResolver {
+
+ private final Type parameterType;
+
+ public TypeBasedParameterResolver() {
+ this.parameterType = enclosedTypeOfParameterResolver();
+ }
+
+ @Override
+ public final boolean supportsParameter(ParameterContext parameterContext, ExtensionContext extensionContext) {
+ return this.parameterType.equals(getParameterType(parameterContext));
+ }
+
+ @Override
+ public abstract T resolveParameter(ParameterContext parameterContext, ExtensionContext extensionContext)
+ throws ParameterResolutionException;
+
+ private Type getParameterType(ParameterContext parameterContext) {
+ return parameterContext.getParameter().getParameterizedType();
+ }
+
+ private Type enclosedTypeOfParameterResolver() {
+ ParameterizedType typeBasedParameterResolverSuperclass = findTypeBasedParameterResolverSuperclass(getClass());
+ if (typeBasedParameterResolverSuperclass == null) {
+ String msg = String.format("Failed to discover parameter type supported by %s; "
+ + "potentially caused by lacking parameterized type in class declaration.",
+ getClass().getName());
+ fail(msg);
+ }
+ return typeBasedParameterResolverSuperclass.getActualTypeArguments()[0];
+ }
+
+ private ParameterizedType findTypeBasedParameterResolverSuperclass(Class<?> clazz) {
+ Class<?> superclass = clazz.getSuperclass();
+ if (superclass == null || superclass == Object.class) {
+ return null;
+ }
+
+ Type genericSuperclass = clazz.getGenericSuperclass();
+ if (genericSuperclass instanceof ParameterizedType) {
+ Type rawType = ((ParameterizedType) genericSuperclass).getRawType();
+ if (rawType == TypeBasedParameterResolver.class) {
+ return (ParameterizedType) genericSuperclass;
+ }
+ }
+ return findTypeBasedParameterResolverSuperclass(superclass);
+ }
+
+}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/junit/package-info.java b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/package-info.java
similarity index 94%
rename from log4j-core/src/test/java/org/apache/logging/log4j/junit/package-info.java
rename to log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/package-info.java
index cae1cf7..9baeb0b 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/package-info.java
+++ b/log4j-core/src/test/java-test/org/apache/logging/log4j/core/test/junit/package-info.java
@@ -19,4 +19,4 @@
* JUnit helper classes and TestRules.
* @see org.junit.rules.TestRule
*/
-package org.apache.logging.log4j.junit;
+package org.apache.logging.log4j.core.test.junit;
diff --git a/log4j-core/src/test/java-test9/module-info.java b/log4j-core/src/test/java-test9/module-info.java
new file mode 100644
index 0000000..738d1b5
--- /dev/null
+++ b/log4j-core/src/test/java-test9/module-info.java
@@ -0,0 +1,20 @@
+module org.apache.logging.log4j.core.test {
+ exports org.apache.logging.log4j.core.test;
+ exports org.apache.logging.log4j.core.test.appender;
+ exports org.apache.logging.log4j.core.test.hamcrest;
+ exports org.apache.logging.log4j.core.test.junit;
+
+ requires java.naming;
+ requires org.apache.logging.log4j;
+ requires org.apache.logging.log4j.test;
+ requires org.apache.logging.log4j.plugins;
+ requires org.apache.logging.log4j.plugins.test;
+ requires org.apache.logging.log4j.core;
+ requires com.fasterxml.jackson.core;
+ requires com.fasterxml.jackson.databind;
+ requires org.junit.jupiter.api;
+ requires org.junit.jupiter.engine;
+ requires org.junit.jupiter.params;
+ requires org.junit.platform.commons;
+ requires org.junit.platform.engine;
+}
\ No newline at end of file
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/categories/Appenders.java b/log4j-core/src/test/java/org/apache/logging/log4j/categories/Appenders.java
deleted file mode 100644
index ec9c403..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/categories/Appenders.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.logging.log4j.categories;
-
-/**
- * Categories for appenders that require extra dependencies.
- */
-public interface Appenders {
- interface AsyncConversant {}
- interface AsyncJcTools {}
- interface Cassandra {}
- interface CouchDb {}
- interface Jms {}
- interface Jpa {}
- interface Kafka {}
- interface MongoDb {}
- interface Smtp {}
- interface ZeroMq {}
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/categories/Configurations.java b/log4j-core/src/test/java/org/apache/logging/log4j/categories/Configurations.java
deleted file mode 100644
index 3342726..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/categories/Configurations.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.logging.log4j.categories;
-
-/**
- * Categories for configuration formats that require extra dependencies.
- */
-public interface Configurations {
- interface Json {}
- interface Yaml {}
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/categories/Layouts.java b/log4j-core/src/test/java/org/apache/logging/log4j/categories/Layouts.java
deleted file mode 100644
index 34775d6..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/categories/Layouts.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.logging.log4j.categories;
-
-/**
- * Categories for layouts that require extra dependencies.
- */
-public interface Layouts {
- interface Csv {}
- interface Jansi {}
- interface Json {}
- interface Xml {}
- interface Yaml {}
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/categories/package-info.java b/log4j-core/src/test/java/org/apache/logging/log4j/categories/package-info.java
deleted file mode 100644
index 82d3474..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/categories/package-info.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-/**
- * JUnit test categories. Unit tests should not specify a category as most tests are unit tests. For performance and
- * integration tests, an appropriate category interface should be specified.
- */
-package org.apache.logging.log4j.categories;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/AppenderRefLevelJsonTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/AppenderRefLevelJsonTest.java
index 82d9370..2d3157f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/AppenderRefLevelJsonTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/AppenderRefLevelJsonTest.java
@@ -18,9 +18,9 @@ package org.apache.logging.log4j.core;
import org.apache.logging.log4j.Marker;
import org.apache.logging.log4j.MarkerManager;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/AppenderRefLevelTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/AppenderRefLevelTest.java
index bc40848..022ce48 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/AppenderRefLevelTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/AppenderRefLevelTest.java
@@ -20,9 +20,9 @@ import java.util.List;
import org.apache.logging.log4j.Marker;
import org.apache.logging.log4j.MarkerManager;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/CollectionLoggingTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/CollectionLoggingTest.java
index e892312..8a14a29 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/CollectionLoggingTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/CollectionLoggingTest.java
@@ -17,10 +17,10 @@
package org.apache.logging.log4j.core;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
import org.apache.logging.log4j.message.StringMapMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.parallel.ResourceAccessMode;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsOverrideTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsOverrideTest.java
index 20826dd..f2007d1 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsOverrideTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsOverrideTest.java
@@ -21,9 +21,9 @@ import static org.hamcrest.Matchers.hasSize;
import static org.junit.jupiter.api.Assertions.*;
import org.apache.logging.log4j.Level;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
@LoggerContextSource("log4j-customLevels.xml")
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsTest.java
index 0512ba5..b4da830 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsTest.java
@@ -21,9 +21,9 @@ import static org.hamcrest.Matchers.hasSize;
import static org.junit.jupiter.api.Assertions.*;
import org.apache.logging.log4j.Level;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
@LoggerContextSource("log4j-customLevels.xml")
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsWithFiltersTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsWithFiltersTest.java
index 6df5f06..da1efc6 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsWithFiltersTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/CustomLevelsWithFiltersTest.java
@@ -21,8 +21,8 @@ import org.apache.logging.log4j.core.appender.FileAppender;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.filter.CompositeFilter;
import org.apache.logging.log4j.core.filter.ThresholdFilter;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/DeadlockTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/DeadlockTest.java
index 7738058..ff23f05 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/DeadlockTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/DeadlockTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.logging.log4j.core;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/ExtendedLevelTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/ExtendedLevelTest.java
index 6401015..b6b497d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/ExtendedLevelTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/ExtendedLevelTest.java
@@ -17,10 +17,10 @@
package org.apache.logging.log4j.core;
import org.apache.logging.log4j.Level;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.ExtendedLevels;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.ExtendedLevels;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import java.util.List;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/FormatterLoggerManualExample.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/FormatterLoggerManualExample.java
similarity index 94%
rename from log4j-core/src/test/java/org/apache/logging/log4j/FormatterLoggerManualExample.java
rename to log4j-core/src/test/java/org/apache/logging/log4j/core/FormatterLoggerManualExample.java
index d5a1438..63cd0c7 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/FormatterLoggerManualExample.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/FormatterLoggerManualExample.java
@@ -14,12 +14,13 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j;
+package org.apache.logging.log4j.core;
import java.util.Calendar;
import java.util.GregorianCalendar;
-import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.config.Configurator;
public class FormatterLoggerManualExample {
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/HostNameTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/HostNameTest.java
index c51df79..256a0ad 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/HostNameTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/HostNameTest.java
@@ -20,9 +20,9 @@ import java.util.List;
import org.apache.logging.log4j.core.appender.RollingFileAppender;
import org.apache.logging.log4j.core.util.NetUtils;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/LevelTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/LevelTest.java
index c60c904..c177c43 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/LevelTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/LevelTest.java
@@ -22,11 +22,11 @@ import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.Marker;
import org.apache.logging.log4j.MarkerManager;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.message.Message;
import org.apache.logging.log4j.message.ObjectMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import static org.hamcrest.MatcherAssert.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/LogEventFactoryTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/LogEventFactoryTest.java
index c728e75..3a6c93d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/LogEventFactoryTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/LogEventFactoryTest.java
@@ -31,9 +31,9 @@ import org.apache.logging.log4j.core.impl.DefaultLogEventFactory;
import org.apache.logging.log4j.core.impl.Log4jLogEvent;
import org.apache.logging.log4j.core.impl.LogEventFactory;
import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.Message;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/LogRolloverTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/LogRolloverTest.java
similarity index 92%
rename from log4j-core/src/test/java/org/apache/logging/log4j/LogRolloverTest.java
rename to log4j-core/src/test/java/org/apache/logging/log4j/core/LogRolloverTest.java
index f1739dd..f91c0e5 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/LogRolloverTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/LogRolloverTest.java
@@ -14,11 +14,12 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j;
+package org.apache.logging.log4j.core;
import java.io.File;
-import org.apache.logging.log4j.core.LoggerContext;
+import org.apache.logging.log4j.LogManager;
+import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.config.Configurator;
/**
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/LogbackSubstitution.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/LogbackSubstitution.java
similarity index 83%
rename from log4j-core/src/test/java/org/apache/logging/log4j/LogbackSubstitution.java
rename to log4j-core/src/test/java/org/apache/logging/log4j/core/LogbackSubstitution.java
index 4f46efd..570340d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/LogbackSubstitution.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/LogbackSubstitution.java
@@ -14,13 +14,12 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j;
+package org.apache.logging.log4j.core;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
-import org.slf4j.ext.XLogger;
-import org.slf4j.ext.XLoggerFactory;
+import org.slf4j.LoggerFactory;
/**
*
@@ -29,7 +28,7 @@ public class LogbackSubstitution {
private static final String LOGBACK_CONF = "logback.configurationFile";
private static final String LOGBACK_CONFIG = "logback-subst.xml";
- private final XLogger xLogger = XLoggerFactory.getXLogger(LogbackSubstitution.class);
+ private final org.slf4j.Logger logger = LoggerFactory.getLogger(LogbackSubstitution.class);
@@ -45,7 +44,7 @@ public class LogbackSubstitution {
@Test
public void testSubst() {
- xLogger.debug("Hello, {}", "Log4j {}");
- xLogger.debug("Hello, {}");
+ logger.debug("Hello, {}", "Log4j {}");
+ logger.debug("Hello, {}");
}
}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerDateTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerDateTest.java
index 4763d10..6d8229e 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerDateTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerDateTest.java
@@ -19,8 +19,8 @@ package org.apache.logging.log4j.core;
import java.util.Calendar;
import org.apache.logging.log4j.core.appender.FileAppender;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerTest.java
index 1b23796..d21513a 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerTest.java
@@ -24,9 +24,9 @@ import org.apache.logging.log4j.ThreadContext;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.config.Configurator;
import org.apache.logging.log4j.core.config.LoggerConfig;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.ReconfigurationPolicy;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.ReconfigurationPolicy;
import org.apache.logging.log4j.message.Message;
import org.apache.logging.log4j.message.MessageFactory;
import org.apache.logging.log4j.message.ParameterizedMessageFactory;
@@ -34,7 +34,7 @@ import org.apache.logging.log4j.message.SimpleMessage;
import org.apache.logging.log4j.message.StringFormatterMessageFactory;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.apache.logging.log4j.spi.AbstractLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.hamcrest.MatcherAssert;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.TestInfo;
@@ -84,7 +84,7 @@ public class LoggerTest {
final List<LogEvent> events = app.getEvents();
assertEventCount(events, 3);
assertEquals(
- "org.apache.logging.log4j.core.LoggerTest.builder(LoggerTest.java:80)", events.get(0).getSource().toString(),
+ "org.apache.logging.log4j.core/org.apache.logging.log4j.core.LoggerTest.builder(LoggerTest.java:80)", events.get(0).getSource().toString(),
"Incorrect location");
assertEquals(Level.DEBUG, events.get(0).getLevel(), "Incorrect Level");
MatcherAssert.assertThat("Incorrect message", events.get(1).getMessage().getFormattedMessage(), equalTo("Hello John"));
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerUpdateTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerUpdateTest.java
index a595186..ecba58f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerUpdateTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/LoggerUpdateTest.java
@@ -20,9 +20,9 @@ import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.config.LoggerConfig;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import java.util.List;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/LookupTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/LookupTest.java
index 801b8ff..fc4ba9f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/LookupTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/LookupTest.java
@@ -18,8 +18,8 @@ package org.apache.logging.log4j.core;
import org.apache.logging.log4j.core.appender.ConsoleAppender;
import org.apache.logging.log4j.core.layout.PatternLayout;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java
index 4806e6a..6721ce0 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/PatternSelectorTest.java
@@ -19,9 +19,9 @@ package org.apache.logging.log4j.core;
import java.util.List;
import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/PropertiesFileConfigTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/PropertiesFileConfigTest.java
index 0914758..6294d88 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/PropertiesFileConfigTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/PropertiesFileConfigTest.java
@@ -17,9 +17,9 @@
package org.apache.logging.log4j.core;
import org.apache.logging.log4j.core.config.Configuration;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/ShutdownDisabledTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/ShutdownDisabledTest.java
index 0771742..aa553a4 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/ShutdownDisabledTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/ShutdownDisabledTest.java
@@ -17,7 +17,7 @@
package org.apache.logging.log4j.core;
import org.apache.logging.log4j.core.config.Configuration;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertFalse;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/ShutdownTimeoutConfigurationTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/ShutdownTimeoutConfigurationTest.java
index 2037a99..e97a666 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/ShutdownTimeoutConfigurationTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/ShutdownTimeoutConfigurationTest.java
@@ -17,7 +17,7 @@
package org.apache.logging.log4j.core;
import org.apache.logging.log4j.core.config.Configuration;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/StrictXmlConfigTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/StrictXmlConfigTest.java
index 29293f7..d764340 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/StrictXmlConfigTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/StrictXmlConfigTest.java
@@ -18,11 +18,11 @@ package org.apache.logging.log4j.core;
import org.apache.logging.log4j.MarkerManager;
import org.apache.logging.log4j.ThreadContext;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.message.EntryMessage;
import org.apache.logging.log4j.message.StructuredDataMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import java.util.Date;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/ThreadContextTestAccess.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/ThreadContextTestAccess.java
similarity index 97%
rename from log4j-core/src/test/java/org/apache/logging/log4j/ThreadContextTestAccess.java
rename to log4j-core/src/test/java/org/apache/logging/log4j/core/ThreadContextTestAccess.java
index 5245899..fc35ae5 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/ThreadContextTestAccess.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/ThreadContextTestAccess.java
@@ -14,7 +14,7 @@
* See the license for the specific language governing permissions and
* limitations under the license.
*/
-package org.apache.logging.log4j;
+package org.apache.logging.log4j.core;
import java.lang.reflect.Method;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/TimestampMessageTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/TimestampMessageTest.java
index 1131464..ccfee32 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/TimestampMessageTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/TimestampMessageTest.java
@@ -21,12 +21,12 @@ import org.apache.logging.log4j.core.time.Clock;
import org.apache.logging.log4j.core.time.ClockFactory;
import org.apache.logging.log4j.core.time.ClockFactoryTest;
import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.message.Message;
import org.apache.logging.log4j.message.SimpleMessage;
import org.apache.logging.log4j.message.TimestampMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/XmlEvents.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/XmlEvents.java
index 9ae8f21..6417953 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/XmlEvents.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/XmlEvents.java
@@ -18,7 +18,7 @@ package org.apache.logging.log4j.core;
import org.apache.logging.log4j.EventLogger;
import org.apache.logging.log4j.ThreadContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.message.AsynchronouslyFormattable;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.junit.jupiter.api.Disabled;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderQueueFullPolicyTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderQueueFullPolicyTest.java
index c1616c6..95ffd5a 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderQueueFullPolicyTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderQueueFullPolicyTest.java
@@ -21,9 +21,9 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.async.DefaultAsyncQueueFullPolicy;
import org.apache.logging.log4j.core.async.EventRoute;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.BlockingAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.BlockingAppender;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderTest.java
index ad4efed..fad0cb7 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderTest.java
@@ -19,10 +19,10 @@ package org.apache.logging.log4j.core.appender;
import org.apache.logging.log4j.LoggingException;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
import org.apache.logging.log4j.spi.ExtendedLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.Timeout;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/FailoverAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/FailoverAppenderTest.java
index 8239342..499832a 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/FailoverAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/FailoverAppenderTest.java
@@ -19,10 +19,10 @@ package org.apache.logging.log4j.core.appender;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LogEvent;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.FailOnceAppender;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.FailOnceAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/FileAppenderPermissionsTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/FileAppenderPermissionsTest.java
index e12673c..2c32438 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/FileAppenderPermissionsTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/FileAppenderPermissionsTest.java
@@ -25,7 +25,7 @@ import org.apache.logging.log4j.core.impl.Log4jLogEvent;
import org.apache.logging.log4j.core.layout.PatternLayout;
import org.apache.logging.log4j.core.util.FileUtils;
import org.apache.logging.log4j.test.junit.CleanUpDirectories;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.message.SimpleMessage;
import org.apache.logging.log4j.spi.ExtendedLogger;
import org.junit.jupiter.api.BeforeAll;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/InMemoryAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/InMemoryAppenderTest.java
index a6004e1..cf386e3 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/InMemoryAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/InMemoryAppenderTest.java
@@ -22,7 +22,7 @@ import org.apache.logging.log4j.core.LogEvent;
import org.apache.logging.log4j.core.impl.Log4jLogEvent;
import org.apache.logging.log4j.core.layout.PatternLayout;
import org.apache.logging.log4j.message.SimpleMessage;
-import org.apache.logging.log4j.test.appender.InMemoryAppender;
+import org.apache.logging.log4j.core.test.appender.InMemoryAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/MemoryMappedFileAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/MemoryMappedFileAppenderTest.java
index 69d24c2..c2b245f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/MemoryMappedFileAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/MemoryMappedFileAppenderTest.java
@@ -20,7 +20,7 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.util.Integers;
import org.apache.logging.log4j.test.junit.CleanUpFiles;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Test;
import java.nio.file.Files;
@@ -109,12 +109,11 @@ public class MemoryMappedFileAppenderTest {
} finally {
context.stop();
}
- assertEquals(272 + 2 * System.lineSeparator().length(), Files.size(logFile), "Expected file size to shrink");
+ assertEquals(332 + 2 * System.lineSeparator().length(), Files.size(logFile), "Expected file size to shrink");
final List<String> lines = Files.readAllLines(logFile);
- assertThat(lines, both(hasSize(2)).and(contains(
- "org.apache.logging.log4j.core.appender.MemoryMappedFileAppenderTest.testMemMapLocation(MemoryMappedFileAppenderTest.java:104): Test log1",
- "org.apache.logging.log4j.core.appender.MemoryMappedFileAppenderTest.testMemMapLocation(MemoryMappedFileAppenderTest.java:107): Test log2"
- )));
+ assertEquals(2, lines.size());
+ assertTrue(lines.get(0).endsWith("org.apache.logging.log4j.core.appender.MemoryMappedFileAppenderTest.testMemMapLocation(MemoryMappedFileAppenderTest.java:104): Test log1"));
+ assertTrue(lines.get(1).endsWith("org.apache.logging.log4j.core.appender.MemoryMappedFileAppenderTest.testMemMapLocation(MemoryMappedFileAppenderTest.java:107): Test log2"));
}
}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/OutputStreamManagerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/OutputStreamManagerTest.java
index 0cf8559..5fde3c0 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/OutputStreamManagerTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/OutputStreamManagerTest.java
@@ -24,7 +24,7 @@ import java.util.List;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.status.StatusData;
import org.apache.logging.log4j.status.StatusLogger;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RandomAccessFileAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RandomAccessFileAppenderTest.java
index 69adad7..25bc0ca 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RandomAccessFileAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/RandomAccessFileAppenderTest.java
@@ -24,7 +24,7 @@ import java.util.Collection;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.test.junit.CleanFiles;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.hamcrest.Matcher;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ScriptAppenderSelectorTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ScriptAppenderSelectorTest.java
index 3959594..c6474f9 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ScriptAppenderSelectorTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/ScriptAppenderSelectorTest.java
@@ -18,9 +18,9 @@ package org.apache.logging.log4j.core.appender;
import org.apache.logging.log4j.MarkerManager;
import org.apache.logging.log4j.core.config.Configuration;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.spi.ExtendedLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import static org.hamcrest.MatcherAssert.assertThat;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/MapRewritePolicyTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/MapRewritePolicyTest.java
index 7c4e65c..dae1eb9 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/MapRewritePolicyTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/MapRewritePolicyTest.java
@@ -35,7 +35,7 @@ import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
-import static org.apache.logging.log4j.core.hamcrest.MapMatchers.hasSize;
+import static org.apache.logging.log4j.core.test.hamcrest.MapMatchers.hasSize;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.hasEntry;
import static org.junit.jupiter.api.Assertions.assertArrayEquals;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/RewriteAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/RewriteAppenderTest.java
index 2eea61d..deabcfb 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/RewriteAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rewrite/RewriteAppenderTest.java
@@ -20,12 +20,12 @@ import org.apache.logging.log4j.EventLogger;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LogEvent;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.hamcrest.MapMatchers;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
+import org.apache.logging.log4j.core.test.hamcrest.MapMatchers;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
import org.apache.logging.log4j.message.Message;
import org.apache.logging.log4j.message.StructuredDataMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import java.util.List;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RandomRollingAppenderOnStartupTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RandomRollingAppenderOnStartupTest.java
index 9b67454..472316c 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RandomRollingAppenderOnStartupTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RandomRollingAppenderOnStartupTest.java
@@ -23,7 +23,7 @@ import java.nio.file.Paths;
import java.util.Arrays;
import java.util.Collection;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCountTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCountTest.java
index 264f3aa..afc381d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCountTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCountTest.java
@@ -18,7 +18,7 @@ package org.apache.logging.log4j.core.appender.rolling;
import org.apache.commons.lang3.RandomStringUtils;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.AfterClass;
import org.junit.Before;
import org.junit.BeforeClass;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronAndSizeTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronAndSizeTest.java
index b7c7820..06763b5 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronAndSizeTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronAndSizeTest.java
@@ -21,14 +21,14 @@ import java.util.Arrays;
import java.util.Random;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.assertEquals;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2DirectTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2DirectTest.java
index e241d37..b5cf961 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2DirectTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2DirectTest.java
@@ -21,13 +21,13 @@ import java.security.SecureRandom;
import java.util.Random;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.hamcrest.Matcher;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.assertTrue;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2Test.java
index 6bf40c9..985c65d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronEvery2Test.java
@@ -21,13 +21,13 @@ import java.security.SecureRandom;
import java.util.Random;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.hamcrest.Matcher;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronOnceADayTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronOnceADayTest.java
index 6b6f16e..b05b093 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronOnceADayTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronOnceADayTest.java
@@ -16,8 +16,8 @@
*/
package org.apache.logging.log4j.core.appender.rolling;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotEquals;
@@ -33,7 +33,7 @@ import java.util.Calendar;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.appender.RollingFileAppender;
import org.apache.logging.log4j.core.util.CronExpression;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.status.StatusLogger;
import org.hamcrest.Matcher;
import org.junit.BeforeClass;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
index 35cda82..447e6e4 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCronTest.java
@@ -16,8 +16,8 @@
*/
package org.apache.logging.log4j.core.appender.rolling;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.assertNotNull;
@@ -34,7 +34,7 @@ import java.nio.file.Path;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.appender.RollingFileAppender;
import org.apache.logging.log4j.core.util.CronExpression;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.hamcrest.Matcher;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCustomDeleteActionTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCustomDeleteActionTest.java
index d2c4c72..9050704 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCustomDeleteActionTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderCustomDeleteActionTest.java
@@ -24,7 +24,7 @@ import java.util.Arrays;
import java.util.regex.Pattern;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedCount1Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedCount1Test.java
index 8f85263..efe0bd8 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedCount1Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedCount1Test.java
@@ -34,7 +34,7 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.time.internal.format.FixedDateFormat;
import org.apache.logging.log4j.core.time.internal.format.FixedDateFormat.FixedFormat;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedCount2Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedCount2Test.java
index 4231619..bee2cf2 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedCount2Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedCount2Test.java
@@ -34,7 +34,7 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.time.internal.format.FixedDateFormat;
import org.apache.logging.log4j.core.time.internal.format.FixedDateFormat.FixedFormat;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedSizeTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedSizeTest.java
index fb5e5b9..6190e65 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedSizeTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteAccumulatedSizeTest.java
@@ -25,7 +25,7 @@ import java.util.Arrays;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.time.internal.format.FixedDateFormat;
import org.apache.logging.log4j.core.time.internal.format.FixedDateFormat.FixedFormat;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteMaxDepthTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteMaxDepthTest.java
index e414953..a365741 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteMaxDepthTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteMaxDepthTest.java
@@ -31,7 +31,7 @@ import java.util.List;
import java.util.regex.Pattern;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteNestedTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteNestedTest.java
index 6cb2abd..d71a182 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteNestedTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteNestedTest.java
@@ -34,7 +34,7 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.time.internal.format.FixedDateFormat;
import org.apache.logging.log4j.core.time.internal.format.FixedDateFormat.FixedFormat;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteScriptFri13thTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteScriptFri13thTest.java
index a4df290..f192b4d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteScriptFri13thTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteScriptFri13thTest.java
@@ -23,7 +23,7 @@ import static org.junit.Assert.assertTrue;
import java.io.File;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteScriptTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteScriptTest.java
index fee0ba3..0b7201a 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteScriptTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDeleteScriptTest.java
@@ -21,7 +21,7 @@ import static org.junit.Assert.assertTrue;
import java.io.File;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWrite1906Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWrite1906Test.java
index 0c06172..b80d823 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWrite1906Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWrite1906Test.java
@@ -24,7 +24,7 @@ import java.util.List;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.status.StatusData;
import org.apache.logging.log4j.status.StatusListener;
import org.apache.logging.log4j.status.StatusLogger;
@@ -34,8 +34,8 @@ import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.assertNotNull;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteStartupSizeTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteStartupSizeTest.java
index 3223e9d..d93468c 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteStartupSizeTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteStartupSizeTest.java
@@ -21,7 +21,7 @@ import java.nio.file.Path;
import java.nio.file.Paths;
import org.apache.logging.log4j.core.appender.RollingFileAppender;
import org.apache.logging.log4j.test.junit.CleanFolders;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Assert;
import org.junit.BeforeClass;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTempCompressedFilePatternTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTempCompressedFilePatternTest.java
index 2945d2f..e95b390 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTempCompressedFilePatternTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTempCompressedFilePatternTest.java
@@ -16,8 +16,8 @@
*/
package org.apache.logging.log4j.core.appender.rolling;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.assertNotNull;
@@ -34,7 +34,7 @@ import java.nio.file.WatchService;
import org.apache.commons.lang3.SystemUtils;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Assume;
import org.junit.Before;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTest.java
index a829fbd..bd10354 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteTest.java
@@ -24,13 +24,13 @@ import java.io.InputStreamReader;
import java.util.zip.GZIPInputStream;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithFilenameTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithFilenameTest.java
index 7bc308e..fe44348 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithFilenameTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithFilenameTest.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.core.appender.rolling;
import java.io.File;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithHtmlLayoutTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithHtmlLayoutTest.java
index d65de65..b7d811e 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithHtmlLayoutTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithHtmlLayoutTest.java
@@ -21,7 +21,7 @@ import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.impl.Log4jLogEvent;
import org.apache.logging.log4j.core.layout.HtmlLayout;
import org.apache.logging.log4j.core.util.IOUtils;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.SimpleMessage;
import org.hamcrest.Matchers;
import org.junit.Rule;
@@ -32,8 +32,8 @@ import java.io.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithReconfigureTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithReconfigureTest.java
index ce5f003..80e3c65 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithReconfigureTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderDirectWriteWithReconfigureTest.java
@@ -21,7 +21,7 @@ import java.net.URI;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.Configuration;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderNoUnconditionalDeleteTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderNoUnconditionalDeleteTest.java
index 57df32c..68ac09d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderNoUnconditionalDeleteTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderNoUnconditionalDeleteTest.java
@@ -24,7 +24,7 @@ import java.util.Collection;
import java.util.List;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderReconfigureTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderReconfigureTest.java
index 5f1a0fe..dfe8bba 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderReconfigureTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderReconfigureTest.java
@@ -14,8 +14,8 @@
*/
package org.apache.logging.log4j.core.appender.rolling;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.assertThat;
@@ -25,7 +25,7 @@ import java.io.File;
import org.apache.commons.io.FileUtils;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderRestartTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderRestartTest.java
index 2230232..f968308 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderRestartTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderRestartTest.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.core.appender.rolling;
import org.apache.commons.io.file.PathUtils;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.appender.RollingFileAppender;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.hamcrest.Matcher;
import org.junit.AfterClass;
import org.junit.BeforeClass;
@@ -41,8 +41,8 @@ import java.util.Arrays;
import java.util.concurrent.CountDownLatch;
import java.util.concurrent.TimeUnit;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.assertNotNull;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeCompressPermissionsTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeCompressPermissionsTest.java
index 8161f11..a41fbb4 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeCompressPermissionsTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeCompressPermissionsTest.java
@@ -25,7 +25,7 @@ import java.util.concurrent.TimeUnit;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.util.FileUtils;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Assume;
import org.junit.Before;
import org.junit.BeforeClass;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeNoCompressTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeNoCompressTest.java
index ba94f32..6eeb25e 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeNoCompressTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeNoCompressTest.java
@@ -30,7 +30,7 @@ import java.util.concurrent.TimeUnit;
import org.apache.commons.compress.utils.IOUtils;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
index 3dba35a..aacb682 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeTest.java
@@ -16,8 +16,8 @@
*/
package org.apache.logging.log4j.core.appender.rolling;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.assertNotNull;
@@ -43,7 +43,7 @@ import org.apache.commons.compress.utils.IOUtils;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.appender.RollingFileAppender;
import org.apache.logging.log4j.core.util.Closer;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Assert;
import org.junit.Before;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeWithTimeTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeWithTimeTest.java
index 639ba89..f4ed39d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeWithTimeTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderSizeWithTimeTest.java
@@ -26,7 +26,7 @@ import java.util.concurrent.TimeUnit;
import org.apache.commons.compress.utils.IOUtils;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTempCompressedFilePatternTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTempCompressedFilePatternTest.java
index 77ebf43..2767a12 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTempCompressedFilePatternTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTempCompressedFilePatternTest.java
@@ -41,7 +41,7 @@ import org.apache.commons.compress.utils.IOUtils;
import org.apache.commons.lang3.SystemUtils;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.util.Closer;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Assume;
import org.junit.Before;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeDirectTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeDirectTest.java
index 7cdbc30..90c6d0b 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeDirectTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeDirectTest.java
@@ -19,13 +19,13 @@ package org.apache.logging.log4j.core.appender.rolling;
import java.io.File;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeTest.java
index f947774..a136efd 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeAndSizeTest.java
@@ -17,7 +17,7 @@
package org.apache.logging.log4j.core.appender.rolling;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
@@ -29,8 +29,8 @@ import java.nio.file.attribute.FileTime;
import java.util.Arrays;
import java.util.Random;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeTest.java
index f8ef484..16305f0 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingAppenderTimeTest.java
@@ -16,8 +16,8 @@
*/
package org.apache.logging.log4j.core.appender.rolling;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.assertTrue;
@@ -26,7 +26,7 @@ import static org.junit.Assert.fail;
import java.io.File;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.hamcrest.Matcher;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingDirectSizeTimeNewDirectoryTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingDirectSizeTimeNewDirectoryTest.java
index 0211c6a..dca5ca6 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingDirectSizeTimeNewDirectoryTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingDirectSizeTimeNewDirectoryTest.java
@@ -25,7 +25,7 @@ import java.util.concurrent.atomic.AtomicInteger;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.appender.RollingFileAppender;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingDirectTimeNewDirectoryTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingDirectTimeNewDirectoryTest.java
index 20c8a33..62d77a7 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingDirectTimeNewDirectoryTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingDirectTimeNewDirectoryTest.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.core.appender.rolling;
import org.apache.commons.io.FileUtils;
import org.apache.commons.io.filefilter.TrueFileFilter;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingFileAppenderReconfigureTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingFileAppenderReconfigureTest.java
index 97dcab2..413983c 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingFileAppenderReconfigureTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingFileAppenderReconfigureTest.java
@@ -17,7 +17,7 @@
package org.apache.logging.log4j.core.appender.rolling;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingFileAppenderReconfigureUndefinedSystemPropertyTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingFileAppenderReconfigureUndefinedSystemPropertyTest.java
index ade5e94..828dbad 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingFileAppenderReconfigureUndefinedSystemPropertyTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingFileAppenderReconfigureUndefinedSystemPropertyTest.java
@@ -17,7 +17,7 @@
package org.apache.logging.log4j.core.appender.rolling;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingNewDirectoryTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingNewDirectoryTest.java
index 07274d8..0d577d5 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingNewDirectoryTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingNewDirectoryTest.java
@@ -17,7 +17,7 @@
package org.apache.logging.log4j.core.appender.rolling;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManagerHeaderFooterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManagerHeaderFooterTest.java
index e02a2a1..6191606 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManagerHeaderFooterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManagerHeaderFooterTest.java
@@ -27,7 +27,7 @@ import java.nio.charset.Charset;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.layout.HtmlLayout;
import org.apache.logging.log4j.core.util.Closer;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManagerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManagerTest.java
index 9f1c6aa..c47d2ec 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManagerTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAccessFileManagerTest.java
@@ -37,10 +37,10 @@ import java.nio.file.attribute.PosixFilePermissions;
import java.util.Set;
import java.util.concurrent.locks.LockSupport;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.beforeNow;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasLength;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.isEmpty;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.lastModified;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.beforeNow;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasLength;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.isEmpty;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.lastModified;
import static org.hamcrest.Matchers.equalTo;
import static org.hamcrest.Matchers.lessThanOrEqualTo;
import static org.junit.Assert.assertEquals;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAppenderDirectWriteTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAppenderDirectWriteTest.java
index 22e4a73..e662676 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAppenderDirectWriteTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAppenderDirectWriteTest.java
@@ -19,13 +19,13 @@ package org.apache.logging.log4j.core.appender.rolling;
import java.io.File;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
-import static org.apache.logging.log4j.core.hamcrest.Descriptors.that;
-import static org.apache.logging.log4j.core.hamcrest.FileMatchers.hasName;
+import static org.apache.logging.log4j.core.test.hamcrest.Descriptors.that;
+import static org.apache.logging.log4j.core.test.hamcrest.FileMatchers.hasName;
import static org.hamcrest.Matchers.endsWith;
import static org.hamcrest.Matchers.hasItemInArray;
import static org.junit.Assert.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAppenderDirectWriteWithFilenameTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAppenderDirectWriteWithFilenameTest.java
index 3b1b7d0..2e362fe 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAppenderDirectWriteWithFilenameTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RollingRandomAppenderDirectWriteWithFilenameTest.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.core.appender.rolling;
import java.io.File;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RolloverWithDeletedOldFileTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RolloverWithDeletedOldFileTest.java
index 20b96f8..64e6307 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RolloverWithDeletedOldFileTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RolloverWithDeletedOldFileTest.java
@@ -17,7 +17,7 @@
package org.apache.logging.log4j.core.appender.rolling;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RolloverWithPaddingTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RolloverWithPaddingTest.java
index 44d519c..6d3b299 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RolloverWithPaddingTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/RolloverWithPaddingTest.java
@@ -25,7 +25,7 @@ import java.util.Arrays;
import java.util.List;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/AbstractActionTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/AbstractActionTest.java
index b48d274..3ac2fd9 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/AbstractActionTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/rolling/action/AbstractActionTest.java
@@ -31,7 +31,7 @@ public class AbstractActionTest {
assertThat(formattedMessage, containsString("Exception reported by action 'class org.apache."
+ "logging.log4j.core.appender.rolling.action.AbstractActionTest$TestAction' java.io.IOException: "
+ "failed" + System.lineSeparator()
- + "\tat org.apache.logging.log4j.core.appender.rolling.action.AbstractActionTest"
+ + "\tat org.apache.logging.log4j.core/org.apache.logging.log4j.core.appender.rolling.action.AbstractActionTest"
+ "$TestAction.execute(AbstractActionTest.java:"));
}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/DefaultRouteScriptAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/DefaultRouteScriptAppenderTest.java
index a50f877..25647ab 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/DefaultRouteScriptAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/DefaultRouteScriptAppenderTest.java
@@ -23,8 +23,8 @@ import org.apache.logging.log4j.Marker;
import org.apache.logging.log4j.MarkerManager;
import org.apache.logging.log4j.core.Logger;
import org.apache.logging.log4j.core.config.AppenderControl;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/JsonRoutingAppender2Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/JsonRoutingAppender2Test.java
index 2efa56b..b9f575d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/JsonRoutingAppender2Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/JsonRoutingAppender2Test.java
@@ -24,7 +24,7 @@ import java.util.List;
import org.apache.logging.log4j.EventLogger;
import org.apache.logging.log4j.core.LogEvent;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/JsonRoutingAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/JsonRoutingAppenderTest.java
index dcccad2..405c8d1 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/JsonRoutingAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/JsonRoutingAppenderTest.java
@@ -24,7 +24,7 @@ import java.util.List;
import org.apache.logging.log4j.EventLogger;
import org.apache.logging.log4j.core.LogEvent;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/PropertiesRoutingAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/PropertiesRoutingAppenderTest.java
index fd361d1..6280cc4 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/PropertiesRoutingAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/PropertiesRoutingAppenderTest.java
@@ -24,9 +24,9 @@ import java.util.List;
import org.apache.logging.log4j.EventLogger;
import org.apache.logging.log4j.core.LogEvent;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.StructuredDataMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutesScriptAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutesScriptAppenderTest.java
index ab55bec..8e14579 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutesScriptAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutesScriptAppenderTest.java
@@ -31,8 +31,8 @@ import org.apache.logging.log4j.core.LogEvent;
import org.apache.logging.log4j.core.Logger;
import org.apache.logging.log4j.core.config.AppenderControl;
import org.apache.logging.log4j.core.impl.DefaultLogEventFactory;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppender2767Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppender2767Test.java
index 006769f..7e0db86 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppender2767Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppender2767Test.java
@@ -17,7 +17,7 @@
package org.apache.logging.log4j.core.appender.routing;
import org.apache.logging.log4j.EventLogger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.junit.After;
import org.junit.Before;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderTest.java
index 0d3423d..65b1099 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderTest.java
@@ -21,9 +21,9 @@ import java.util.List;
import org.apache.logging.log4j.EventLogger;
import org.apache.logging.log4j.core.LogEvent;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.StructuredDataMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderWithJndiTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderWithJndiTest.java
index 14a245f..9773c36 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderWithJndiTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderWithJndiTest.java
@@ -23,10 +23,10 @@ import javax.naming.InitialContext;
import javax.naming.NamingException;
import org.apache.logging.log4j.EventLogger;
-import org.apache.logging.log4j.core.junit.JndiRule;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.JndiRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.StructuredDataMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.After;
import org.junit.Before;
import org.junit.ClassRule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderWithPurgingTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderWithPurgingTest.java
index 373820b..692c839 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderWithPurgingTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingAppenderWithPurgingTest.java
@@ -28,9 +28,9 @@ import java.util.Set;
import org.apache.logging.log4j.EventLogger;
import org.apache.logging.log4j.core.LogEvent;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.StructuredDataMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.After;
import org.junit.Before;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingDefaultAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingDefaultAppenderTest.java
index a40403c..f949bd8 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingDefaultAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/routing/RoutingDefaultAppenderTest.java
@@ -24,7 +24,7 @@ import java.util.List;
import org.apache.logging.log4j.EventLogger;
import org.apache.logging.log4j.core.LogEvent;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AbstractAsyncThreadContextTestBase.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AbstractAsyncThreadContextTestBase.java
index a590c2d..65c46f0 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AbstractAsyncThreadContextTestBase.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AbstractAsyncThreadContextTestBase.java
@@ -24,7 +24,7 @@ import java.io.IOException;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.ThreadContext;
-import org.apache.logging.log4j.ThreadContextTestAccess;
+import org.apache.logging.log4j.core.ThreadContextTestAccess;
import org.apache.logging.log4j.core.CoreLoggerContexts;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.jmx.RingBufferAdmin;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncAppenderExceptionHandlingTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncAppenderExceptionHandlingTest.java
index 164bdca..f2fb904 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncAppenderExceptionHandlingTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncAppenderExceptionHandlingTest.java
@@ -25,7 +25,7 @@ import org.apache.logging.log4j.core.config.AppenderControl;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.config.Configurator;
import org.apache.logging.log4j.message.Message;
-import org.apache.logging.log4j.test.appender.FailOnceAppender;
+import org.apache.logging.log4j.core.test.appender.FailOnceAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.params.ParameterizedTest;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggersWithAsyncAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggersWithAsyncAppenderTest.java
index d3ad6dc..c00d8d6 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggersWithAsyncAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggersWithAsyncAppenderTest.java
@@ -21,7 +21,7 @@ import java.util.List;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.ClassRule;
import org.junit.Test;
import org.junit.experimental.categories.Category;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggersWithAsyncLoggerConfigTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggersWithAsyncLoggerConfigTest.java
index 8360c9e..1204eb9 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggersWithAsyncLoggerConfigTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncLoggersWithAsyncLoggerConfigTest.java
@@ -21,7 +21,7 @@ import java.util.List;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.ClassRule;
import org.junit.Test;
import org.junit.experimental.categories.Category;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncRootReloadTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncRootReloadTest.java
index 8e37394..e292649 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncRootReloadTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/AsyncRootReloadTest.java
@@ -25,7 +25,7 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.util.FileUtils;
import org.apache.logging.log4j.test.junit.CleanFiles;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.ClassRule;
import org.junit.Test;
import org.junit.experimental.categories.Category;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/BasicAsyncLoggerContextSelectorTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/BasicAsyncLoggerContextSelectorTest.java
index 823cc3f..77d121c 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/BasicAsyncLoggerContextSelectorTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/BasicAsyncLoggerContextSelectorTest.java
@@ -17,7 +17,7 @@
package org.apache.logging.log4j.core.async;
import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.categories.AsyncLoggers;
+import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.LifeCycle;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.util.Constants;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688AsyncTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688AsyncTest.java
index e8b2896..29573b7 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688AsyncTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688AsyncTest.java
@@ -25,9 +25,9 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.spi.ExtendedLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.AfterClass;
import org.junit.Assert;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688Test.java
index a885e29..2d964b2 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/Log4j2Jira1688Test.java
@@ -25,9 +25,9 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.spi.ExtendedLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.AfterClass;
import org.junit.Assert;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncAppenderTest.java
index d949254..350383c 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncAppenderTest.java
@@ -23,7 +23,7 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.ParameterizedMessage;
import org.junit.Before;
import org.junit.BeforeClass;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncAppenderTest2.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncAppenderTest2.java
index 311a479..a085ed0 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncAppenderTest2.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncAppenderTest2.java
@@ -22,7 +22,7 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigLoggingFromToStringTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigLoggingFromToStringTest.java
index a849c21..da79dd1 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigLoggingFromToStringTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigLoggingFromToStringTest.java
@@ -25,7 +25,7 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.status.StatusData;
import org.apache.logging.log4j.status.StatusLogger;
import org.junit.Before;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigLoggingFromToStringTest2.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigLoggingFromToStringTest2.java
index a36125f..8903ff4 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigLoggingFromToStringTest2.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigLoggingFromToStringTest2.java
@@ -22,7 +22,7 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigTest.java
index 1b977f8..664e328 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigTest.java
@@ -23,7 +23,7 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.ParameterizedMessage;
import org.junit.Before;
import org.junit.BeforeClass;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigTest2.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigTest2.java
index 43ce2de..9cb685e 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigTest2.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerConfigTest2.java
@@ -22,7 +22,7 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerLoggingFromToStringTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerLoggingFromToStringTest.java
index 7d29076..ba5c5cf 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerLoggingFromToStringTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerLoggingFromToStringTest.java
@@ -25,7 +25,7 @@ import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.CoreLoggerContexts;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.ParameterizedMessage;
import org.apache.logging.log4j.util.Strings;
import org.junit.AfterClass;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerLoggingFromToStringTest2.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerLoggingFromToStringTest2.java
index 96384cc..11c9ffa 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerLoggingFromToStringTest2.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerLoggingFromToStringTest2.java
@@ -25,7 +25,7 @@ import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.CoreLoggerContexts;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.ParameterizedMessage;
import org.apache.logging.log4j.util.Strings;
import org.junit.AfterClass;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest.java
index af1bba4..954d606 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest.java
@@ -24,7 +24,7 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.ParameterizedMessage;
import org.apache.logging.log4j.util.Strings;
import org.junit.AfterClass;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest2.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest2.java
index 1840832..1a454f2 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest2.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest2.java
@@ -23,7 +23,7 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.util.Strings;
import org.junit.AfterClass;
import org.junit.Before;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest3.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest3.java
index 12024ad..5a44021 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest3.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/async/QueueFullAsyncLoggerTest3.java
@@ -22,7 +22,7 @@ import org.apache.logging.log4j.core.categories.AsyncLoggers;
import org.apache.logging.log4j.core.GarbageCollectionHelper;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.apache.logging.log4j.message.Message;
import org.apache.logging.log4j.util.Strings;
import org.junit.AfterClass;
@@ -128,4 +128,4 @@ public class QueueFullAsyncLoggerTest3 extends QueueFullAbstractTest {
super.finalize();
}
}
-}
\ No newline at end of file
+}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/categories/PerformanceTests.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/categories/GarbageFree.java
similarity index 83%
rename from log4j-core/src/test/java/org/apache/logging/log4j/categories/PerformanceTests.java
rename to log4j-core/src/test/java/org/apache/logging/log4j/core/categories/GarbageFree.java
index fb6eecf..9ed41a1 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/categories/PerformanceTests.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/categories/GarbageFree.java
@@ -15,10 +15,10 @@
* limitations under the license.
*/
-package org.apache.logging.log4j.categories;
+package org.apache.logging.log4j.core.categories;
/**
- * JUnit category to indicate a test is primarily for testing performance.
+ * JUnit category to indicate a test is for Garbage Free Validation.
*/
-public interface PerformanceTests {
+public interface GarbageFree {
}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/AppenderControlArraySetTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/AppenderControlArraySetTest.java
index d102cfa..e75dd24 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/AppenderControlArraySetTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/AppenderControlArraySetTest.java
@@ -18,7 +18,7 @@ package org.apache.logging.log4j.core.config;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.core.Appender;
-import org.apache.logging.log4j.test.appender.FailOnceAppender;
+import org.apache.logging.log4j.core.test.appender.FailOnceAppender;
import org.junit.jupiter.api.Test;
import java.util.HashMap;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/CompositeConfigurationTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/CompositeConfigurationTest.java
index 3db6ce0..6d1639a 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/CompositeConfigurationTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/CompositeConfigurationTest.java
@@ -27,7 +27,7 @@ import org.apache.logging.log4j.core.appender.FileAppender;
import org.apache.logging.log4j.core.config.composite.CompositeConfiguration;
import org.apache.logging.log4j.core.filter.RegexFilter;
import org.apache.logging.log4j.core.util.Throwables;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Assert;
import org.junit.Test;
import org.junit.runner.Description;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ConfigurationFactoryTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ConfigurationFactoryTest.java
index bc1958a..6db5c0f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ConfigurationFactoryTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ConfigurationFactoryTest.java
@@ -25,7 +25,7 @@ import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.ConsoleAppender;
import org.apache.logging.log4j.core.filter.ThreadContextMapFilter;
import org.apache.logging.log4j.test.junit.CleanUpFiles;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/CustomConfigurationTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/CustomConfigurationTest.java
index 41c04a0..d3a2665 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/CustomConfigurationTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/CustomConfigurationTest.java
@@ -24,7 +24,7 @@ import org.apache.logging.log4j.core.appender.FileAppender;
import org.apache.logging.log4j.core.config.xml.XmlConfiguration;
import org.apache.logging.log4j.core.layout.PatternLayout;
import org.apache.logging.log4j.test.junit.CleanUpFiles;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.status.StatusConsoleListener;
import org.apache.logging.log4j.status.StatusListener;
import org.apache.logging.log4j.status.StatusLogger;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/FileOutputTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/FileOutputTest.java
index 5b8a732..9479965 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/FileOutputTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/FileOutputTest.java
@@ -17,7 +17,7 @@
package org.apache.logging.log4j.core.config;
import org.apache.logging.log4j.test.junit.CleanUpFiles;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Test;
import java.io.IOException;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/JiraLog4j2_2134Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/JiraLog4j2_2134Test.java
index e9bae4f..d677b63 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/JiraLog4j2_2134Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/JiraLog4j2_2134Test.java
@@ -24,7 +24,7 @@ import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.FileAppender;
import org.apache.logging.log4j.core.layout.PatternLayout;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Test;
import org.junit.jupiter.api.Tag;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/LoggersPluginTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/LoggersPluginTest.java
index 0c06e97..1377940 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/LoggersPluginTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/LoggersPluginTest.java
@@ -20,7 +20,7 @@ package org.apache.logging.log4j.core.config;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.status.StatusData;
import org.apache.logging.log4j.status.StatusLogger;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/MissingRootLoggerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/MissingRootLoggerTest.java
index a4d11db..c4e69a2 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/MissingRootLoggerTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/MissingRootLoggerTest.java
@@ -22,10 +22,10 @@ import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Test;
-import static org.apache.logging.log4j.core.hamcrest.MapMatchers.hasSize;
+import static org.apache.logging.log4j.core.test.hamcrest.MapMatchers.hasSize;
import static org.hamcrest.MatcherAssert.*;
import static org.hamcrest.Matchers.hasKey;
import static org.hamcrest.Matchers.instanceOf;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/MultipleTriggeringPolicyTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/MultipleTriggeringPolicyTest.java
index d73fefe..89de53a 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/MultipleTriggeringPolicyTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/MultipleTriggeringPolicyTest.java
@@ -22,7 +22,7 @@ import org.apache.logging.log4j.core.appender.rolling.CompositeTriggeringPolicy;
import org.apache.logging.log4j.core.appender.rolling.SizeBasedTriggeringPolicy;
import org.apache.logging.log4j.core.appender.rolling.TimeBasedTriggeringPolicy;
import org.apache.logging.log4j.core.appender.rolling.TriggeringPolicy;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/PropertyTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/PropertyTest.java
index 6cd1213..ff08c3b 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/PropertyTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/PropertyTest.java
@@ -18,9 +18,9 @@ package org.apache.logging.log4j.core.config;/*
import java.util.List;
import org.apache.logging.log4j.LogManager;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ReconfigurationDeadlockTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ReconfigurationDeadlockTest.java
index 6849734..c60a4d6 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ReconfigurationDeadlockTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ReconfigurationDeadlockTest.java
@@ -27,7 +27,7 @@ import org.apache.logging.log4j.core.appender.AbstractAppender;
import org.apache.logging.log4j.core.config.plugins.PluginAttribute;
import org.apache.logging.log4j.core.config.plugins.PluginElement;
import org.apache.logging.log4j.core.config.plugins.PluginFactory;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.plugins.Plugin;
import org.apache.logging.log4j.plugins.validation.constraints.Required;
import org.junit.jupiter.api.AfterEach;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ReliabilityStrategyTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ReliabilityStrategyTest.java
index 6a23135..fc7f0a9 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ReliabilityStrategyTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/ReliabilityStrategyTest.java
@@ -18,8 +18,8 @@
package org.apache.logging.log4j.core.config;
import org.apache.logging.log4j.core.appender.AsyncAppender;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/TestConfigurator.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/TestConfigurator.java
index 12ae352..c592236 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/TestConfigurator.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/TestConfigurator.java
@@ -43,7 +43,7 @@ import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
-import static org.apache.logging.log4j.core.hamcrest.MapMatchers.hasSize;
+import static org.apache.logging.log4j.core.test.hamcrest.MapMatchers.hasSize;
import static org.hamcrest.MatcherAssert.*;
import static org.hamcrest.Matchers.equalTo;
import static org.hamcrest.Matchers.greaterThan;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/BasicArbiterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/BasicArbiterTest.java
index 5ec1b3e..530bf20 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/BasicArbiterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/BasicArbiterTest.java
@@ -20,7 +20,7 @@ import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.ConsoleAppender;
import org.apache.logging.log4j.core.config.Configurator;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/ScriptArbiterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/ScriptArbiterTest.java
index 55763fe..e4a145f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/ScriptArbiterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/ScriptArbiterTest.java
@@ -20,7 +20,7 @@ import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.ConsoleAppender;
import org.apache.logging.log4j.core.config.Configurator;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/SelectArbiterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/SelectArbiterTest.java
index 1b7ea9d..443a386 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/SelectArbiterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/arbiters/SelectArbiterTest.java
@@ -20,7 +20,7 @@ import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.ConsoleAppender;
import org.apache.logging.log4j.core.config.Configurator;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/LegacyPluginTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/LegacyPluginTest.java
index c28fc23..0310331 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/LegacyPluginTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/LegacyPluginTest.java
@@ -20,7 +20,7 @@ import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.Layout;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.config.xml.XmlConfiguration;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Test;
import java.util.Map;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/util/PluginManagerPackagesTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/util/PluginManagerPackagesTest.java
index a6d9750..326b3bc 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/util/PluginManagerPackagesTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/util/PluginManagerPackagesTest.java
@@ -19,6 +19,7 @@ package org.apache.logging.log4j.core.config.plugins.util;
import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
+import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Locale;
@@ -37,13 +38,14 @@ import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.config.Configurator;
import org.apache.logging.log4j.status.StatusLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
public class PluginManagerPackagesTest {
+ private static final String TEST_SOURCE = "target/test-classes/customPlugin/FixedStringLayout.java";
private static Configuration config;
private static ListAppender listAppender;
private static LoggerContext ctx;
@@ -51,17 +53,32 @@ public class PluginManagerPackagesTest {
@AfterAll
public static void cleanupClass() {
System.clearProperty(ConfigurationFactory.CONFIGURATION_FILE_PROPERTY);
- ctx.reconfigure();
+ if (ctx != null) {
+ ctx.reconfigure();
+ }
StatusLogger.getLogger().reset();
}
+ @AfterAll
+ public static void afterClass() {
+ File file = new File(TEST_SOURCE);
+ File parent = file.getParentFile();
+ if (file.exists()) {
+ file.delete();
+ }
+ file = new File(parent, "FixedStringLayout.class");
+ if (file.exists()) {
+ file.delete();
+ }
+ }
+
@Test
public void test() throws Exception {
// To ensure our custom plugin is NOT included in the log4j plugin metadata file,
// we make sure the class does not exist until after the build is finished.
// So we don't create the custom plugin class until this test is run.
- final File orig = new File("target/test-classes/customplugin/FixedStringLayout.java.source");
+ final File orig = new File(TEST_SOURCE + ".source");
final File f = new File(orig.getParentFile(), "FixedStringLayout.java");
assertTrue(orig.renameTo(f), "renamed source file failed");
compile(f);
@@ -92,10 +109,10 @@ public class PluginManagerPackagesTest {
try (final StandardJavaFileManager fileManager = compiler.getStandardFileManager(diagnostics, null, null)) {
final Iterable<? extends JavaFileObject> compilationUnits = fileManager.getJavaFileObjectsFromFiles(
Collections.singletonList(f));
-
+ List<String> options =
+ new ArrayList<>(Arrays.asList("-classpath", System.getProperty("jdk.module.path")));
+ options.add("-proc:none");
// compile generated source
- // (switch off annotation processing: no need to create Log4j2Plugins.dat)
- final List<String> options = Collections.singletonList("-proc:none");
compiler.getTask(null, fileManager, diagnostics, options, null, compilationUnits).call();
// check we don't have any compilation errors
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationTest.java
index c515fec..52c62ef 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/properties/PropertiesConfigurationTest.java
@@ -25,7 +25,7 @@ import org.apache.logging.log4j.core.LifeCycle;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.config.LoggerConfig;
import org.apache.logging.log4j.core.filter.ThresholdFilter;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Test;
import java.util.Map;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/xml/XmlLoggerPropsTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/xml/XmlLoggerPropsTest.java
index 674eaa4..7dfe550 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/xml/XmlLoggerPropsTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/xml/XmlLoggerPropsTest.java
@@ -17,9 +17,9 @@
package org.apache.logging.log4j.core.config.xml;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/AbstractScriptFilterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/AbstractScriptFilterTest.java
index fc77496..8b98d83 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/AbstractScriptFilterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/AbstractScriptFilterTest.java
@@ -21,9 +21,9 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.ThreadContext;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.Named;
+import org.apache.logging.log4j.core.test.junit.Named;
import org.apache.logging.log4j.test.junit.UsingThreadContextMap;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/BurstFilterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/BurstFilterTest.java
index 309715e..1cc0ef7 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/BurstFilterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/BurstFilterTest.java
@@ -21,9 +21,9 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/DynamicThresholdFilterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/DynamicThresholdFilterTest.java
index 99374b8..6296b77 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/DynamicThresholdFilterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/DynamicThresholdFilterTest.java
@@ -23,7 +23,7 @@ import org.apache.logging.log4j.core.LogEvent;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.impl.Log4jLogEvent;
import org.apache.logging.log4j.core.util.KeyValuePair;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.test.junit.UsingThreadContextMap;
import org.apache.logging.log4j.message.SimpleMessage;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/MapFilterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/MapFilterTest.java
index 95456c5..041816f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/MapFilterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/MapFilterTest.java
@@ -27,10 +27,10 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.Filter;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.util.KeyValuePair;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
import org.apache.logging.log4j.message.StringMapMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.IndexedReadOnlyStringMap;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFileFilterPropertiesTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFileFilterPropertiesTest.java
index 1364619..1afc3c0 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFileFilterPropertiesTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFileFilterPropertiesTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.logging.log4j.core.filter;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
@LoggerContextSource("log4j-scriptFile-filters.properties")
public class ScriptFileFilterPropertiesTest extends AbstractScriptFilterTest {
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFileFilterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFileFilterTest.java
index 97fe6d2..fca3e96 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFileFilterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFileFilterTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.logging.log4j.core.filter;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
@LoggerContextSource("log4j-scriptFile-filters.xml")
public class ScriptFileFilterTest extends AbstractScriptFilterTest {
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFilterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFilterTest.java
index be25741..368d438 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFilterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptFilterTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.logging.log4j.core.filter;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
@LoggerContextSource("log4j-script-filters.xml")
public class ScriptFilterTest extends AbstractScriptFilterTest {
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptRefFilterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptRefFilterTest.java
index 93131a4..9a07f24 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptRefFilterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/ScriptRefFilterTest.java
@@ -16,7 +16,7 @@
*/
package org.apache.logging.log4j.core.filter;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
@LoggerContextSource("log4j-scriptRef-filters.xml")
public class ScriptRefFilterTest extends AbstractScriptFilterTest {
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/StructuredDataFilterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/StructuredDataFilterTest.java
index ca3b892..db306f3 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/StructuredDataFilterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/filter/StructuredDataFilterTest.java
@@ -22,7 +22,7 @@ import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.core.Filter;
import org.apache.logging.log4j.core.config.Configuration;
import org.apache.logging.log4j.core.util.KeyValuePair;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.apache.logging.log4j.util.IndexedReadOnlyStringMap;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/hamcrest/FileMatchers.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/hamcrest/FileMatchers.java
deleted file mode 100644
index 581ac40..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/hamcrest/FileMatchers.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.logging.log4j.core.hamcrest;
-
-import java.io.File;
-
-import org.hamcrest.FeatureMatcher;
-import org.hamcrest.Matcher;
-
-import static org.hamcrest.core.Is.is;
-import static org.hamcrest.core.IsEqual.equalTo;
-import static org.hamcrest.number.OrderingComparison.greaterThan;
-import static org.hamcrest.number.OrderingComparison.lessThanOrEqualTo;
-
-/**
- * Hamcrest Matchers that operate on File objects.
- *
- * @since 2.1
- */
-public final class FileMatchers {
-
- /**
- * Matches if the File exists.
- *
- * @return the Matcher.
- */
- public static Matcher<File> exists() {
- return new FeatureMatcher<File, Boolean>(is(true), "file exists", "file exists") {
- @Override
- protected Boolean featureValueOf(final File actual) {
- return actual.exists();
- }
- };
- }
-
- /**
- * Matches a Long Matcher against the file length.
- *
- * @param matcher the Matcher to use on the File length.
- * @return the Matcher.
- */
- public static Matcher<File> hasLength(final Matcher<Long> matcher) {
- return new FeatureMatcher<File, Long>(matcher, "file with size", "file with size") {
- @Override
- protected Long featureValueOf(final File actual) {
- return actual.length();
- }
- };
- }
-
- /**
- * Matches a specific file length.
- *
- * @param length the file length to match
- * @param <T> the type of the length.
- * @return the Matcher.
- */
- public static <T extends Number> Matcher<File> hasLength(final T length) {
- return hasLength(equalTo(length.longValue()));
- }
-
- /**
- * Matches a specific file length.
- *
- * @param length the file length to match
- * @return the Matcher.
- */
- public static Matcher<File> hasLength(final long length) {
- return hasLength(equalTo(length));
- }
-
- /**
- * Matches a file with length equal to zero.
- *
- * @return the Matcher.
- */
- public static Matcher<File> isEmpty() {
- return hasLength(0L);
- }
-
- /**
- * Matches against a file's last modification time in milliseconds.
- *
- * @param matcher the Matcher to use on the File modification time.
- * @return the Matcher.
- */
- public static Matcher<File> lastModified(final Matcher<Long> matcher) {
- return new FeatureMatcher<File, Long>(matcher, "was last modified", "was last modified") {
- @Override
- protected Long featureValueOf(final File actual) {
- return actual.lastModified();
- }
- };
- }
-
- /**
- * Matches a time in millis before the current time.
- *
- * @return the Matcher.
- */
- public static Matcher<Long> beforeNow() {
- return lessThanOrEqualTo(System.currentTimeMillis());
- }
-
- /**
- * Matches the number of files in a directory.
- *
- * @param matcher the Matcher to use on the number of files.
- * @return the Matcher.
- */
- public static Matcher<File> hasNumberOfFiles(final Matcher<Integer> matcher) {
- return new FeatureMatcher<File, Integer>(matcher, "directory with number of files",
- "directory with number of files") {
- @Override
- protected Integer featureValueOf(final File actual) {
- final File[] files = actual.listFiles();
- return files == null ? 0 : files.length;
- }
- };
- }
-
- /**
- * Matches a directory with at least one file.
- *
- * @return the Matcher.
- */
- public static Matcher<File> hasFiles() {
- return hasNumberOfFiles(greaterThan(0));
- }
-
- /**
- * Matches a file name.
- *
- * @param matcher the Matcher to use on the file name.
- * @return the Matcher.
- */
- public static Matcher<File> hasName(final Matcher<String> matcher) {
- return new FeatureMatcher<File, String>(matcher, "file named", "file named") {
- @Override
- protected String featureValueOf(final File actual) {
- return actual.getName();
- }
- };
- }
-
- private FileMatchers() {
- }
-
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ContextDataFactoryPropertySetMissingConstructorTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ContextDataFactoryPropertySetMissingConstructorTest.java
index 13a39ed..3cf5b12 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ContextDataFactoryPropertySetMissingConstructorTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ContextDataFactoryPropertySetMissingConstructorTest.java
@@ -33,9 +33,7 @@ public class ContextDataFactoryPropertySetMissingConstructorTest {
System.setProperty("log4j2.ContextData", FactoryTestStringMapWithoutIntConstructor.class.getName());
assertTrue(ContextDataFactory.createContextData(2) instanceof SortedArrayStringMap);
final SortedArrayStringMap actual = (SortedArrayStringMap) ContextDataFactory.createContextData(2);
- final Field thresholdField = SortedArrayStringMap.class.getDeclaredField("threshold");
- thresholdField.setAccessible(true);
- assertEquals(2, thresholdField.getInt(actual));
+ assertEquals(2, actual.getThreshold());
System.clearProperty("log4j2.ContextData");
}
}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ContextDataFactoryTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ContextDataFactoryTest.java
index 24fce8f..fa33262 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ContextDataFactoryTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/ContextDataFactoryTest.java
@@ -40,8 +40,6 @@ public class ContextDataFactoryTest {
@Test
public void intArgSetsCapacityIfNoPropertySpecified() throws Exception {
final SortedArrayStringMap actual = (SortedArrayStringMap) ContextDataFactory.createContextData(2);
- final Field thresholdField = SortedArrayStringMap.class.getDeclaredField("threshold");
- thresholdField.setAccessible(true);
- assertEquals(2, thresholdField.getInt(actual));
+ assertEquals(2, actual.getThreshold());
}
}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/NestedLoggingFromThrowableMessageTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/NestedLoggingFromThrowableMessageTest.java
index 59afd62..228cd4f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/NestedLoggingFromThrowableMessageTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/NestedLoggingFromThrowableMessageTest.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.core.impl;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.CoreLoggerContexts;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/NestedLoggingFromToStringTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/NestedLoggingFromToStringTest.java
index 6563eff..2e7246c 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/NestedLoggingFromToStringTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/impl/NestedLoggingFromToStringTest.java
@@ -20,8 +20,8 @@ import java.util.List;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Rule;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/ConfigurationResolver.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/ConfigurationResolver.java
deleted file mode 100644
index bb713f1..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/ConfigurationResolver.java
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-package org.apache.logging.log4j.core.junit;
-
-import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.config.Configuration;
-import org.junit.jupiter.api.extension.ExtensionContext;
-import org.junit.jupiter.api.extension.ParameterContext;
-import org.junit.jupiter.api.extension.ParameterResolutionException;
-import org.junit.jupiter.api.extension.support.TypeBasedParameterResolver;
-
-import static org.apache.logging.log4j.core.junit.LoggerContextResolver.getParameterLoggerContext;
-
-class ConfigurationResolver extends TypeBasedParameterResolver<Configuration> {
- @Override
- public Configuration resolveParameter(
- ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException {
- final LoggerContext loggerContext = getParameterLoggerContext(parameterContext, extensionContext);
- if (loggerContext == null) {
- throw new ParameterResolutionException("No LoggerContext defined");
- }
- return loggerContext.getConfiguration();
- }
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/LoggerContextResolver.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/LoggerContextResolver.java
deleted file mode 100644
index 11193d5..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/LoggerContextResolver.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-package org.apache.logging.log4j.core.junit;
-
-import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.LoggerContextAccessor;
-import org.apache.logging.log4j.core.config.Configurator;
-import org.junit.jupiter.api.extension.AfterAllCallback;
-import org.junit.jupiter.api.extension.AfterEachCallback;
-import org.junit.jupiter.api.extension.BeforeAllCallback;
-import org.junit.jupiter.api.extension.BeforeEachCallback;
-import org.junit.jupiter.api.extension.ExtensionContext;
-import org.junit.jupiter.api.extension.ParameterContext;
-import org.junit.jupiter.api.extension.ParameterResolutionException;
-import org.junit.jupiter.api.extension.support.TypeBasedParameterResolver;
-
-import java.lang.reflect.Method;
-import java.util.concurrent.TimeUnit;
-
-class LoggerContextResolver extends TypeBasedParameterResolver<LoggerContext> implements BeforeAllCallback,
- AfterAllCallback, BeforeEachCallback, AfterEachCallback {
- @Override
- public void beforeAll(ExtensionContext context) throws Exception {
- final Class<?> testClass = context.getRequiredTestClass();
- final LoggerContextSource testSource = testClass.getAnnotation(LoggerContextSource.class);
- if (testSource != null) {
- final LoggerContextConfig config = new LoggerContextConfig(testSource, context);
- getTestClassStore(context).put(LoggerContext.class, config);
- }
- }
-
- @Override
- public void afterAll(ExtensionContext context) throws Exception {
- final LoggerContextConfig config =
- getTestClassStore(context).get(LoggerContext.class, LoggerContextConfig.class);
- if (config != null) {
- config.close();
- }
- }
-
- @Override
- public void beforeEach(ExtensionContext context) throws Exception {
- final Class<?> testClass = context.getRequiredTestClass();
- if (testClass.isAnnotationPresent(LoggerContextSource.class)) {
- final LoggerContextConfig config = getTestClassStore(context).get(LoggerContext.class, LoggerContextConfig.class);
- if (config == null) {
- throw new IllegalStateException(
- "Specified @LoggerContextSource but no LoggerContext found for test class " +
- testClass.getCanonicalName());
- }
- if (config.reconfigurationPolicy == ReconfigurationPolicy.BEFORE_EACH) {
- config.reconfigure();
- }
- }
- final LoggerContextSource source = context.getRequiredTestMethod().getAnnotation(LoggerContextSource.class);
- if (source != null) {
- final LoggerContextConfig config = new LoggerContextConfig(source, context);
- if (config.reconfigurationPolicy == ReconfigurationPolicy.BEFORE_EACH) {
- config.reconfigure();
- }
- getTestInstanceStore(context).put(LoggerContext.class, config);
- }
- }
-
- @Override
- public void afterEach(ExtensionContext context) throws Exception {
- // method-annotated variant
- final LoggerContextConfig testInstanceConfig =
- getTestInstanceStore(context).get(LoggerContext.class, LoggerContextConfig.class);
- if (testInstanceConfig != null) {
- testInstanceConfig.close();
- }
- // reloadable variant
- final Class<?> testClass = context.getRequiredTestClass();
- if (testClass.isAnnotationPresent(LoggerContextSource.class)) {
- final LoggerContextConfig config = getTestClassStore(context).get(LoggerContext.class, LoggerContextConfig.class);
- if (config == null) {
- throw new IllegalStateException(
- "Specified @LoggerContextSource but no LoggerContext found for test class " +
- testClass.getCanonicalName());
- }
- if (config.reconfigurationPolicy == ReconfigurationPolicy.AFTER_EACH) {
- config.reconfigure();
- }
- }
- }
-
- @Override
- public LoggerContext resolveParameter(
- ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException {
- return getParameterLoggerContext(parameterContext, extensionContext);
- }
-
- private static ExtensionContext.Store getTestClassStore(final ExtensionContext context) {
- return context.getStore(ExtensionContext.Namespace.create(LoggerContext.class, context.getRequiredTestClass()));
- }
-
- private static ExtensionContext.Store getTestInstanceStore(final ExtensionContext context) {
- return context.getStore(ExtensionContext.Namespace.create(LoggerContext.class, context.getRequiredTestInstance()));
- }
-
- static LoggerContext getParameterLoggerContext(ParameterContext parameterContext, ExtensionContext extensionContext) {
- if (parameterContext.getDeclaringExecutable() instanceof Method) {
- final LoggerContextAccessor accessor =
- getTestInstanceStore(extensionContext).get(LoggerContext.class, LoggerContextAccessor.class);
- return accessor != null ? accessor.getLoggerContext() :
- getTestClassStore(extensionContext).get(LoggerContext.class, LoggerContextAccessor.class).getLoggerContext();
- }
- return getTestClassStore(extensionContext).get(LoggerContext.class, LoggerContextAccessor.class).getLoggerContext();
- }
-
- private static class LoggerContextConfig implements AutoCloseable, LoggerContextAccessor {
- private final LoggerContext context;
- private final ReconfigurationPolicy reconfigurationPolicy;
- private final long shutdownTimeout;
- private final TimeUnit unit;
-
- private LoggerContextConfig(final LoggerContextSource source, final ExtensionContext extensionContext) {
- final String displayName = extensionContext.getDisplayName();
- final ClassLoader classLoader = extensionContext.getRequiredTestClass().getClassLoader();
- context = Configurator.initialize(displayName, classLoader, source.value());
- reconfigurationPolicy = source.reconfigure();
- shutdownTimeout = source.timeout();
- unit = source.unit();
- }
-
- @Override
- public LoggerContext getLoggerContext() {
- return context;
- }
-
- public void reconfigure() {
- context.reconfigure();
- }
-
- @Override
- public void close() {
- context.stop(shutdownTimeout, unit);
- }
- }
-
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/Named.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/Named.java
deleted file mode 100644
index c8477ae..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/Named.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-package org.apache.logging.log4j.core.junit;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-
-/**
- * Specifies the name of an {@link org.apache.logging.log4j.core.Appender} to inject into JUnit 5 tests from the specified
- * configuration.
- *
- * @see LoggerContextSource
- * @since 2.14.0
- */
-@Retention(RetentionPolicy.RUNTIME)
-@Target(ElementType.PARAMETER)
-@Documented
-public @interface Named {
- /**
- * Specifies the name of the configuration item to inject. If blank, uses the name of the annotated parameter.
- */
- String value() default "";
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/ReconfigurationPolicy.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/ReconfigurationPolicy.java
deleted file mode 100644
index 14c5976..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/junit/ReconfigurationPolicy.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-package org.apache.logging.log4j.core.junit;
-
-import org.apache.logging.log4j.core.LoggerContext;
-
-/**
- * Indicates when to {@linkplain LoggerContext#reconfigure() reconfigure} the logging system during unit tests.
- *
- * @see LoggerContextSource
- * @since 2.14.0
- */
-public enum ReconfigurationPolicy {
- /** Performs no reconfiguration of the logging system for the entire run of tests in a test class. This is the default. */
- NEVER,
- /** Performs a reconfiguration before executing each test. */
- BEFORE_EACH,
- /** Performs a reconfiguration after executing each test. */
- AFTER_EACH
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/ConcurrentLoggingWithGelfLayoutTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/ConcurrentLoggingWithGelfLayoutTest.java
index cbf2f72..6eafb87 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/ConcurrentLoggingWithGelfLayoutTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/ConcurrentLoggingWithGelfLayoutTest.java
@@ -18,7 +18,7 @@ package org.apache.logging.log4j.core.layout;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayout2Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayout2Test.java
index df9f7f5..897e99c 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayout2Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayout2Test.java
@@ -23,9 +23,9 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.lookup.JavaLookup;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayout3Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayout3Test.java
index 642de54..cf430db 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayout3Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayout3Test.java
@@ -21,11 +21,11 @@ import com.fasterxml.jackson.databind.ObjectMapper;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.ThreadContext;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
import org.apache.logging.log4j.test.junit.UsingAnyThreadContext;
import org.apache.logging.log4j.message.StringMapMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutPatternSelectorTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutPatternSelectorTest.java
index bb01925..042c4ef 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutPatternSelectorTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutPatternSelectorTest.java
@@ -21,11 +21,11 @@ import java.io.IOException;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.ThreadContext;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
import org.apache.logging.log4j.test.junit.UsingAnyThreadContext;
import org.apache.logging.log4j.spi.AbstractLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutTest.java
index 55f59d9..dbdc7f9 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/GelfLayoutTest.java
@@ -27,8 +27,8 @@ import org.apache.logging.log4j.core.lookup.JavaLookup;
import org.apache.logging.log4j.core.util.KeyValuePair;
import org.apache.logging.log4j.core.util.NetUtils;
import org.apache.logging.log4j.test.junit.UsingAnyThreadContext;
-import org.apache.logging.log4j.test.appender.EncodingListAppender;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.EncodingListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/HtmlLayoutTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/HtmlLayoutTest.java
index 7442181..54d3347 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/HtmlLayoutTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/HtmlLayoutTest.java
@@ -46,7 +46,7 @@ import org.apache.logging.log4j.core.time.internal.format.FixedDateFormat;
import org.apache.logging.log4j.test.junit.UsingAnyThreadContext;
import org.apache.logging.log4j.message.Message;
import org.apache.logging.log4j.message.SimpleMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/Log4j2_2195_Test.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/Log4j2_2195_Test.java
index ebc8739..42c3b97 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/Log4j2_2195_Test.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/Log4j2_2195_Test.java
@@ -23,9 +23,9 @@ import java.util.List;
import org.apache.logging.log4j.core.Layout;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.layout.AbstractStringLayout.Serializer;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutLookupDateTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutLookupDateTest.java
index 31548dd..c1ea78f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutLookupDateTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutLookupDateTest.java
@@ -17,9 +17,9 @@
package org.apache.logging.log4j.core.layout;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.assertFalse;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutMainMapLookupTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutMainMapLookupTest.java
index 9d7bc4b..d7416da 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutMainMapLookupTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutMainMapLookupTest.java
@@ -21,10 +21,10 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.FileAppender;
import org.apache.logging.log4j.core.lookup.MainMapLookup;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.core.junit.ReconfigurationPolicy;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.junit.ReconfigurationPolicy;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import java.util.List;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutNoLookupDateTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutNoLookupDateTest.java
index c66d66b..5949cc8 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutNoLookupDateTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutNoLookupDateTest.java
@@ -17,9 +17,9 @@
package org.apache.logging.log4j.core.layout;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutRepeatTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutRepeatTest.java
index 9bf775d..217c878 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutRepeatTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/PatternLayoutRepeatTest.java
@@ -17,9 +17,9 @@
package org.apache.logging.log4j.core.layout;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Assertions;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/Rfc5424LayoutTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/Rfc5424LayoutTest.java
index 54c5a5f..1bce2eb 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/Rfc5424LayoutTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/Rfc5424LayoutTest.java
@@ -35,7 +35,7 @@ import org.apache.logging.log4j.test.junit.UsingAnyThreadContext;
import org.apache.logging.log4j.message.StructuredDataCollectionMessage;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.apache.logging.log4j.status.StatusLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.core.util.ProcessIdUtil;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.AfterAll;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/SyslogLayoutTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/SyslogLayoutTest.java
index dd120ef..94fee40 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/SyslogLayoutTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/layout/SyslogLayoutTest.java
@@ -30,7 +30,7 @@ import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.net.Facility;
import org.apache.logging.log4j.test.junit.UsingAnyThreadContext;
import org.apache.logging.log4j.message.StructuredDataMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/ContextMapLookupTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/ContextMapLookupTest.java
index 59c911e..57421a3 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/ContextMapLookupTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/ContextMapLookupTest.java
@@ -21,7 +21,7 @@ import java.io.File;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.ThreadContext;
-import org.apache.logging.log4j.core.junit.LoggerContextRule;
+import org.apache.logging.log4j.core.test.junit.LoggerContextRule;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.RuleChain;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/InterpolatorTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/InterpolatorTest.java
index 5fa75cf..2cf7c19 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/InterpolatorTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/InterpolatorTest.java
@@ -22,7 +22,7 @@ import java.util.HashMap;
import java.util.Map;
import org.apache.logging.log4j.ThreadContext;
-import org.apache.logging.log4j.core.junit.JndiRule;
+import org.apache.logging.log4j.core.test.junit.JndiRule;
import org.junit.ClassRule;
import org.junit.Test;
import org.junit.rules.ExternalResource;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/JndiLookupTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/JndiLookupTest.java
index 3a8b432..35b6c26 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/JndiLookupTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/JndiLookupTest.java
@@ -21,7 +21,7 @@ import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
-import org.apache.logging.log4j.core.junit.JndiRule;
+import org.apache.logging.log4j.core.test.junit.JndiRule;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/MarkerLookupConfigTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/MarkerLookupConfigTest.java
index 063dbd5..eb9b69f 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/MarkerLookupConfigTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/lookup/MarkerLookupConfigTest.java
@@ -21,7 +21,7 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.Marker;
import org.apache.logging.log4j.MarkerManager;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketMessageLossTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketMessageLossTest.java
index 2d92364..c4eff4d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketMessageLossTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketMessageLossTest.java
@@ -30,8 +30,8 @@ import java.util.concurrent.Future;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.AppenderLoggingException;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketReconnectTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketReconnectTest.java
index cfbd1e8..49336f2 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketReconnectTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketReconnectTest.java
@@ -21,7 +21,7 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.AppenderLoggingException;
import org.apache.logging.log4j.core.config.Configurator;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.AfterEach;
import org.junit.jupiter.api.AfterAll;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketTest.java
index 21a20b9..7f1145d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/net/SocketTest.java
@@ -25,8 +25,8 @@ import java.util.concurrent.Callable;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.AppenderLoggingException;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/CallerInformationTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/CallerInformationTest.java
index 5097d3d..0d676eb 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/CallerInformationTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/CallerInformationTest.java
@@ -20,9 +20,9 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import static org.junit.jupiter.api.Assertions.*;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/DisableAnsiTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/DisableAnsiTest.java
index ce5033c..5c504e5 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/DisableAnsiTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/DisableAnsiTest.java
@@ -18,9 +18,9 @@ package org.apache.logging.log4j.core.pattern;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/ExtendedThrowableTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/ExtendedThrowableTest.java
index 4aba699..e27ce2d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/ExtendedThrowableTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/ExtendedThrowableTest.java
@@ -20,9 +20,9 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageJansiConverterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageJansiConverterTest.java
index c9b922e..f90fe13 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageJansiConverterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageJansiConverterTest.java
@@ -20,9 +20,9 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageStyledConverterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageStyledConverterTest.java
index 82488af..9f3ba88 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageStyledConverterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/MessageStyledConverterTest.java
@@ -20,9 +20,9 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/NoConsoleNoAnsiTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/NoConsoleNoAnsiTest.java
index 60c2b90..b8e2977 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/NoConsoleNoAnsiTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/NoConsoleNoAnsiTest.java
@@ -18,9 +18,9 @@ package org.apache.logging.log4j.core.pattern;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementTest.java
index 152f984..9a2273a 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RegexReplacementTest.java
@@ -18,10 +18,10 @@ package org.apache.logging.log4j.core.pattern;
import org.apache.logging.log4j.ThreadContext;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
import org.apache.logging.log4j.test.junit.UsingThreadContextMap;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RepeatPatternConverterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RepeatPatternConverterTest.java
index eac4c1a..ee1ed34 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RepeatPatternConverterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RepeatPatternConverterTest.java
@@ -48,4 +48,4 @@ public class RepeatPatternConverterTest {
}
-}
\ No newline at end of file
+}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RootThrowableTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RootThrowableTest.java
index 637d75b..3637796 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RootThrowableTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/RootThrowableTest.java
@@ -18,9 +18,9 @@ package org.apache.logging.log4j.core.pattern;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import java.util.List;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/SequenceNumberPatternConverterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/SequenceNumberPatternConverterTest.java
index 2c2c374..a78a444 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/SequenceNumberPatternConverterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/SequenceNumberPatternConverterTest.java
@@ -18,9 +18,9 @@ package org.apache.logging.log4j.core.pattern;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import java.util.List;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/SequenceNumberPatternConverterZeroPaddedTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/SequenceNumberPatternConverterZeroPaddedTest.java
index 2da2996..9ad778c 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/SequenceNumberPatternConverterZeroPaddedTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/SequenceNumberPatternConverterZeroPaddedTest.java
@@ -18,9 +18,9 @@ package org.apache.logging.log4j.core.pattern;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
import java.util.List;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/StyleConverterTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/StyleConverterTest.java
index bf65c23..2e8324d 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/StyleConverterTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/StyleConverterTest.java
@@ -20,9 +20,9 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/ThrowableTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/ThrowableTest.java
index 882b458..5d0c164 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/ThrowableTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/pattern/ThrowableTest.java
@@ -20,9 +20,9 @@ import java.util.List;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
-import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.Named;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.BeforeEach;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/tools/GenerateCustomLoggerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/tools/GenerateCustomLoggerTest.java
index 5cd9080..1db24bd 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/tools/GenerateCustomLoggerTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/tools/GenerateCustomLoggerTest.java
@@ -42,6 +42,7 @@ import org.apache.logging.log4j.message.MessageFactory;
import org.apache.logging.log4j.test.TestLogger;
import org.apache.logging.log4j.util.MessageSupplier;
import org.apache.logging.log4j.util.Supplier;
+import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
@@ -50,21 +51,36 @@ import static org.junit.jupiter.api.Assertions.*;
@Tag("functional")
public class GenerateCustomLoggerTest {
+
+ private static final String TEST_SOURCE = "target/test-classes/org/apache/logging/log4j/core/MyCustomLogger.java";
@BeforeAll
public static void beforeClass() {
System.setProperty("log4j2.loggerContextFactory", "org.apache.logging.log4j.test.TestLoggerContextFactory");
}
+ @AfterAll
+ public static void afterClass() {
+ File file = new File(TEST_SOURCE);
+ File parent = file.getParentFile();
+ if (file.exists()) {
+ file.delete();
+ }
+ file = new File(parent, "MyCustomLogger.class");
+ if (file.exists()) {
+ file.delete();
+ }
+ }
+
@Test
public void testGenerateSource() throws Exception {
- final String CLASSNAME = "org.myorg.MyCustomLogger";
+ final String CLASSNAME = "org.apache.logging.log4j.core.MyCustomLogger";
// generate custom logger source
final List<String> values = Arrays.asList("DEFCON1=350 DEFCON2=450 DEFCON3=550".split(" "));
final List<Generate.LevelInfo> levels = Generate.LevelInfo.parse(values, Generate.CustomLogger.class);
final String src = Generate.generateSource(CLASSNAME, levels, Generate.Type.CUSTOM);
- final File f = new File("target/test-classes/org/myorg/MyCustomLogger.java");
+ final File f = new File(TEST_SOURCE);
f.getParentFile().mkdirs();
try (final FileOutputStream out = new FileOutputStream(f)) {
out.write(src.getBytes(Charset.defaultCharset()));
@@ -77,9 +93,10 @@ public class GenerateCustomLoggerTest {
try (final StandardJavaFileManager fileManager = compiler.getStandardFileManager(diagnostics, null, null)) {
final Iterable<? extends JavaFileObject> compilationUnits = fileManager.getJavaFileObjectsFromFiles(
Collections.singletonList(f));
-
+ List<String> optionList =
+ new ArrayList<>(Arrays.asList("-classpath", System.getProperty("jdk.module.path")));
// compile generated source
- compiler.getTask(null, fileManager, diagnostics, null, null, compilationUnits).call();
+ compiler.getTask(null, fileManager, diagnostics, optionList, null, compilationUnits).call();
// check we don't have any compilation errors
for (final Diagnostic<? extends JavaFileObject> diagnostic : diagnostics.getDiagnostics()) {
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/tools/GenerateExtendedLoggerTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/tools/GenerateExtendedLoggerTest.java
index e9c604d..ae94617 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/tools/GenerateExtendedLoggerTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/tools/GenerateExtendedLoggerTest.java
@@ -19,14 +19,17 @@ package org.apache.logging.log4j.core.tools;
import java.io.File;
import java.io.FileOutputStream;
+import java.lang.module.ModuleReference;
import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.nio.charset.Charset;
+import java.nio.file.Path;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Locale;
+import java.util.Set;
import javax.tools.Diagnostic;
import javax.tools.DiagnosticCollector;
@@ -43,6 +46,7 @@ import org.apache.logging.log4j.spi.ExtendedLogger;
import org.apache.logging.log4j.test.TestLogger;
import org.apache.logging.log4j.util.MessageSupplier;
import org.apache.logging.log4j.util.Supplier;
+import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
@@ -51,27 +55,41 @@ import static org.junit.jupiter.api.Assertions.*;
@Tag("functional")
public class GenerateExtendedLoggerTest {
+
+ private static final String TEST_SOURCE = "target/test-classes/org/apache/logging/log4j/core/MyExtendedLogger.java";
@BeforeAll
public static void beforeClass() {
System.setProperty("log4j2.loggerContextFactory", "org.apache.logging.log4j.test.TestLoggerContextFactory");
}
+ @AfterAll
+ public static void afterClass() {
+ File file = new File(TEST_SOURCE);
+ File parent = file.getParentFile();
+ if (file.exists()) {
+ file.delete();
+ }
+ file = new File(parent, "MyExtendedLogger.class");
+ if (file.exists()) {
+ file.delete();
+ }
+ }
+
@Test
public void testGenerateSource() throws Exception {
- final String CLASSNAME = "org.myorg.MyExtendedLogger";
+ final String CLASSNAME = "org.apache.logging.log4j.core.MyExtendedLogger";
// generate custom logger source
final List<String> values = Arrays.asList("DIAG=350 NOTICE=450 VERBOSE=550".split(" "));
final List<Generate.LevelInfo> levels = Generate.LevelInfo.parse(values, Generate.ExtendedLogger.class);
final String src = Generate.generateSource(CLASSNAME, levels, Generate.Type.EXTEND);
- final File f = new File("target/test-classes/org/myorg/MyExtendedLogger.java");
+ final File f = new File(TEST_SOURCE);
f.getParentFile().mkdirs();
try (final FileOutputStream out = new FileOutputStream(f)) {
out.write(src.getBytes(Charset.defaultCharset()));
}
- // set up compiler
final JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();
final DiagnosticCollector<JavaFileObject> diagnostics = new DiagnosticCollector<>();
final List<String> errors = new ArrayList<>();
@@ -79,8 +97,10 @@ public class GenerateExtendedLoggerTest {
final Iterable<? extends JavaFileObject> compilationUnits = fileManager
.getJavaFileObjectsFromFiles(Collections.singletonList(f));
+ List<String> optionList =
+ new ArrayList<>(Arrays.asList("-classpath", System.getProperty("jdk.module.path")));
// compile generated source
- compiler.getTask(null, fileManager, diagnostics, null, null, compilationUnits).call();
+ compiler.getTask(null, fileManager, diagnostics, optionList, null, compilationUnits).call();
// check we don't have any compilation errors
for (final Diagnostic<? extends JavaFileObject> diagnostic : diagnostics.getDiagnostics()) {
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/util/ContextDataProviderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/util/ContextDataProviderTest.java
index ac01cde..56b41f5 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/util/ContextDataProviderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/util/ContextDataProviderTest.java
@@ -22,7 +22,7 @@ import org.apache.logging.log4j.ThreadContext;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.core.impl.ThreadContextDataInjector;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Tag;
import org.junit.jupiter.api.Test;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/util/ShutdownCallbackRegistryTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/util/ShutdownCallbackRegistryTest.java
index 1c39a36..199cfc3 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/util/ShutdownCallbackRegistryTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/util/ShutdownCallbackRegistryTest.java
@@ -24,7 +24,7 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.impl.Log4jContextFactory;
import org.apache.logging.log4j.core.selector.ContextSelector;
-import org.apache.logging.log4j.core.junit.LoggerContextSource;
+import org.apache.logging.log4j.core.test.junit.LoggerContextSource;
import org.apache.logging.log4j.status.StatusLogger;
import org.junit.jupiter.api.AfterAll;
import org.junit.jupiter.api.BeforeAll;
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/Descriptors.java b/log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/Descriptors.java
deleted file mode 100644
index 5fe486b..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/Descriptors.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.logging.log4j.hamcrest;
-
-import org.hamcrest.Description;
-import org.hamcrest.Matcher;
-import org.hamcrest.core.Is;
-
-/**
- * Grammatical descriptor decorators for Matchers.
- *
- * @since 2.1
- */
-public class Descriptors {
- /**
- * Decorating Matcher similar to {@code is()}, but for better grammar.
- *
- * @param matcher the Matcher to decorate.
- * @param <T> the type expected by the Matcher.
- * @return the decorated Matcher.
- */
- public static <T> Matcher<T> that(final Matcher<T> matcher) {
- return new Is<T>(matcher) {
- @Override
- public void describeTo(final Description description) {
- description.appendText("that ").appendDescriptionOf(matcher);
- }
- };
- }
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/MapMatchers.java b/log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/MapMatchers.java
deleted file mode 100644
index 805c8a6..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/hamcrest/MapMatchers.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.logging.log4j.hamcrest;
-
-import java.util.Map;
-
-import org.hamcrest.FeatureMatcher;
-import org.hamcrest.Matcher;
-
-import static org.hamcrest.core.IsEqual.equalTo;
-
-/**
- * Hamcrest Matchers for Maps.
- *
- * @since 2.1
- */
-public final class MapMatchers {
-
- /**
- * Returns a Map Matcher matching on the size of a Map.
- *
- * @param matcher the Matcher to match against the Map size.
- * @param <K> the key type.
- * @param <V> the value type.
- */
- public static <K, V> Matcher<Map<? extends K, ? extends V>> hasSize(final Matcher<Integer> matcher) {
- return new FeatureMatcher<Map<? extends K, ? extends V>, Integer>(matcher, "map with size", "map with size") {
- @Override
- protected Integer featureValueOf(final Map<? extends K, ? extends V> actual) {
- return actual.size();
- }
- };
- }
-
- /**
- * Returns a Map Matcher matching on the exact size of a Map.
- *
- * @param size the number of entries to match the Map against.
- * @param <K> the key type.
- * @param <V> the value type.
- */
- public static <K, V> Matcher<Map<? extends K, ? extends V>> hasSize(final int size) {
- return hasSize(equalTo(size));
- }
-
- private MapMatchers() {
- }
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/junit/AppenderResolver.java b/log4j-core/src/test/java/org/apache/logging/log4j/junit/AppenderResolver.java
deleted file mode 100644
index cc2f2d4..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/AppenderResolver.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-package org.apache.logging.log4j.junit;
-
-import org.apache.logging.log4j.core.Appender;
-import org.apache.logging.log4j.core.LoggerContext;
-import org.junit.jupiter.api.extension.ExtensionContext;
-import org.junit.jupiter.api.extension.ParameterContext;
-import org.junit.jupiter.api.extension.ParameterResolutionException;
-import org.junit.jupiter.api.extension.ParameterResolver;
-
-import static org.apache.logging.log4j.junit.LoggerContextResolver.getParameterLoggerContext;
-
-class AppenderResolver implements ParameterResolver {
- @Override
- public boolean supportsParameter(
- ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException {
- return Appender.class.isAssignableFrom(parameterContext.getParameter().getType()) && parameterContext
- .isAnnotated(Named.class);
- }
-
- @Override
- public Object resolveParameter(
- ParameterContext parameterContext, ExtensionContext extensionContext) throws ParameterResolutionException {
- final LoggerContext loggerContext = getParameterLoggerContext(parameterContext, extensionContext);
- if (loggerContext == null) {
- throw new ParameterResolutionException("No LoggerContext defined");
- }
- final String name = parameterContext.findAnnotation(Named.class)
- .map(Named::value)
- .map(s -> s.isEmpty() ? parameterContext.getParameter().getName() : s)
- .orElseThrow(() -> new ParameterResolutionException("No @Named present after checking earlier"));
- final Appender appender = loggerContext.getConfiguration().getAppender(name);
- if (appender == null) {
- throw new ParameterResolutionException("No appender named " + name);
- }
- return appender;
- }
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/junit/JndiRule.java b/log4j-core/src/test/java/org/apache/logging/log4j/junit/JndiRule.java
deleted file mode 100644
index 7638d2c..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/JndiRule.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.logging.log4j.junit;
-
-import java.util.Collections;
-import java.util.Map;
-import javax.naming.Context;
-
-import org.junit.rules.TestRule;
-import org.junit.runner.Description;
-import org.junit.runners.model.Statement;
-import org.springframework.mock.jndi.SimpleNamingContextBuilder;
-
-/**
- * JUnit rule to create a mock {@link Context} and bind an object to a name.
- *
- * @since 2.8
- */
-public class JndiRule implements TestRule {
-
- private final Map<String, Object> initialBindings;
-
- public JndiRule(final String name, final Object value) {
- this.initialBindings = Collections.singletonMap(name, value);
- }
-
- public JndiRule(final Map<String, Object> initialBindings) {
- this.initialBindings = initialBindings;
- }
-
- @Override
- public Statement apply(final Statement base, final Description description) {
- return new Statement() {
- @Override
- public void evaluate() throws Throwable {
- final SimpleNamingContextBuilder builder = SimpleNamingContextBuilder.emptyActivatedContextBuilder();
- for (final Map.Entry<String, Object> entry : initialBindings.entrySet()) {
- builder.bind(entry.getKey(), entry.getValue());
- }
- base.evaluate();
- }
- };
- }
-
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextRule.java b/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextRule.java
deleted file mode 100644
index 5707e21..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextRule.java
+++ /dev/null
@@ -1,319 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.logging.log4j.junit;
-
-import java.util.concurrent.TimeUnit;
-
-import org.apache.logging.log4j.Level;
-import org.apache.logging.log4j.core.AbstractLifeCycle;
-import org.apache.logging.log4j.core.Appender;
-import org.apache.logging.log4j.core.Logger;
-import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.LoggerContextAccessor;
-import org.apache.logging.log4j.core.config.Configuration;
-import org.apache.logging.log4j.core.config.Configurator;
-import org.apache.logging.log4j.core.selector.ContextSelector;
-import org.apache.logging.log4j.core.util.Constants;
-import org.apache.logging.log4j.status.StatusLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
-import org.apache.logging.log4j.test.junit.CleanFiles;
-import org.apache.logging.log4j.test.junit.CleanFolders;
-import org.junit.rules.RuleChain;
-import org.junit.rules.TestRule;
-import org.junit.runner.Description;
-import org.junit.runners.model.Statement;
-
-import static org.junit.Assert.*;
-
-/**
- * JUnit {@link TestRule} for constructing a new LoggerContext using a specified configuration file. If the system
- * property {@code EBUG} is set (e.g., through the command line option {@code -DEBUG}), then the StatusLogger will be
- * set to the debug level. This allows for more debug messages as the StatusLogger will be in the error level until a
- * configuration file has been read and parsed into a tree of Nodes.
- *
- * @see LoggerContextSource
- * @see Named
- */
-public class LoggerContextRule implements TestRule, LoggerContextAccessor {
-
- public static LoggerContextRule createShutdownTimeoutLoggerContextRule(final String config) {
- return new LoggerContextRule(config, 10, TimeUnit.SECONDS);
- }
-
- private static final String SYS_PROP_KEY_CLASS_NAME = "org.apache.logging.log4j.junit.LoggerContextRule#ClassName";
- private static final String SYS_PROP_KEY_DISPLAY_NAME = "org.apache.logging.log4j.junit.LoggerContextRule#DisplayName";
- private final String configurationLocation;
- private LoggerContext loggerContext;
- private Class<? extends ContextSelector> contextSelectorClass;
- private String testClassName;
- private final long shutdownTimeout;
- private final TimeUnit shutdownTimeUnit;
-
- /**
- * Constructs a new LoggerContextRule without a configuration file.
- */
- public LoggerContextRule() {
- this(null, null);
- }
-
- /**
- * Constructs a new LoggerContextRule for a given configuration file.
- *
- * @param configurationLocation
- * path to configuration file
- */
- public LoggerContextRule(final String configurationLocation) {
- this(configurationLocation, null);
- }
-
- /**
- * Constructs a new LoggerContextRule for a given configuration file and a custom {@link ContextSelector} class.
- *
- * @param configurationLocation
- * path to configuration file
- * @param contextSelectorClass
- * custom ContextSelector class to use instead of default
- */
- public LoggerContextRule(final String configurationLocation, final Class<? extends ContextSelector> contextSelectorClass) {
- this(configurationLocation, contextSelectorClass, AbstractLifeCycle.DEFAULT_STOP_TIMEOUT,
- AbstractLifeCycle.DEFAULT_STOP_TIMEUNIT);
- }
-
- public LoggerContextRule(final String configurationLocation, final Class<? extends ContextSelector> contextSelectorClass,
- final long shutdownTimeout, final TimeUnit shutdownTimeUnit) {
- this.configurationLocation = configurationLocation;
- this.contextSelectorClass = contextSelectorClass;
- this.shutdownTimeout = shutdownTimeout;
- this.shutdownTimeUnit = shutdownTimeUnit;
- }
-
- public LoggerContextRule(final String configurationLocation, final int shutdownTimeout, final TimeUnit shutdownTimeUnit) {
- this(configurationLocation, null, shutdownTimeout, shutdownTimeUnit);
- }
-
- @Override
- public Statement apply(final Statement base, final Description description) {
- // Hack: Using -DEBUG as a JVM param sets a property called "EBUG"...
- if (System.getProperties().containsKey("EBUG")) {
- StatusLogger.getLogger().setLevel(Level.DEBUG);
- }
- testClassName = description.getClassName();
- return new Statement() {
- @Override
- public void evaluate() throws Throwable {
- if (contextSelectorClass != null) {
- System.setProperty(Constants.LOG4J_CONTEXT_SELECTOR, contextSelectorClass.getName());
- }
- // TODO Consider instead of the above:
- // LogManager.setFactory(new Log4jContextFactory(LoaderUtil.newInstanceOf(contextSelectorClass)));
- System.setProperty(SYS_PROP_KEY_CLASS_NAME, description.getClassName());
- System.setProperty(SYS_PROP_KEY_DISPLAY_NAME, description.getDisplayName());
- loggerContext = Configurator.initialize(description.getDisplayName(),
- description.getTestClass().getClassLoader(), configurationLocation);
- try {
- base.evaluate();
- } finally {
- if (!Configurator.shutdown(loggerContext, shutdownTimeout, shutdownTimeUnit)) {
- StatusLogger.getLogger().error("Logger context {} did not shutdown completely after {} {}.",
- loggerContext.getName(), shutdownTimeout, shutdownTimeUnit);
- }
- loggerContext = null;
- contextSelectorClass = null;
- StatusLogger.getLogger().reset();
- System.clearProperty(Constants.LOG4J_CONTEXT_SELECTOR);
- System.clearProperty(SYS_PROP_KEY_CLASS_NAME);
- System.clearProperty(SYS_PROP_KEY_DISPLAY_NAME);
- }
- }
- };
-
- }
-
- /**
- * Gets a named Appender for this LoggerContext.
- *
- * @param name
- * the name of the Appender to look up.
- * @return the named Appender or {@code null} if it wasn't defined in the configuration.
- */
- @SuppressWarnings("unchecked") // Assume the call site knows what it is doing.
- public <T extends Appender> T getAppender(final String name) {
- return (T) getConfiguration().getAppenders().get(name);
- }
-
- /**
- * Gets a named Appender for this LoggerContext.
- *
- * @param <T>
- * The target Appender class
- * @param name
- * the name of the Appender to look up.
- * @param cls
- * The target Appender class
- * @return the named Appender or {@code null} if it wasn't defined in the configuration.
- */
- public <T extends Appender> T getAppender(final String name, final Class<T> cls) {
- return cls.cast(getConfiguration().getAppenders().get(name));
- }
-
- /**
- * Gets the associated Configuration for the configuration file this was constructed with.
- *
- * @return this LoggerContext's Configuration.
- */
- public Configuration getConfiguration() {
- return loggerContext.getConfiguration();
- }
-
- /**
- * Gets the configuration location.
- *
- * @return the configuration location.
- */
- public String getConfigurationLocation() {
- return configurationLocation;
- }
-
- /**
- * Gets the current LoggerContext associated with this rule.
- *
- * @return the current LoggerContext.
- */
- @Override
- public LoggerContext getLoggerContext() {
- return loggerContext;
- }
-
- /**
- * Gets a named ListAppender or throws an exception for this LoggerContext.
- *
- * @param name
- * the name of the ListAppender to look up.
- * @return the named ListAppender.
- * @throws AssertionError
- * if the named ListAppender doesn't exist or isn't a ListAppender.
- */
- public ListAppender getListAppender(final String name) {
- final Appender appender = getAppender(name);
- if (appender instanceof ListAppender) {
- return (ListAppender) appender;
- }
- throw new AssertionError("No ListAppender named " + name + " found.");
- }
-
- /**
- * Gets a named Logger using the test class's name from this LoggerContext.
- *
- * @return the test class's named Logger.
- */
- public Logger getLogger() {
- return loggerContext.getLogger(testClassName);
- }
-
- /**
- * Gets a named Logger for the given class in this LoggerContext.
- *
- * @param clazz
- * The Class whose name should be used as the Logger name. If null it will default to the calling class.
- * @return the named Logger.
- */
- public Logger getLogger(final Class<?> clazz) {
- return loggerContext.getLogger(clazz.getName());
- }
-
- /**
- * Gets a named Logger in this LoggerContext.
- *
- * @param name
- * the name of the Logger to look up or create.
- * @return the named Logger.
- */
- public Logger getLogger(final String name) {
- return loggerContext.getLogger(name);
- }
-
- /**
- * Gets a named Appender or throws an exception for this LoggerContext.
- *
- * @param name
- * the name of the Appender to look up.
- * @return the named Appender.
- * @throws AssertionError
- * if the Appender doesn't exist.
- */
- public Appender getRequiredAppender(final String name) {
- final Appender appender = getAppender(name);
- assertNotNull("Appender named " + name + " was null.", appender);
- return appender;
- }
-
- /**
- * Gets a named Appender or throws an exception for this LoggerContext.
- *
- * @param <T>
- * The target Appender class
- * @param name
- * the name of the Appender to look up.
- * @param cls
- * The target Appender class
- * @return the named Appender.
- * @throws AssertionError
- * if the Appender doesn't exist.
- */
- public <T extends Appender> T getRequiredAppender(final String name, final Class<T> cls) {
- final T appender = getAppender(name, cls);
- assertNotNull("Appender named " + name + " was null in logger context " + loggerContext, appender);
- return appender;
- }
-
- /**
- * Gets the root logger.
- *
- * @return the root logger.
- */
- public Logger getRootLogger() {
- return loggerContext.getRootLogger();
- }
-
- public void reconfigure() {
- loggerContext.reconfigure();
- }
-
- @Override
- public String toString() {
- final StringBuilder builder = new StringBuilder();
- builder.append("LoggerContextRule [configLocation=");
- builder.append(configurationLocation);
- builder.append(", contextSelectorClass=");
- builder.append(contextSelectorClass);
- builder.append("]");
- return builder.toString();
- }
-
- public RuleChain withCleanFilesRule(final String... files) {
- return RuleChain.outerRule(new CleanFiles(files)).around(this);
- }
-
- public RuleChain withCleanFoldersRule(final boolean before, final boolean after, final int maxTries, final String... folders) {
- return RuleChain.outerRule(new CleanFolders(before, after, maxTries, folders)).around(this);
- }
-
- public RuleChain withCleanFoldersRule(final String... folders) {
- return RuleChain.outerRule(new CleanFolders(folders)).around(this);
- }
-
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextSource.java b/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextSource.java
deleted file mode 100644
index e0cba27..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/junit/LoggerContextSource.java
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-package org.apache.logging.log4j.junit;
-
-import org.apache.logging.log4j.core.Appender;
-import org.apache.logging.log4j.core.LoggerContext;
-import org.apache.logging.log4j.core.config.Configuration;
-import org.junit.jupiter.api.Tag;
-import org.junit.jupiter.api.extension.ExtendWith;
-
-import java.lang.annotation.Documented;
-import java.lang.annotation.ElementType;
-import java.lang.annotation.Inherited;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.lang.annotation.Target;
-import java.util.concurrent.TimeUnit;
-
-/**
- * Specifies a configuration file to use for unit tests. This configuration file will be loaded once and used for all tests
- * executed in the annotated test class unless otherwise specified by {@link #reconfigure()}. When annotated on a test method,
- * this will override the class-level configuration if provided for that method. By using this JUnit 5 extension, the following
- * types can be injected into tests via constructor or method parameters:
- *
- * <ul>
- * <li>{@link LoggerContext};</li>
- * <li>{@link Configuration};</li>
- * <li>any subclass of {@link Appender} paired with a {@link Named} annotation to select the appender by name.</li>
- * </ul>
- *
- * Tests using this extension will automatically be tagged as {@code functional} to indicate they perform functional tests that
- * rely on configuration files and production code.
- *
- * @since 2.14.0
- */
-@Retention(RetentionPolicy.RUNTIME)
-@Target({ElementType.TYPE, ElementType.METHOD})
-@Documented
-@Inherited
-@Tag("functional")
-@ExtendWith(LoggerContextResolver.class)
-@ExtendWith(ConfigurationResolver.class)
-@ExtendWith(AppenderResolver.class)
-public @interface LoggerContextSource {
- /**
- * Specifies the name of the configuration file to use for the annotated test.
- */
- String value();
-
- /**
- * Specifies when to {@linkplain LoggerContext#reconfigure() reconfigure} the logging system.
- */
- ReconfigurationPolicy reconfigure() default ReconfigurationPolicy.NEVER;
-
- /**
- * Specifies the shutdown timeout limit. Defaults to 0 to mean no limit.
- */
- long timeout() default 0L;
-
- /**
- * Specifies the time unit {@link #timeout()} is measured in.
- */
- TimeUnit unit() default TimeUnit.SECONDS;
-}
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/message/MutableLogEventWithReusableParamMsgTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/message/MutableLogEventWithReusableParamMsgTest.java
deleted file mode 100644
index e5f5973..0000000
--- a/log4j-core/src/test/java/org/apache/logging/log4j/message/MutableLogEventWithReusableParamMsgTest.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-package org.apache.logging.log4j.message;
-
-import org.apache.logging.log4j.core.impl.MutableLogEvent;
-import org.junit.jupiter.api.Test;
-
-import static org.hamcrest.MatcherAssert.assertThat;
-import static org.hamcrest.core.IsSame.sameInstance;
-
-/**
- * LOG4J2-1409
- */
-// test must be in log4j-core but in org.apache.logging.log4j.message package because it calls package-private methods
-public class MutableLogEventWithReusableParamMsgTest {
- @Test
- public void testInteractionWithReusableParameterizedMessage() {
- final MutableLogEvent evt = new MutableLogEvent();
- final ReusableParameterizedMessage msg = new ReusableParameterizedMessage();
- msg.set("Hello {} {} {}", 1, 2, 3);
- evt.setMessage(msg);
- evt.clear();
-
- msg.set("Hello {}", new Object[]{1});
- evt.setMessage(msg);
- evt.clear();
-
- msg.set("Hello {}", 1);
- evt.setMessage(msg);
- evt.clear();
-
- // Uncomment out this log event and the params gets reset correctly (No exception occurs)
- // msg.set("Hello {}", 1);
- // evt.setMessage(msg);
- // evt.clear();
-
- // Exception at this log event - as the params is set to 1!
- msg.set("Hello {} {} {}", 1, 2, 3);
- evt.setMessage(msg);
- evt.clear();
-
- Message mementoMessage = evt.memento();
- Message mementoMessageSecondInvocation = evt.memento();
- // MutableLogEvent.memento should be cached
- assertThat(mementoMessage, sameInstance(mementoMessageSecondInvocation));
- }
-}
diff --git a/log4j-core/src/test/java9/module-info.java b/log4j-core/src/test/java9/module-info.java
new file mode 100644
index 0000000..0df50d8
--- /dev/null
+++ b/log4j-core/src/test/java9/module-info.java
@@ -0,0 +1,92 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+open module org.apache.logging.log4j.core {
+ exports org.apache.logging.log4j.core;
+ exports org.apache.logging.log4j.core.appender;
+ exports org.apache.logging.log4j.core.appender.db;
+ exports org.apache.logging.log4j.core.appender.nosql;
+ exports org.apache.logging.log4j.core.appender.rewrite;
+ exports org.apache.logging.log4j.core.appender.rolling;
+ exports org.apache.logging.log4j.core.appender.rolling.action;
+ exports org.apache.logging.log4j.core.appender.routing;
+ exports org.apache.logging.log4j.core.async;
+ exports org.apache.logging.log4j.core.config;
+ exports org.apache.logging.log4j.core.config.arbiters;
+ exports org.apache.logging.log4j.core.config.builder;
+ exports org.apache.logging.log4j.core.config.plugins;
+ exports org.apache.logging.log4j.core.config.plugins.convert;
+ exports org.apache.logging.log4j.core.config.plugins.util;
+ exports org.apache.logging.log4j.core.config.plugins.validation.validators;
+ exports org.apache.logging.log4j.core.config.properties;
+ exports org.apache.logging.log4j.core.config.xml;
+ exports org.apache.logging.log4j.core.filter;
+ exports org.apache.logging.log4j.core.impl;
+ exports org.apache.logging.log4j.core.jmx;
+ exports org.apache.logging.log4j.core.layout;
+ exports org.apache.logging.log4j.core.lookup;
+ exports org.apache.logging.log4j.core.message;
+ exports org.apache.logging.log4j.core.net;
+ exports org.apache.logging.log4j.core.net.ssl;
+ exports org.apache.logging.log4j.core.parser;
+ exports org.apache.logging.log4j.core.pattern;
+ exports org.apache.logging.log4j.core.script;
+ exports org.apache.logging.log4j.core.selector;
+ exports org.apache.logging.log4j.core.test;
+ exports org.apache.logging.log4j.core.test.appender;
+ exports org.apache.logging.log4j.core.test.hamcrest;
+ exports org.apache.logging.log4j.core.test.junit;
+ exports org.apache.logging.log4j.core.time;
+ exports org.apache.logging.log4j.core.tools;
+ exports org.apache.logging.log4j.core.util;
+
+ requires transitive java.compiler;
+ requires transitive java.desktop;
+ requires transitive java.management;
+ requires transitive java.naming;
+ requires transitive java.sql;
+ requires transitive java.rmi;
+ requires transitive java.scripting;
+ requires transitive java.xml;
+ requires transitive org.apache.logging.log4j;
+ requires transitive org.apache.logging.log4j.test;
+ requires transitive org.apache.logging.log4j.plugins;
+ requires transitive org.apache.logging.log4j.plugins.test;
+ requires transitive com.lmax.disruptor;
+ requires transitive org.jctools.core;
+ requires transitive org.osgi.framework;
+ requires transitive com.conversantmedia.disruptor;
+ requires com.fasterxml.jackson.core;
+ requires com.fasterxml.jackson.databind;
+ requires transitive com.fasterxml.jackson.dataformat.xml;
+ requires transitive com.fasterxml.jackson.dataformat.yaml;
+ requires transitive org.apache.commons.compress;
+ requires transitive org.fusesource.jansi;
+ requires transitive org.junit.jupiter.api;
+ requires transitive org.junit.jupiter.engine;
+ requires transitive org.junit.jupiter.params;
+ requires transitive org.junit.platform.commons;
+ requires transitive org.junit.platform.engine;
+ requires transitive junit;
+
+ uses org.apache.logging.log4j.core.util.ContextDataProvider;
+ uses org.apache.logging.log4j.core.util.WatchEventService;
+ provides org.apache.logging.log4j.message.ThreadDumpMessage.ThreadInfoFactory with org.apache.logging.log4j.core.message.ExtendedThreadInfoFactory;
+ provides org.apache.logging.log4j.core.util.ContextDataProvider with org.apache.logging.log4j.core.impl.ThreadContextDataProvider;
+ provides org.apache.logging.log4j.spi.Provider with org.apache.logging.log4j.core.impl.Log4jProvider;
+ provides org.apache.logging.log4j.plugins.processor.PluginService with org.apache.logging.log4j.core.plugins.Log4jPlugins,
+ org.apache.logging.log4j.core.test.plugins.Log4jPlugins;
+}
diff --git a/log4j-core/src/test/resources/gcFreeMixedSyncAsyncLogging.xml b/log4j-core/src/test/resources/gcFreeMixedSyncAsyncLogging.xml
index e85894c..990328f 100644
--- a/log4j-core/src/test/resources/gcFreeMixedSyncAsyncLogging.xml
+++ b/log4j-core/src/test/resources/gcFreeMixedSyncAsyncLogging.xml
@@ -69,7 +69,7 @@
</RandomAccessFile>
</Appenders>
<Loggers>
- <AsyncLogger name="org.apache.logging.log4j.core.GcFreeMixedSyncAyncLoggingTest"
+ <AsyncLogger name="org.apache.logging.log4j.core.test.gc.GcFreeMixedSyncAyncLoggingTest"
level="trace" includeLocation="false">
<Property name="prop1">value1</Property>
<Property name="prop2">value2</Property>
diff --git a/log4j-csv/src/test/java/org/apache/logging/log4j/csv/layout/CsvLogEventLayoutTest.java b/log4j-csv/src/test/java/org/apache/logging/log4j/csv/layout/CsvLogEventLayoutTest.java
index a4e06ad..d637f23 100644
--- a/log4j-csv/src/test/java/org/apache/logging/log4j/csv/layout/CsvLogEventLayoutTest.java
+++ b/log4j-csv/src/test/java/org/apache/logging/log4j/csv/layout/CsvLogEventLayoutTest.java
@@ -31,7 +31,7 @@ import org.apache.logging.log4j.core.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.test.junit.ThreadContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.BeforeClass;
diff --git a/log4j-csv/src/test/java/org/apache/logging/log4j/csv/layout/CsvParameterLayoutTest.java b/log4j-csv/src/test/java/org/apache/logging/log4j/csv/layout/CsvParameterLayoutTest.java
index cb600a5..aab0ef1 100644
--- a/log4j-csv/src/test/java/org/apache/logging/log4j/csv/layout/CsvParameterLayoutTest.java
+++ b/log4j-csv/src/test/java/org/apache/logging/log4j/csv/layout/CsvParameterLayoutTest.java
@@ -35,7 +35,7 @@ import org.apache.logging.log4j.core.Logger;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
import org.apache.logging.log4j.test.junit.ThreadContextRule;
import org.apache.logging.log4j.message.ObjectArrayMessage;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Assert;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeAppenderTest.java b/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeAppenderTest.java
index 2e1cda1..95c9c56 100644
--- a/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeAppenderTest.java
+++ b/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeAppenderTest.java
@@ -47,7 +47,7 @@ import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.Logger;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.apache.logging.log4j.status.StatusLogger;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.After;
import org.junit.Assert;
import org.junit.Before;
diff --git a/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeEmbeddedAgentTest.java b/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeEmbeddedAgentTest.java
index 1b314df..df3c8eb 100644
--- a/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeEmbeddedAgentTest.java
+++ b/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeEmbeddedAgentTest.java
@@ -50,7 +50,7 @@ import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.apache.logging.log4j.status.StatusLogger;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Assert;
diff --git a/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeEmbeddedAppenderTest.java b/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeEmbeddedAppenderTest.java
index e179b0c..5a01f0f 100644
--- a/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeEmbeddedAppenderTest.java
+++ b/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumeEmbeddedAppenderTest.java
@@ -50,7 +50,7 @@ import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.apache.logging.log4j.status.StatusLogger;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Assert;
diff --git a/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumePersistentAppenderTest.java b/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumePersistentAppenderTest.java
index 49c0ce0..9a37493 100644
--- a/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumePersistentAppenderTest.java
+++ b/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumePersistentAppenderTest.java
@@ -54,7 +54,7 @@ import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.apache.logging.log4j.status.StatusLogger;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Assert;
diff --git a/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumePersistentPerf.java b/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumePersistentPerf.java
index 4a3c723..9dd0eae 100644
--- a/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumePersistentPerf.java
+++ b/log4j-flume-ng/src/test/java/org/apache/logging/log4j/flume/appender/FlumePersistentPerf.java
@@ -48,7 +48,7 @@ import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.config.ConfigurationFactory;
import org.apache.logging.log4j.message.StructuredDataMessage;
import org.apache.logging.log4j.status.StatusLogger;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
diff --git a/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/IoBuilderCallerInfoTesting.java b/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/IoBuilderCallerInfoTesting.java
index 8602d0e..25ff9ce 100644
--- a/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/IoBuilderCallerInfoTesting.java
+++ b/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/IoBuilderCallerInfoTesting.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.io;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.core.Logger;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Before;
import org.junit.ClassRule;
diff --git a/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/IoBuilderTest.java b/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/IoBuilderTest.java
index 64e1937..09a436d 100644
--- a/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/IoBuilderTest.java
+++ b/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/IoBuilderTest.java
@@ -26,7 +26,7 @@ import java.io.PrintStream;
import java.util.List;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.ClassRule;
import org.junit.Test;
diff --git a/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/LoggerPrintWriterJdbcH2Test.java b/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/LoggerPrintWriterJdbcH2Test.java
index 4495b4d..51cc121 100644
--- a/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/LoggerPrintWriterJdbcH2Test.java
+++ b/log4j-iostreams/src/test/java/org/apache/logging/log4j/io/LoggerPrintWriterJdbcH2Test.java
@@ -23,7 +23,7 @@ import java.sql.SQLException;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.h2.jdbcx.JdbcDataSource;
import org.junit.Assert;
diff --git a/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/CallerInformationTest.java b/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/CallerInformationTest.java
index 9692990..e9bb5de 100644
--- a/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/CallerInformationTest.java
+++ b/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/CallerInformationTest.java
@@ -23,7 +23,7 @@ import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.ClassRule;
import org.junit.Test;
diff --git a/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/LoggerTest.java b/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/LoggerTest.java
index 9b628e1..2e53841 100644
--- a/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/LoggerTest.java
+++ b/log4j-jcl/src/test/java/org/apache/logging/log4j/jcl/LoggerTest.java
@@ -21,7 +21,7 @@ import java.util.List;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.ClassRule;
import org.junit.Test;
diff --git a/log4j-jdbc/src/test/java/org/apache/logging/log4j/jdbc/appender/JdbcAppenderColumnMappingLiteralTest.java b/log4j-jdbc/src/test/java/org/apache/logging/log4j/jdbc/appender/JdbcAppenderColumnMappingLiteralTest.java
index d209478..92f4b83 100644
--- a/log4j-jdbc/src/test/java/org/apache/logging/log4j/jdbc/appender/JdbcAppenderColumnMappingLiteralTest.java
+++ b/log4j-jdbc/src/test/java/org/apache/logging/log4j/jdbc/appender/JdbcAppenderColumnMappingLiteralTest.java
@@ -29,7 +29,7 @@ import java.sql.Statement;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.h2.util.IOUtils;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-jdbc/src/test/java/org/apache/logging/log4j/jdbc/appender/JdbcAppenderColumnMappingPatternTest.java b/log4j-jdbc/src/test/java/org/apache/logging/log4j/jdbc/appender/JdbcAppenderColumnMappingPatternTest.java
index be93d2a..00cbf4d 100644
--- a/log4j-jdbc/src/test/java/org/apache/logging/log4j/jdbc/appender/JdbcAppenderColumnMappingPatternTest.java
+++ b/log4j-jdbc/src/test/java/org/apache/logging/log4j/jdbc/appender/JdbcAppenderColumnMappingPatternTest.java
@@ -29,7 +29,7 @@ import java.sql.Statement;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.h2.util.IOUtils;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-jpl/pom.xml b/log4j-jpl/pom.xml
index 5e67974..b7c1b58 100644
--- a/log4j-jpl/pom.xml
+++ b/log4j-jpl/pom.xml
@@ -53,7 +53,7 @@
</dependency>
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.core</artifactId>
+ <artifactId>org.osgi.framework</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
diff --git a/log4j-jpl/src/test/java/org/apache/logging/log4j/jpl/Log4jSystemLoggerTest.java b/log4j-jpl/src/test/java/org/apache/logging/log4j/jpl/Log4jSystemLoggerTest.java
index ccc4b3c..6d1b844 100644
--- a/log4j-jpl/src/test/java/org/apache/logging/log4j/jpl/Log4jSystemLoggerTest.java
+++ b/log4j-jpl/src/test/java/org/apache/logging/log4j/jpl/Log4jSystemLoggerTest.java
@@ -30,7 +30,7 @@ import java.util.List;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.core.LogEvent;
import org.apache.logging.log4j.core.impl.Log4jLogEvent;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
diff --git a/log4j-jul/src/test/java/org/apache/logging/log4j/jul/AbstractLoggerTest.java b/log4j-jul/src/test/java/org/apache/logging/log4j/jul/AbstractLoggerTest.java
index a90c338..2637652 100644
--- a/log4j-jul/src/test/java/org/apache/logging/log4j/jul/AbstractLoggerTest.java
+++ b/log4j-jul/src/test/java/org/apache/logging/log4j/jul/AbstractLoggerTest.java
@@ -23,7 +23,7 @@ import java.util.logging.Logger;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.core.LogEvent;
import org.apache.logging.log4j.core.impl.Log4jLogEvent;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Test;
import static org.assertj.core.api.Assertions.assertThat;
diff --git a/log4j-jul/src/test/java/org/apache/logging/log4j/jul/ApiLoggerTest.java b/log4j-jul/src/test/java/org/apache/logging/log4j/jul/ApiLoggerTest.java
index 0f2c830..942b70a 100644
--- a/log4j-jul/src/test/java/org/apache/logging/log4j/jul/ApiLoggerTest.java
+++ b/log4j-jul/src/test/java/org/apache/logging/log4j/jul/ApiLoggerTest.java
@@ -24,7 +24,7 @@ import static org.junit.Assert.assertThat;
import java.util.logging.Logger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
diff --git a/log4j-jul/src/test/java/org/apache/logging/log4j/jul/BracketInNotInterpolatedMessageTest.java b/log4j-jul/src/test/java/org/apache/logging/log4j/jul/BracketInNotInterpolatedMessageTest.java
index 951976b..598cb84 100644
--- a/log4j-jul/src/test/java/org/apache/logging/log4j/jul/BracketInNotInterpolatedMessageTest.java
+++ b/log4j-jul/src/test/java/org/apache/logging/log4j/jul/BracketInNotInterpolatedMessageTest.java
@@ -21,7 +21,7 @@ import java.util.logging.LogRecord;
import java.util.logging.Logger;
import org.apache.logging.log4j.core.LogEvent;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Test;
diff --git a/log4j-jul/src/test/java/org/apache/logging/log4j/jul/CallerInformationTest.java b/log4j-jul/src/test/java/org/apache/logging/log4j/jul/CallerInformationTest.java
index 4a1844c..3290749 100644
--- a/log4j-jul/src/test/java/org/apache/logging/log4j/jul/CallerInformationTest.java
+++ b/log4j-jul/src/test/java/org/apache/logging/log4j/jul/CallerInformationTest.java
@@ -20,7 +20,7 @@ import java.util.List;
import java.util.logging.Logger;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.AfterClass;
import org.junit.BeforeClass;
import org.junit.Rule;
diff --git a/log4j-jul/src/test/java/org/apache/logging/log4j/jul/CoreLoggerTest.java b/log4j-jul/src/test/java/org/apache/logging/log4j/jul/CoreLoggerTest.java
index ae91022..39aefee 100644
--- a/log4j-jul/src/test/java/org/apache/logging/log4j/jul/CoreLoggerTest.java
+++ b/log4j-jul/src/test/java/org/apache/logging/log4j/jul/CoreLoggerTest.java
@@ -25,7 +25,7 @@ import static org.junit.Assert.assertThat;
import java.util.logging.Level;
import java.util.logging.Logger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.After;
import org.junit.AfterClass;
diff --git a/log4j-layout-jackson-json/src/test/java/org/apache/logging/log4j/jackson/json/layout/JsonLayoutMillisTest.java b/log4j-layout-jackson-json/src/test/java/org/apache/logging/log4j/jackson/json/layout/JsonLayoutMillisTest.java
index 0956ee7..14e551d 100644
--- a/log4j-layout-jackson-json/src/test/java/org/apache/logging/log4j/jackson/json/layout/JsonLayoutMillisTest.java
+++ b/log4j-layout-jackson-json/src/test/java/org/apache/logging/log4j/jackson/json/layout/JsonLayoutMillisTest.java
@@ -20,7 +20,7 @@ import org.apache.logging.log4j.core.categories.Layouts;
import org.apache.logging.log4j.core.LogEvent;
import org.apache.logging.log4j.core.Logger;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Before;
import org.junit.Rule;
import org.junit.Test;
diff --git a/log4j-layout-jackson-json/src/test/java/org/apache/logging/log4j/jackson/json/layout/JsonLayoutTest.java b/log4j-layout-jackson-json/src/test/java/org/apache/logging/log4j/jackson/json/layout/JsonLayoutTest.java
index b3d6324..f516771 100644
--- a/log4j-layout-jackson-json/src/test/java/org/apache/logging/log4j/jackson/json/layout/JsonLayoutTest.java
+++ b/log4j-layout-jackson-json/src/test/java/org/apache/logging/log4j/jackson/json/layout/JsonLayoutTest.java
@@ -53,7 +53,7 @@ import org.apache.logging.log4j.message.ParameterizedMessage;
import org.apache.logging.log4j.message.ReusableMessageFactory;
import org.apache.logging.log4j.message.SimpleMessage;
import org.apache.logging.log4j.spi.AbstractLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.SortedArrayStringMap;
import org.apache.logging.log4j.util.Strings;
import org.junit.AfterClass;
diff --git a/log4j-layout-jackson-xml/src/test/java/org/apache/logging/log4j/jackson/xml/layout/XmlLayoutTest.java b/log4j-layout-jackson-xml/src/test/java/org/apache/logging/log4j/jackson/xml/layout/XmlLayoutTest.java
index 0689d71..3438ab2 100644
--- a/log4j-layout-jackson-xml/src/test/java/org/apache/logging/log4j/jackson/xml/layout/XmlLayoutTest.java
+++ b/log4j-layout-jackson-xml/src/test/java/org/apache/logging/log4j/jackson/xml/layout/XmlLayoutTest.java
@@ -48,7 +48,7 @@ import org.apache.logging.log4j.jackson.xml.Log4jXmlObjectMapper;
import org.apache.logging.log4j.test.junit.ThreadContextRule;
import org.apache.logging.log4j.message.SimpleMessage;
import org.apache.logging.log4j.spi.AbstractLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.AfterClass;
import org.junit.Assert;
import org.junit.BeforeClass;
diff --git a/log4j-layout-jackson-yaml/src/test/java/org/apache/logging/log4j/jackson/yaml/layout/YamlLayoutTest.java b/log4j-layout-jackson-yaml/src/test/java/org/apache/logging/log4j/jackson/yaml/layout/YamlLayoutTest.java
index 6ae28b1..a8b5771 100644
--- a/log4j-layout-jackson-yaml/src/test/java/org/apache/logging/log4j/jackson/yaml/layout/YamlLayoutTest.java
+++ b/log4j-layout-jackson-yaml/src/test/java/org/apache/logging/log4j/jackson/yaml/layout/YamlLayoutTest.java
@@ -38,7 +38,7 @@ import org.apache.logging.log4j.jackson.AbstractJacksonLayout;
import org.apache.logging.log4j.jackson.yaml.Log4jYamlObjectMapper;
import org.apache.logging.log4j.message.SimpleMessage;
import org.apache.logging.log4j.spi.AbstractLogger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.AfterClass;
import org.junit.Assert;
diff --git a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldJsonTest.java b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldJsonTest.java
index 1694c56..92dc86f 100644
--- a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldJsonTest.java
+++ b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldJsonTest.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.layout.template.json;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.junit.LoggerContextSource;
import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
@LoggerContextSource("additionalFieldEnrichedJsonTemplateLayoutLogging.json")
diff --git a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldPropertiesTest.java b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldPropertiesTest.java
index 2c55fe7..aabb650 100644
--- a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldPropertiesTest.java
+++ b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldPropertiesTest.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.layout.template.json;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.junit.LoggerContextSource;
import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
@LoggerContextSource("additionalFieldEnrichedJsonTemplateLayoutLogging.properties")
diff --git a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelpers.java b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelpers.java
index 383206c..d0ca081 100644
--- a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelpers.java
+++ b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldTestHelpers.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.layout.template.json;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.layout.template.json.util.JsonReader;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.assertj.core.api.Assertions;
import java.util.Arrays;
diff --git a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldXmlTest.java b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldXmlTest.java
index bb08322..d4adfc6 100644
--- a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldXmlTest.java
+++ b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldXmlTest.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.layout.template.json;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.junit.LoggerContextSource;
import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
@LoggerContextSource("additionalFieldEnrichedJsonTemplateLayoutLogging.xml")
diff --git a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldYamlTest.java b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldYamlTest.java
index 25a0954..9b05254 100644
--- a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldYamlTest.java
+++ b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutAdditionalFieldYamlTest.java
@@ -19,7 +19,7 @@ package org.apache.logging.log4j.layout.template.json;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.junit.LoggerContextSource;
import org.apache.logging.log4j.core.junit.Named;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.jupiter.api.Test;
@LoggerContextSource("additionalFieldEnrichedJsonTemplateLayoutLogging.yaml")
diff --git a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutTest.java b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutTest.java
index 4f2ee1d..958fb9d 100644
--- a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutTest.java
+++ b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/JsonTemplateLayoutTest.java
@@ -52,7 +52,7 @@ import org.apache.logging.log4j.message.ParameterizedMessageFactory;
import org.apache.logging.log4j.message.ReusableMessageFactory;
import org.apache.logging.log4j.message.SimpleMessage;
import org.apache.logging.log4j.message.StringMapMessage;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.apache.logging.log4j.util.SortedArrayStringMap;
import org.apache.logging.log4j.util.StringMap;
import org.apache.logging.log4j.util.Strings;
diff --git a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/RecyclerFactoriesTest.java b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/RecyclerFactoriesTest.java
index d2347e5..daf2010 100644
--- a/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/RecyclerFactoriesTest.java
+++ b/log4j-layout-template-json/src/test/java/org/apache/logging/log4j/layout/template/json/util/RecyclerFactoriesTest.java
@@ -21,7 +21,7 @@ import org.apache.logging.log4j.plugins.convert.TypeConverterRegistry;
import org.apache.logging.log4j.core.junit.LoggerContextSource;
import org.apache.logging.log4j.core.junit.Named;
import org.apache.logging.log4j.layout.template.json.JsonTemplateLayout;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.assertj.core.api.Assertions;
import org.jctools.queues.MpmcArrayQueue;
import org.junit.jupiter.api.Test;
diff --git a/log4j-liquibase/src/test/java/liquibase/ext/logging/log4j2/LoggingTest.java b/log4j-liquibase/src/test/java/liquibase/ext/logging/log4j2/LoggingTest.java
index 36d011c..4a339ec 100644
--- a/log4j-liquibase/src/test/java/liquibase/ext/logging/log4j2/LoggingTest.java
+++ b/log4j-liquibase/src/test/java/liquibase/ext/logging/log4j2/LoggingTest.java
@@ -24,7 +24,7 @@ import java.util.List;
import liquibase.logging.Logger;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.After;
import org.junit.BeforeClass;
diff --git a/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3AuthFailureTest.java b/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3AuthFailureTest.java
index 10e2dae..72e497e 100644
--- a/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3AuthFailureTest.java
+++ b/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3AuthFailureTest.java
@@ -21,8 +21,8 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.Appenders;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
import org.apache.logging.log4j.mongodb3.MongoDb3TestRule.LoggingTarget;
-import org.apache.logging.log4j.test.AvailablePortSystemPropertyTestRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.AvailablePortSystemPropertyTestRule;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.bson.Document;
import org.junit.Assert;
import org.junit.ClassRule;
diff --git a/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3CappedTest.java b/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3CappedTest.java
index f6aeafc..41ae871 100644
--- a/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3CappedTest.java
+++ b/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3CappedTest.java
@@ -21,8 +21,8 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.Appenders;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
import org.apache.logging.log4j.mongodb3.MongoDb3TestRule.LoggingTarget;
-import org.apache.logging.log4j.test.AvailablePortSystemPropertyTestRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.AvailablePortSystemPropertyTestRule;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.bson.Document;
import org.junit.Assert;
import org.junit.ClassRule;
diff --git a/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3MapMessageTest.java b/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3MapMessageTest.java
index a971d89..e5ec753 100644
--- a/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3MapMessageTest.java
+++ b/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3MapMessageTest.java
@@ -22,8 +22,8 @@ import org.apache.logging.log4j.core.categories.Appenders;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
import org.apache.logging.log4j.message.MapMessage;
import org.apache.logging.log4j.mongodb3.MongoDb3TestRule.LoggingTarget;
-import org.apache.logging.log4j.test.AvailablePortSystemPropertyTestRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.AvailablePortSystemPropertyTestRule;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.bson.Document;
import org.junit.Assert;
import org.junit.ClassRule;
diff --git a/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3Test.java b/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3Test.java
index d173c48..e7342a6 100644
--- a/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3Test.java
+++ b/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3Test.java
@@ -21,8 +21,8 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.Appenders;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
import org.apache.logging.log4j.mongodb3.MongoDb3TestRule.LoggingTarget;
-import org.apache.logging.log4j.test.AvailablePortSystemPropertyTestRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.AvailablePortSystemPropertyTestRule;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.bson.Document;
import org.junit.Assert;
import org.junit.ClassRule;
diff --git a/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3TestTestRuleTest.java b/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3TestTestRuleTest.java
index ccdf0c8..10b5926 100644
--- a/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3TestTestRuleTest.java
+++ b/log4j-mongodb3/src/test/java/org/apache/logging/log4j/mongodb3/MongoDb3TestTestRuleTest.java
@@ -20,8 +20,8 @@ package org.apache.logging.log4j.mongodb3;
import org.apache.commons.lang3.JavaVersion;
import org.apache.commons.lang3.SystemUtils;
import org.apache.logging.log4j.mongodb3.MongoDb3TestRule.LoggingTarget;
-import org.apache.logging.log4j.test.AvailablePortSystemPropertyTestRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.AvailablePortSystemPropertyTestRule;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.junit.Assert;
import org.junit.Assume;
import org.junit.BeforeClass;
diff --git a/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4AuthFailureTest.java b/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4AuthFailureTest.java
index 26a9b04..8a07847 100644
--- a/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4AuthFailureTest.java
+++ b/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4AuthFailureTest.java
@@ -21,8 +21,8 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.Appenders;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
import org.apache.logging.log4j.mongodb4.MongoDb4TestRule.LoggingTarget;
-import org.apache.logging.log4j.test.AvailablePortSystemPropertyTestRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.AvailablePortSystemPropertyTestRule;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.bson.Document;
import org.junit.Assert;
import org.junit.ClassRule;
diff --git a/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4CappedTest.java b/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4CappedTest.java
index b9bb477..a2fcb8b 100644
--- a/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4CappedTest.java
+++ b/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4CappedTest.java
@@ -21,8 +21,8 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.Appenders;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
import org.apache.logging.log4j.mongodb4.MongoDb4TestRule.LoggingTarget;
-import org.apache.logging.log4j.test.AvailablePortSystemPropertyTestRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.AvailablePortSystemPropertyTestRule;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.bson.Document;
import org.junit.Assert;
import org.junit.ClassRule;
diff --git a/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4MapMessageTest.java b/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4MapMessageTest.java
index 602d40f..59f1aa2 100644
--- a/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4MapMessageTest.java
+++ b/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4MapMessageTest.java
@@ -22,8 +22,8 @@ import org.apache.logging.log4j.core.categories.Appenders;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
import org.apache.logging.log4j.message.MapMessage;
import org.apache.logging.log4j.mongodb4.MongoDb4TestRule.LoggingTarget;
-import org.apache.logging.log4j.test.AvailablePortSystemPropertyTestRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.AvailablePortSystemPropertyTestRule;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.bson.Document;
import org.junit.Assert;
import org.junit.ClassRule;
diff --git a/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4Test.java b/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4Test.java
index fdf42d7..dd61a6a 100644
--- a/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4Test.java
+++ b/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4Test.java
@@ -21,8 +21,8 @@ import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.categories.Appenders;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
import org.apache.logging.log4j.mongodb4.MongoDb4TestRule.LoggingTarget;
-import org.apache.logging.log4j.test.AvailablePortSystemPropertyTestRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.AvailablePortSystemPropertyTestRule;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.bson.Document;
import org.junit.Assert;
import org.junit.ClassRule;
diff --git a/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4TestTestRuleTest.java b/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4TestTestRuleTest.java
index 086af07..81ed69a 100644
--- a/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4TestTestRuleTest.java
+++ b/log4j-mongodb4/src/test/java/org/apache/logging/log4j/mongodb4/MongoDb4TestTestRuleTest.java
@@ -20,8 +20,8 @@ package org.apache.logging.log4j.mongodb4;
import org.apache.commons.lang3.JavaVersion;
import org.apache.commons.lang3.SystemUtils;
import org.apache.logging.log4j.mongodb4.MongoDb4TestRule.LoggingTarget;
-import org.apache.logging.log4j.test.AvailablePortSystemPropertyTestRule;
-import org.apache.logging.log4j.test.RuleChainFactory;
+import org.apache.logging.log4j.core.test.AvailablePortSystemPropertyTestRule;
+import org.apache.logging.log4j.core.test.RuleChainFactory;
import org.junit.Assert;
import org.junit.Assume;
import org.junit.BeforeClass;
diff --git a/log4j-osgi/pom.xml b/log4j-osgi/pom.xml
index b4a87b3..432810c 100644
--- a/log4j-osgi/pom.xml
+++ b/log4j-osgi/pom.xml
@@ -43,7 +43,12 @@
</dependency>
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.core</artifactId>
+ <artifactId>org.osgi.framework</artifactId>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.resource</artifactId>
<scope>test</scope>
</dependency>
<dependency>
diff --git a/log4j-plugins/pom.xml b/log4j-plugins/pom.xml
index e1c5883..3b9aac7 100644
--- a/log4j-plugins/pom.xml
+++ b/log4j-plugins/pom.xml
@@ -41,7 +41,12 @@
<!-- Used for OSGi bundle support -->
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.core</artifactId>
+ <artifactId>org.osgi.framework</artifactId>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.resource</artifactId>
<scope>provided</scope>
</dependency>
@@ -83,6 +88,33 @@
<goal>clean</goal>
</goals>
</execution>
+ <execution>
+ <id>delete-test-module-info</id>
+ <phase>generate-test-sources</phase>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ <configuration>
+ <excludeDefaultDirectories>true</excludeDefaultDirectories>
+ <verbose>true</verbose>
+ <filesets>
+ <fileset>
+ <directory>${project.build.testOutputDirectory}</directory>
+ <followSymlinks>false</followSymlinks>
+ <useDefaultExcludes>true</useDefaultExcludes>
+ <includes>
+ <include>module-info.class</include>
+ <include>**/Log4jPlugins.class</include>
+ </includes>
+ </fileset>
+ <fileset>
+ <directory>${project.build.directory}/generated-test-sources/test-annotations</directory>
+ <followSymlinks>false</followSymlinks>
+ <useDefaultExcludes>true</useDefaultExcludes>
+ </fileset>
+ </filesets>
+ </configuration>
+ </execution>
</executions>
</plugin>
<plugin>
@@ -101,7 +133,7 @@
</execution>
<execution>
<!-- then do a processing-only pass to generate plugins -->
- <id>process-plugins</id>
+ <id>preprocess-plugins</id>
<goals>
<goal>compile</goal>
</goals>
@@ -116,8 +148,8 @@
</configuration>
</execution>
<execution>
- <!-- then compile the test plugins -->
- <id>process-test-plugins</id>
+ <!-- capture the test plugins -->
+ <id>preprocess-test-plugins</id>
<goals>
<goal>testCompile</goal>
</goals>
@@ -125,12 +157,36 @@
<configuration combine.self="override">
<source>${maven.compiler.source}</source>
<target>${maven.compiler.target}</target>
+ <proc>only</proc>
+ <annotationProcessors>
+ <annotationProcessor>org.apache.logging.log4j.plugins.processor.PluginProcessor</annotationProcessor>
+ </annotationProcessors>
+ <compileSourceRoots>
+ <compileSourceRoot>${project.basedir}/src/test/java-test</compileSourceRoot>
+ </compileSourceRoots>
+ <parameters>true</parameters>
+ </configuration>
+ </execution>
+ <execution>
+ <!-- capture the test plugins -->
+ <id>preprocess-unit-test-plugins</id>
+ <goals>
+ <goal>testCompile</goal>
+ </goals>
+ <phase>generate-sources</phase>
+ <configuration combine.self="override">
+ <source>${maven.compiler.source}</source>
+ <target>${maven.compiler.target}</target>
+ <proc>only</proc>
<annotationProcessors>
<annotationProcessor>org.apache.logging.log4j.plugins.processor.PluginProcessor</annotationProcessor>
</annotationProcessors>
<compileSourceRoots>
+ <compileSourceRoot>${project.basedir}/src/test/java</compileSourceRoot>
<compileSourceRoot>${project.basedir}/src/test/java-test</compileSourceRoot>
</compileSourceRoots>
+ <generatedTestSourcesDirectory>${project.build.directory}/generated-test-sources/unit-test-annotations</generatedTestSourcesDirectory>
+ <outputDirectory>${project.build.directory}/unit-test-classes</outputDirectory>
<parameters>true</parameters>
</configuration>
</execution>
@@ -167,11 +223,33 @@
</annotationProcessorPaths>
<forceJavacCompilerUse>true</forceJavacCompilerUse>
<parameters>true</parameters>
+ <compileSourceRoots>
+ <compileSourceRoot>${project.basedir}/src/main/java</compileSourceRoot>
+ <compileSourceRoot>${project.basedir}/src/main/java9</compileSourceRoot>
+ </compileSourceRoots>
+ </configuration>
+ </execution>
+ <execution>
+ <!-- then compile the test module-->
+ <id>process-test-plugins</id>
+ <goals>
+ <goal>testCompile</goal>
+ </goals>
+ <phase>process-classes</phase>
+ <configuration combine.self="override">
+ <source>${maven.compiler.source}</source>
+ <target>${maven.compiler.target}</target>
+ <proc>none</proc>
+ <compileSourceRoots>
+ <compileSourceRoot>${project.basedir}/src/test/java-test</compileSourceRoot>
+ <compileSourceRoot>${project.basedir}/src/test/java-test9</compileSourceRoot>
+ </compileSourceRoots>
+ <parameters>true</parameters>
</configuration>
</execution>
<execution>
<!-- compile the test source -->
- <id>default-test-compile</id>
+ <id>default-testCompile</id>
<goals>
<goal>testCompile</goal>
</goals>
@@ -193,6 +271,8 @@
<Xmaxwarns>10000</Xmaxwarns>
<Xlint />
</compilerArguments>
+ <forceJavacCompilerUse>true</forceJavacCompilerUse>
+ <parameters>true</parameters>
<annotationProcessorPaths>
<path>
<groupId>com.google.errorprone</groupId>
@@ -200,39 +280,36 @@
<version>${errorprone.version}</version>
</path>
</annotationProcessorPaths>
- <forceJavacCompilerUse>true</forceJavacCompilerUse>
- <parameters>true</parameters>
+ <compileSourceRoots>
+ <compileSourceRoot>${project.basedir}/src/test/java</compileSourceRoot>
+ <compileSourceRoot>${project.basedir}/src/test/java9</compileSourceRoot>
+ <compileSourceRoot>${project.basedir}/src/test/java-test</compileSourceRoot>
+ <compileSourceRoot>${project.build.directory}/generated-test-sources/unit-test-annotations</compileSourceRoot>
+ </compileSourceRoots>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>build-helper-maven-plugin</artifactId>
- <version>3.2.0</version>
+ <artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
- <id>add-module</id>
- <phase>process-sources</phase>
- <goals>
- <goal>add-source</goal>
- </goals>
- <configuration>
- <sources>
- <source>src/main/java9</source>
- </sources>
- </configuration>
- </execution>
- <execution>
- <id>add-test-module</id>
- <phase>process-test-sources</phase>
+ <id>copy-service</id>
+ <phase>process-classes</phase>
<goals>
- <goal>add-test-source</goal>
+ <goal>copy-resources</goal>
</goals>
<configuration>
- <sources>
- <source>src/test/java9</source>
- </sources>
+ <outputDirectory>${project.build.testOutputDirectory}</outputDirectory>
+ <overwrite>true</overwrite>
+ <resources>
+ <resource>
+ <directory>${project.build.directory}/unit-test-classes</directory>
+ <includes>
+ <include>**/*</include>
+ </includes>
+ </resource>
+ </resources>
</configuration>
</execution>
</executions>
@@ -287,7 +364,7 @@
<goals>
<goal>test-jar</goal>
</goals>
- <phase>process-resources</phase>
+ <phase>process-classes</phase>
<configuration>
<archive>
<!--<manifestFile>${manifestfile}</manifestFile>-->
diff --git a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/processor/PluginProcessor.java b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/processor/PluginProcessor.java
index d655416..ec18989 100644
--- a/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/processor/PluginProcessor.java
+++ b/log4j-plugins/src/main/java/org/apache/logging/log4j/plugins/processor/PluginProcessor.java
@@ -69,6 +69,9 @@ public class PluginProcessor extends AbstractProcessor {
private static final String SERVICE_FILE_NAME =
"META-INF/services/org.apache.logging.log4j.plugins.processor.PluginService";
+ public PluginProcessor() {
+ }
+
@Override
public SourceVersion getSupportedSourceVersion() {
return SourceVersion.latest();
@@ -86,6 +89,7 @@ public class PluginProcessor extends AbstractProcessor {
messager.printMessage(Kind.NOTE, "No elements to process");
return false;
}
+ messager.printMessage(Kind.NOTE, "Retrieved " + elements.size() + " Plugin elements");
List<PluginEntry> list = new ArrayList<>();
packageName = collectPlugins(packageName, elements, list);
writeClassFile(packageName, list);
diff --git a/log4j-plugins/src/main/java9/module-info.java b/log4j-plugins/src/main/java9/module-info.java
index 2de0ae8..147c65b 100644
--- a/log4j-plugins/src/main/java9/module-info.java
+++ b/log4j-plugins/src/main/java9/module-info.java
@@ -28,7 +28,7 @@ module org.apache.logging.log4j.plugins {
requires java.compiler;
requires org.apache.logging.log4j;
- requires transitive org.osgi.core;
+ requires transitive org.osgi.framework;
provides org.apache.logging.log4j.plugins.processor.PluginService with org.apache.logging.log4j.plugins.convert.plugins.Log4jPlugins;
provides javax.annotation.processing.Processor with org.apache.logging.log4j.plugins.processor.PluginProcessor;
diff --git a/log4j-plugins/src/test/java-test9/module-info.java b/log4j-plugins/src/test/java-test9/module-info.java
new file mode 100644
index 0000000..ebd78ea
--- /dev/null
+++ b/log4j-plugins/src/test/java-test9/module-info.java
@@ -0,0 +1,8 @@
+module org.apache.logging.log4j.plugins.test {
+ exports org.apache.logging.log4j.plugins.test.validation;
+
+ requires org.apache.logging.log4j;
+ requires org.apache.logging.log4j.plugins;
+
+ provides org.apache.logging.log4j.plugins.processor.PluginService with org.apache.logging.log4j.plugins.test.validation.plugins.Log4jPlugins;
+}
\ No newline at end of file
diff --git a/log4j-plugins/src/test/java-test/org/apache/logging/log4j/plugins/test/processor/FakePlugin.java b/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/processor/FakePlugin.java
similarity index 95%
rename from log4j-plugins/src/test/java-test/org/apache/logging/log4j/plugins/test/processor/FakePlugin.java
rename to log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/processor/FakePlugin.java
index 979fdf4..48ea7dc 100644
--- a/log4j-plugins/src/test/java-test/org/apache/logging/log4j/plugins/test/processor/FakePlugin.java
+++ b/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/processor/FakePlugin.java
@@ -15,7 +15,7 @@
* limitations under the license.
*/
-package org.apache.logging.log4j.plugins.test.processor;
+package org.apache.logging.log4j.plugins.processor;
import org.apache.logging.log4j.plugins.Plugin;
import org.apache.logging.log4j.plugins.PluginAliases;
diff --git a/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/processor/PluginProcessorTest.java b/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/processor/PluginProcessorTest.java
index b43c95a..38c9a2c 100644
--- a/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/processor/PluginProcessorTest.java
+++ b/log4j-plugins/src/test/java/org/apache/logging/log4j/plugins/processor/PluginProcessorTest.java
@@ -19,7 +19,6 @@ package org.apache.logging.log4j.plugins.processor;
import org.apache.logging.log4j.plugins.Plugin;
import org.apache.logging.log4j.plugins.PluginAliases;
-import org.apache.logging.log4j.plugins.test.processor.FakePlugin;
import org.apache.logging.log4j.plugins.util.PluginType;
import org.junit.BeforeClass;
import org.junit.Test;
@@ -39,7 +38,7 @@ public class PluginProcessorTest {
@BeforeClass
public static void setUpClass() throws Exception {
- Class<?> clazz = PluginProcessor.class.getClassLoader().loadClass("org.apache.logging.log4j.plugins.test.plugins.Log4jPlugins");
+ Class<?> clazz = PluginProcessor.class.getClassLoader().loadClass("org.apache.logging.log4j.plugins.plugins.Log4jPlugins");
assertNotNull("Could not locate plugins class", clazz);
pluginService = (PluginService) clazz.getDeclaredConstructor().newInstance();;
}
diff --git a/log4j-plugins/src/test/java9/module-info.java b/log4j-plugins/src/test/java9/module-info.java
index d96dd94..68ded17 100644
--- a/log4j-plugins/src/test/java9/module-info.java
+++ b/log4j-plugins/src/test/java9/module-info.java
@@ -1,8 +1,10 @@
open module org.apache.logging.log4j.plugins {
exports org.apache.logging.log4j.plugins;
+ exports org.apache.logging.log4j.plugins.test.validation;
requires java.compiler;
requires org.apache.logging.log4j;
+ requires org.apache.logging.log4j.test;
requires org.junit.jupiter.api;
requires org.junit.jupiter.engine;
requires org.junit.platform.commons;
diff --git a/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/CallerInformationTest.java b/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/CallerInformationTest.java
index 0f7e092..a4a5c87 100644
--- a/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/CallerInformationTest.java
+++ b/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/CallerInformationTest.java
@@ -21,7 +21,7 @@ import static org.junit.Assert.assertEquals;
import java.util.List;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.ClassRule;
import org.junit.Test;
import org.slf4j.Logger;
diff --git a/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/LoggerTest.java b/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/LoggerTest.java
index 6d04e7a..2955570 100644
--- a/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/LoggerTest.java
+++ b/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/LoggerTest.java
@@ -24,7 +24,7 @@ import java.util.List;
import java.util.Locale;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.After;
import org.junit.Before;
diff --git a/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/OptionalTest.java b/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/OptionalTest.java
index a3faeff..16f5e32 100644
--- a/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/OptionalTest.java
+++ b/log4j-slf4j-impl/src/test/java/org/apache/logging/slf4j/OptionalTest.java
@@ -19,7 +19,7 @@ package org.apache.logging.slf4j;
import java.util.List;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.Before;
import org.junit.ClassRule;
diff --git a/log4j-slf4j18-impl/src/test/java/org/apache/logging/slf4j/CallerInformationTest.java b/log4j-slf4j18-impl/src/test/java/org/apache/logging/slf4j/CallerInformationTest.java
index 762b6ab..f42a63c 100644
--- a/log4j-slf4j18-impl/src/test/java/org/apache/logging/slf4j/CallerInformationTest.java
+++ b/log4j-slf4j18-impl/src/test/java/org/apache/logging/slf4j/CallerInformationTest.java
@@ -21,7 +21,7 @@ import static org.junit.Assert.assertEquals;
import java.util.List;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.ClassRule;
import org.junit.Test;
import org.slf4j.Logger;
diff --git a/log4j-slf4j18-impl/src/test/java/org/apache/logging/slf4j/LoggerTest.java b/log4j-slf4j18-impl/src/test/java/org/apache/logging/slf4j/LoggerTest.java
index 7d1ac7b..03d678b 100644
--- a/log4j-slf4j18-impl/src/test/java/org/apache/logging/slf4j/LoggerTest.java
+++ b/log4j-slf4j18-impl/src/test/java/org/apache/logging/slf4j/LoggerTest.java
@@ -23,7 +23,7 @@ import static org.junit.Assert.assertTrue;
import java.util.List;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.apache.logging.log4j.util.Strings;
import org.junit.After;
import org.junit.Before;
diff --git a/log4j-smtp/src/test/java/org/apache/logging/log4j/smtp/appender/SmtpAppenderAsyncTest.java b/log4j-smtp/src/test/java/org/apache/logging/log4j/smtp/appender/SmtpAppenderAsyncTest.java
index 11e1361..c98d7ff 100644
--- a/log4j-smtp/src/test/java/org/apache/logging/log4j/smtp/appender/SmtpAppenderAsyncTest.java
+++ b/log4j-smtp/src/test/java/org/apache/logging/log4j/smtp/appender/SmtpAppenderAsyncTest.java
@@ -21,7 +21,7 @@ import org.apache.logging.dumbster.smtp.SmtpMessage;
import org.apache.logging.log4j.ThreadContext;
import org.apache.logging.log4j.core.Logger;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.After;
import org.junit.AfterClass;
import org.junit.Before;
diff --git a/log4j-smtp/src/test/java/org/apache/logging/log4j/smtp/appender/SmtpAppenderTest.java b/log4j-smtp/src/test/java/org/apache/logging/log4j/smtp/appender/SmtpAppenderTest.java
index 44d7708..c75dccb 100644
--- a/log4j-smtp/src/test/java/org/apache/logging/log4j/smtp/appender/SmtpAppenderTest.java
+++ b/log4j-smtp/src/test/java/org/apache/logging/log4j/smtp/appender/SmtpAppenderTest.java
@@ -30,7 +30,7 @@ import org.apache.logging.log4j.core.categories.Appenders;
import org.apache.logging.log4j.core.Logger;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.smtp.MimeMessageBuilder;
-import org.apache.logging.log4j.test.AvailablePortFinder;
+import org.apache.logging.log4j.core.test.AvailablePortFinder;
import org.junit.Test;
import org.junit.experimental.categories.Category;
diff --git a/log4j-spring-boot/src/test/java/org/apache/logging/log4j/spring/boot/SpringProfileTest.java b/log4j-spring-boot/src/test/java/org/apache/logging/log4j/spring/boot/SpringProfileTest.java
index 3182ae3..e7a90df 100644
--- a/log4j-spring-boot/src/test/java/org/apache/logging/log4j/spring/boot/SpringProfileTest.java
+++ b/log4j-spring-boot/src/test/java/org/apache/logging/log4j/spring/boot/SpringProfileTest.java
@@ -22,7 +22,7 @@ import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.core.Appender;
import org.apache.logging.log4j.core.LoggerContext;
import org.apache.logging.log4j.core.appender.ConsoleAppender;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.BeforeClass;
import org.junit.Test;
import org.springframework.mock.env.MockEnvironment;
diff --git a/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/CatchingTagTest.java b/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/CatchingTagTest.java
index f6fbdf1..fa670fc 100644
--- a/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/CatchingTagTest.java
+++ b/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/CatchingTagTest.java
@@ -22,7 +22,7 @@ import javax.servlet.jsp.tagext.Tag;
import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Test;
diff --git a/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/EnterTagTest.java b/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/EnterTagTest.java
index c9fc6ec..1e5deba 100644
--- a/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/EnterTagTest.java
+++ b/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/EnterTagTest.java
@@ -21,7 +21,7 @@ import javax.servlet.jsp.tagext.Tag;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Test;
diff --git a/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/ExitTagTest.java b/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/ExitTagTest.java
index 7bc9eb4..96712a9 100644
--- a/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/ExitTagTest.java
+++ b/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/ExitTagTest.java
@@ -21,7 +21,7 @@ import javax.servlet.jsp.tagext.Tag;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.Before;
import org.junit.ClassRule;
import org.junit.Test;
diff --git a/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/LoggingMessageTagSupportTest.java b/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/LoggingMessageTagSupportTest.java
index b1242b1..b2e47c5 100644
--- a/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/LoggingMessageTagSupportTest.java
+++ b/log4j-taglib/src/test/java/org/apache/logging/log4j/taglib/LoggingMessageTagSupportTest.java
@@ -26,7 +26,7 @@ import org.apache.logging.log4j.Level;
import org.apache.logging.log4j.Logger;
import org.apache.logging.log4j.MarkerManager;
import org.apache.logging.log4j.core.junit.LoggerContextRule;
-import org.apache.logging.log4j.test.appender.ListAppender;
+import org.apache.logging.log4j.core.test.appender.ListAppender;
import org.junit.ClassRule;
import org.junit.Test;
import org.springframework.mock.web.MockBodyContent;
diff --git a/pom.xml b/pom.xml
index ca5dc58..6d7d4ce 100644
--- a/pom.xml
+++ b/pom.xml
@@ -185,16 +185,16 @@
<!--<Log4jReleaseManager>Matt Sicker</Log4jReleaseManager> -->
<!--<Log4jReleaseKey>748F15B2CF9BA8F024155E6ED7C92B70FA1C814D</Log4jReleaseKey> -->
<!-- note that any properties you want available in velocity templates must not use periods! -->
- <slf4jVersion>1.7.25</slf4jVersion>
+ <slf4jVersion>1.7.30</slf4jVersion>
<logbackVersion>1.2.3</logbackVersion>
<jackson1Version>1.9.13</jackson1Version>
- <jackson2Version>2.11.2</jackson2Version>
+ <jackson2Version>2.12.3</jackson2Version>
<spring-boot.version>2.3.6.RELEASE</spring-boot.version>
<springVersion>5.3.2</springVersion>
<kubernetes-client.version>4.6.1</kubernetes-client.version>
<flumeVersion>1.9.0</flumeVersion>
- <disruptorVersion>3.4.2</disruptorVersion>
- <conversantDisruptorVersion>1.2.15</conversantDisruptorVersion>
+ <disruptorVersion>3.4.3</disruptorVersion>
+ <conversantDisruptorVersion>1.2.19</conversantDisruptorVersion>
<elastic.version>7.6.2</elastic.version>
<mongodb3.version>3.12.4</mongodb3.version>
<mongodb4.version>4.0.3</mongodb4.version>
@@ -239,14 +239,15 @@
<projectDir />
<commonsLoggingVersion>1.2</commonsLoggingVersion>
<javax.persistence>2.2.1</javax.persistence>
- <osgi.api.version>6.0.0</osgi.api.version>
+ <osgi.api.version>1.10.0</osgi.api.version>
<activemq.version>5.15.9</activemq.version>
<!-- Allow Clirr severity to be overriden by the command-line option -DminSeverity=level -->
<minSeverity>info</minSeverity>
- <jctoolsVersion>3.1.0</jctoolsVersion>
+ <jctoolsVersion>3.3.0</jctoolsVersion>
<junitVersion>4.13.1</junitVersion>
<junitJupiterVersion>5.7.0</junitJupiterVersion>
- <mockitoVersion>3.5.5</mockitoVersion>
+ <mockitoVersion>3.9.0</mockitoVersion>
+ <byteBuddyVersion>1.11.0</byteBuddyVersion>
<argLine>-Xms256m -Xmx1024m</argLine>
<javaTargetVersion>11</javaTargetVersion>
<module.name />
@@ -449,14 +450,20 @@
</dependency>
<dependency>
<groupId>org.osgi</groupId>
- <artifactId>org.osgi.core</artifactId>
+ <artifactId>org.osgi.framework</artifactId>
<version>${osgi.api.version}</version>
<scope>provided</scope>
</dependency>
<dependency>
+ <groupId>org.osgi</groupId>
+ <artifactId>org.osgi.resource</artifactId>
+ <version>1.0.1</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
<groupId>org.fusesource.jansi</groupId>
<artifactId>jansi</artifactId>
- <version>1.17.1</version>
+ <version>2.3.2</version>
<optional>true</optional>
</dependency>
<dependency>
@@ -762,6 +769,18 @@
<scope>test</scope>
</dependency>
<dependency>
+ <groupId>net.bytebuddy</groupId>
+ <artifactId>byte-buddy</artifactId>
+ <version>${byteBuddyVersion}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>net.bytebuddy</groupId>
+ <artifactId>byte-buddy-agent</artifactId>
+ <version>${byteBuddyVersion}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>${springVersion}</version>
@@ -780,6 +799,12 @@
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${springVersion}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-jcl</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
@@ -850,8 +875,14 @@
<dependency>
<groupId>net.javacrumbs.json-unit</groupId>
<artifactId>json-unit</artifactId>
- <version>1.31.1</version>
+ <version>2.25.0</version>
<scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-core</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.xmlunit</groupId>
@@ -864,6 +895,12 @@
<artifactId>xmlunit-matchers</artifactId>
<version>2.6.2</version>
<scope>test</scope>
+ <exclusions>
+ <exclusion>
+ <groupId>org.hamcrest</groupId>
+ <artifactId>hamcrest-core</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>commons-io</groupId>
@@ -888,6 +925,12 @@
<artifactId>wiremock</artifactId>
<scope>test</scope>
<version>2.19.0</version>
+ <exclusions>
+ <exclusion>
+ <groupId>com.github.jknack</groupId>
+ <artifactId>handlebars-helpers</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<!-- Used for compressing to formats other than zip and gz -->
<dependency>
@@ -912,6 +955,12 @@
<groupId>com.google.code.java-allocation-instrumenter</groupId>
<artifactId>java-allocation-instrumenter</artifactId>
<version>3.3.0</version>
+ <exclusions>
+ <exclusion>
+ <groupId>com.google.guava</groupId>
+ <artifactId>guava-testlib</artifactId>
+ </exclusion>
+ </exclusions>
</dependency>
<dependency>
<groupId>org.hdrhistogram</groupId>
@@ -996,6 +1045,11 @@
<artifactId>maven-pmd-plugin</artifactId>
<version>${pmd.plugin.version}</version>
</plugin>
+ <plugin>
+ <groupId>org.bsc.maven</groupId>
+ <artifactId>maven-processor-plugin</artifactId>
+ <version>5.0-rc1</version>
+ </plugin>
<!-- some nice default compiler options -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
@@ -1007,6 +1061,7 @@
<release>${maven.compiler.release}</release>
<showDeprecation>true</showDeprecation>
<showWarnings>true</showWarnings>
+ <verbose>false</verbose>
<encoding>UTF-8</encoding>
<fork>true</fork>
<meminitial>256</meminitial>
@@ -1014,6 +1069,8 @@
<compilerArgs>
<arg>-XDcompilePolicy=simple</arg>
<arg>-Xplugin:ErrorProne</arg>
+ <!--<arg>-XprintProcessorInfo</arg>
+ <arg>-J-verbose</arg>-->
</compilerArgs>
<compilerArguments>
<Xmaxwarns>10000</Xmaxwarns>
@@ -1021,15 +1078,15 @@
</compilerArguments>
<annotationProcessorPaths>
<path>
- <groupId>com.google.errorprone</groupId>
- <artifactId>error_prone_core</artifactId>
- <version>${errorprone.version}</version>
- </path>
- <path>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-plugins</artifactId>
<version>${project.version}</version>
</path>
+ <path>
+ <groupId>com.google.errorprone</groupId>
+ <artifactId>error_prone_core</artifactId>
+ <version>${errorprone.version}</version>
+ </path>
</annotationProcessorPaths>
<forceJavacCompilerUse>true</forceJavacCompilerUse>
<parameters>true</parameters>