diff options
author | Thomas Watson | 2016-03-04 14:30:44 +0000 |
---|---|---|
committer | Thomas Watson | 2017-06-16 12:38:08 +0000 |
commit | c7fae461022cd049802023f56bb518b8a81ad02a (patch) | |
tree | 87276855dc7fc1b82f10c56d1a24af4fd25df758 /bundles/org.eclipse.osgi.tests | |
parent | f31b2c1056822bdc2e77b22f558a087943f7a22d (diff) | |
download | rt.equinox.framework-c7fae461022cd049802023f56bb518b8a81ad02a.tar.gz rt.equinox.framework-c7fae461022cd049802023f56bb518b8a81ad02a.tar.xz rt.equinox.framework-c7fae461022cd049802023f56bb518b8a81ad02a.zip |
Bug 486950 - [osgi R7] log service is being updated
- Add support for LoggerAdmin
Change-Id: Iecd2675cfb7ddf7f7a10fbaa8a7f35e4f59d5615
Signed-off-by: Thomas Watson <tjwatson@us.ibm.com>
Diffstat (limited to 'bundles/org.eclipse.osgi.tests')
4 files changed, 79 insertions, 2 deletions
diff --git a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogReaderServiceTest.java b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogReaderServiceTest.java index ebafb8b25..5d4100855 100644 --- a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogReaderServiceTest.java +++ b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogReaderServiceTest.java @@ -8,12 +8,17 @@ package org.eclipse.equinox.log.test; import java.lang.reflect.Method; +import java.util.HashMap; +import java.util.Map; import junit.framework.TestCase; import org.eclipse.equinox.log.*; import org.eclipse.osgi.tests.OSGiTestsActivator; import org.osgi.framework.Bundle; import org.osgi.framework.ServiceReference; import org.osgi.service.log.*; +import org.osgi.service.log.Logger; +import org.osgi.service.log.admin.LoggerAdmin; +import org.osgi.service.log.admin.LoggerContext; public class ExtendedLogReaderServiceTest extends TestCase { @@ -21,6 +26,10 @@ public class ExtendedLogReaderServiceTest extends TestCase { private ServiceReference logReference; private ExtendedLogReaderService reader; private ServiceReference readerReference; + private ServiceReference<LoggerAdmin> loggerAdminReference; + private LoggerAdmin loggerAdmin; + LoggerContext rootLoggerContext; + Map<String, LogLevel> rootLogLevels; boolean called; public ExtendedLogReaderServiceTest(String name) { @@ -30,12 +39,23 @@ public class ExtendedLogReaderServiceTest extends TestCase { protected void setUp() throws Exception { logReference = OSGiTestsActivator.getContext().getServiceReference(ExtendedLogService.class.getName()); readerReference = OSGiTestsActivator.getContext().getServiceReference(ExtendedLogReaderService.class.getName()); + loggerAdminReference = OSGiTestsActivator.getContext().getServiceReference(LoggerAdmin.class); log = (ExtendedLogService) OSGiTestsActivator.getContext().getService(logReference); reader = (ExtendedLogReaderService) OSGiTestsActivator.getContext().getService(readerReference); + loggerAdmin = OSGiTestsActivator.getContext().getService(loggerAdminReference); + + rootLoggerContext = loggerAdmin.getLoggerContext(null); + rootLogLevels = rootLoggerContext.getLogLevels(); + + Map<String, LogLevel> copyLogLevels = new HashMap<String, LogLevel>(rootLogLevels); + copyLogLevels.put(Logger.ROOT_LOGGER_NAME, LogLevel.TRACE); + rootLoggerContext.setLogLevels(copyLogLevels); } protected void tearDown() throws Exception { + rootLoggerContext.setLogLevels(rootLogLevels); + OSGiTestsActivator.getContext().ungetService(loggerAdminReference); OSGiTestsActivator.getContext().ungetService(logReference); OSGiTestsActivator.getContext().ungetService(readerReference); } diff --git a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java index 96448852f..8353d1984 100644 --- a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java +++ b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/ExtendedLogServiceTest.java @@ -8,12 +8,18 @@ *******************************************************************************/ package org.eclipse.equinox.log.test; +import java.util.HashMap; +import java.util.Map; import junit.framework.TestCase; import org.eclipse.equinox.log.*; import org.eclipse.osgi.tests.OSGiTestsActivator; import org.osgi.framework.Bundle; import org.osgi.framework.ServiceReference; +import org.osgi.service.log.LogLevel; import org.osgi.service.log.LogService; +import org.osgi.service.log.Logger; +import org.osgi.service.log.admin.LoggerAdmin; +import org.osgi.service.log.admin.LoggerContext; public class ExtendedLogServiceTest extends TestCase { @@ -22,6 +28,11 @@ public class ExtendedLogServiceTest extends TestCase { private ServiceReference logReference; private ExtendedLogReaderService reader; private ServiceReference readerReference; + private ServiceReference<LoggerAdmin> loggerAdminReference; + private LoggerAdmin loggerAdmin; + LoggerContext rootLoggerContext; + Map<String, LogLevel> rootLogLevels; + private TestListener listener; public ExtendedLogServiceTest(String name) { @@ -32,16 +43,27 @@ public class ExtendedLogServiceTest extends TestCase { bundle = OSGiTestsActivator.getContext().getBundle(); logReference = OSGiTestsActivator.getContext().getServiceReference(ExtendedLogService.class.getName()); readerReference = OSGiTestsActivator.getContext().getServiceReference(ExtendedLogReaderService.class.getName()); + loggerAdminReference = OSGiTestsActivator.getContext().getServiceReference(LoggerAdmin.class); log = (ExtendedLogService) OSGiTestsActivator.getContext().getService(logReference); reader = (ExtendedLogReaderService) OSGiTestsActivator.getContext().getService(readerReference); + loggerAdmin = OSGiTestsActivator.getContext().getService(loggerAdminReference); listener = new TestListener(); reader.addLogListener(listener); + + rootLoggerContext = loggerAdmin.getLoggerContext(null); + rootLogLevels = rootLoggerContext.getLogLevels(); + + Map<String, LogLevel> copyLogLevels = new HashMap<String, LogLevel>(rootLogLevels); + copyLogLevels.put(Logger.ROOT_LOGGER_NAME, LogLevel.TRACE); + rootLoggerContext.setLogLevels(copyLogLevels); } protected void tearDown() throws Exception { + rootLoggerContext.setLogLevels(rootLogLevels); reader.removeLogListener(listener); + OSGiTestsActivator.getContext().ungetService(loggerAdminReference); OSGiTestsActivator.getContext().ungetService(logReference); OSGiTestsActivator.getContext().ungetService(readerReference); } @@ -111,7 +133,7 @@ public class ExtendedLogServiceTest extends TestCase { listener.waitForLogEntry(); } ExtendedLogEntry entry = listener.getEntryX(); - assertTrue(entry.getLoggerName() == null); + assertEquals("Wrong logger name.", "LogService", entry.getLoggerName()); assertTrue(entry.getLevel() == 0); assertTrue(entry.getMessage() == null); assertTrue(entry.getException() == null); diff --git a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java index 04d90910e..6fad1d28f 100644 --- a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java +++ b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogReaderServiceTest.java @@ -16,6 +16,8 @@ import org.eclipse.osgi.tests.OSGiTestsActivator; import org.eclipse.osgi.tests.bundles.AbstractBundleTests; import org.osgi.framework.*; import org.osgi.service.log.*; +import org.osgi.service.log.admin.LoggerAdmin; +import org.osgi.service.log.admin.LoggerContext; public class LogReaderServiceTest extends AbstractBundleTests { @@ -23,6 +25,10 @@ public class LogReaderServiceTest extends AbstractBundleTests { private ServiceReference logReference; private LogReaderService reader; private ServiceReference readerReference; + private ServiceReference<LoggerAdmin> loggerAdminReference; + private LoggerAdmin loggerAdmin; + LoggerContext rootLoggerContext; + Map<String, LogLevel> rootLogLevels; public LogReaderServiceTest(String name) { setName(name); @@ -32,12 +38,23 @@ public class LogReaderServiceTest extends AbstractBundleTests { super.setUp(); logReference = OSGiTestsActivator.getContext().getServiceReference(LogService.class.getName()); readerReference = OSGiTestsActivator.getContext().getServiceReference(LogReaderService.class.getName()); + loggerAdminReference = OSGiTestsActivator.getContext().getServiceReference(LoggerAdmin.class); log = (LogService) OSGiTestsActivator.getContext().getService(logReference); reader = (LogReaderService) OSGiTestsActivator.getContext().getService(readerReference); + loggerAdmin = OSGiTestsActivator.getContext().getService(loggerAdminReference); + + rootLoggerContext = loggerAdmin.getLoggerContext(null); + rootLogLevels = rootLoggerContext.getLogLevels(); + + Map<String, LogLevel> copyLogLevels = new HashMap<String, LogLevel>(rootLogLevels); + copyLogLevels.put(Logger.ROOT_LOGGER_NAME, LogLevel.TRACE); + rootLoggerContext.setLogLevels(copyLogLevels); } protected void tearDown() throws Exception { + rootLoggerContext.setLogLevels(rootLogLevels); + OSGiTestsActivator.getContext().ungetService(loggerAdminReference); OSGiTestsActivator.getContext().ungetService(logReference); OSGiTestsActivator.getContext().ungetService(readerReference); super.tearDown(); @@ -106,7 +123,6 @@ public class LogReaderServiceTest extends AbstractBundleTests { } public void testLogBundleEventInfo() throws Exception { - // this is just a bundle that is harmless to start/stop Bundle testBundle = installer.installBundle("test.logging.a"); //$NON-NLS-1$ TestListener listener = new TestListener(testBundle); diff --git a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogServiceTest.java b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogServiceTest.java index 12bb09608..5c16a48d7 100644 --- a/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogServiceTest.java +++ b/bundles/org.eclipse.osgi.tests/src/org/eclipse/equinox/log/test/LogServiceTest.java @@ -8,10 +8,14 @@ *******************************************************************************/ package org.eclipse.equinox.log.test; +import java.util.HashMap; +import java.util.Map; import junit.framework.TestCase; import org.eclipse.osgi.tests.OSGiTestsActivator; import org.osgi.framework.ServiceReference; import org.osgi.service.log.*; +import org.osgi.service.log.admin.LoggerAdmin; +import org.osgi.service.log.admin.LoggerContext; public class LogServiceTest extends TestCase { @@ -20,6 +24,10 @@ public class LogServiceTest extends TestCase { private LogReaderService reader; private ServiceReference readerReference; private TestListener listener; + private ServiceReference<LoggerAdmin> loggerAdminReference; + private LoggerAdmin loggerAdmin; + LoggerContext rootLoggerContext; + Map<String, LogLevel> rootLogLevels; public LogServiceTest(String name) { super(name); @@ -28,16 +36,27 @@ public class LogServiceTest extends TestCase { protected void setUp() throws Exception { logReference = OSGiTestsActivator.getContext().getServiceReference(LogService.class.getName()); readerReference = OSGiTestsActivator.getContext().getServiceReference(LogReaderService.class.getName()); + loggerAdminReference = OSGiTestsActivator.getContext().getServiceReference(LoggerAdmin.class); log = (LogService) OSGiTestsActivator.getContext().getService(logReference); reader = (LogReaderService) OSGiTestsActivator.getContext().getService(readerReference); + loggerAdmin = OSGiTestsActivator.getContext().getService(loggerAdminReference); listener = new TestListener(); reader.addLogListener(listener); + + rootLoggerContext = loggerAdmin.getLoggerContext(null); + rootLogLevels = rootLoggerContext.getLogLevels(); + + Map<String, LogLevel> copyLogLevels = new HashMap<String, LogLevel>(rootLogLevels); + copyLogLevels.put(Logger.ROOT_LOGGER_NAME, LogLevel.TRACE); + rootLoggerContext.setLogLevels(copyLogLevels); } protected void tearDown() throws Exception { + rootLoggerContext.setLogLevels(rootLogLevels); reader.removeLogListener(listener); + OSGiTestsActivator.getContext().ungetService(loggerAdminReference); OSGiTestsActivator.getContext().ungetService(logReference); OSGiTestsActivator.getContext().ungetService(readerReference); } |