X-Git-Url: http://git.lttng.org./?a=blobdiff_plain;f=lttng-ust-java-tests-log4j%2Fsrc%2Ftest%2Fjava%2Forg%2Flttng%2Fust%2Fagent%2Fintegration%2Fevents%2FLog4jLegacyApiIT.java;h=2630101d94ce94b52becef5f4e68c6d6b28908f8;hb=eca1a136dbd9c6beb63258f8d1ee20590a81fa77;hp=4cfff7b434ad61e95028b0c59d5b514f37ec1878;hpb=eca27046b6f32c55dc7ceccb0821431c9be9f3af;p=lttng-ust-java-tests.git diff --git a/lttng-ust-java-tests-log4j/src/test/java/org/lttng/ust/agent/integration/events/Log4jLegacyApiIT.java b/lttng-ust-java-tests-log4j/src/test/java/org/lttng/ust/agent/integration/events/Log4jLegacyApiIT.java index 4cfff7b..2630101 100644 --- a/lttng-ust-java-tests-log4j/src/test/java/org/lttng/ust/agent/integration/events/Log4jLegacyApiIT.java +++ b/lttng-ust-java-tests-log4j/src/test/java/org/lttng/ust/agent/integration/events/Log4jLegacyApiIT.java @@ -24,6 +24,7 @@ import static org.junit.Assert.assertTrue; import static org.junit.Assert.fail; import java.lang.reflect.Field; +import java.util.Arrays; import java.util.List; import org.apache.log4j.Level; @@ -55,6 +56,7 @@ public class Log4jLegacyApiIT { private static final String EVENT_NAME_B = "EventB"; private ILttngSession session; + private LTTngAgent agent; private Logger loggerA; private Logger loggerB; @@ -81,7 +83,7 @@ public class Log4jLegacyApiIT { @Before public void setup() { loggerA = Logger.getLogger(EVENT_NAME_A); - LTTngAgent.getLTTngAgent(); + agent = LTTngAgent.getLTTngAgent(); loggerB = Logger.getLogger(EVENT_NAME_B); loggerA.setLevel(Level.ALL); @@ -97,7 +99,7 @@ public class Log4jLegacyApiIT { public void tearDown() { session.close(); - LTTngAgent.dispose(); + agent.dispose(); loggerA = null; loggerB = null; @@ -165,6 +167,26 @@ public class Log4jLegacyApiIT { assertEquals(10, handler.getEventCount()); } + /** + * Test that the "lttng list" commands lists the expected events. + */ + @Test + public void testListEvents() { + List enabledEvents = session.listEvents(); + List expectedEvents = Arrays.asList(EVENT_NAME_A, EVENT_NAME_B); + + /* + * It doesn't seem possible to forcibly remove Loggers with log4j 1.2. + * This, coupled with the way the legacy agent works, makes it so + * loggers defined in other tests will always "leak" into this one when + * running the whole test suite. + * + * For this test, simply check that the expected names are present, and + * let pass the case where other loggers may the present too. + */ + expectedEvents.forEach(event -> assertTrue(enabledEvents.contains(event))); + } + /** * Get the singleton Log4j Handler currently managed by the LTTngAgent. It * is not public, so we need reflection to access it.