LOG4J2-1422 fix spuriously failing test
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/a9b662e5 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/a9b662e5 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/a9b662e5 Branch: refs/heads/feature/LOG4J2-1430 Commit: a9b662e51351d1fd4af4f607c140c638f8d877f4 Parents: 9b16256 Author: rpopma <rpo...@apache.org> Authored: Sat Jun 18 09:05:20 2016 +0900 Committer: rpopma <rpo...@apache.org> Committed: Sat Jun 18 09:05:20 2016 +0900 ---------------------------------------------------------------------- .../log4j/core/appender/AsyncAppenderQueueFullPolicyTest.java | 3 +++ 1 file changed, 3 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/a9b662e5/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/AsyncAppenderQueueFullPolicyTest.java ---------------------------------------------------------------------- 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 0d6ec1b..1e7ca92 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 @@ -79,6 +79,9 @@ public class AsyncAppenderQueueFullPolicyTest { logger.error("event 1 - gets taken off the queue"); logger.warn("event 2"); logger.info("event 3"); + while (asyncAppender.getQueueRemainingCapacity() == 0) { + Thread.yield(); // wait until background thread takes one element off the queue + } logger.info("event 4 - now the queue is full"); assertEquals("queue remaining capacity", 0, asyncAppender.getQueueRemainingCapacity()); assertEquals("EventRouter invocations", 0, policy.queueFull.get());