21 * questions.
22 */
23
24 /*
25 * @test
26 * @bug 6882376 6985460 8010309 8011638
27 * @summary Test if java.util.logging.Logger is created before and after
28 * logging is enabled. Also validate some basic PlatformLogger
29 * operations. othervm mode to make sure java.util.logging
30 * is not initialized.
31 *
32 * @modules java.base/sun.util.logging
33 * @compile -XDignore.symbol.file PlatformLoggerTest.java
34 * @run main/othervm PlatformLoggerTest
35 */
36
37 import java.lang.reflect.Field;
38 import java.lang.reflect.Modifier;
39 import java.util.logging.*;
40 import sun.util.logging.PlatformLogger;
41 import sun.util.logging.LoggingSupport;
42 import static sun.util.logging.PlatformLogger.Level.*;
43
44 public class PlatformLoggerTest {
45 public static void main(String[] args) throws Exception {
46 final String FOO_PLATFORM_LOGGER = "test.platformlogger.foo";
47 final String BAR_PLATFORM_LOGGER = "test.platformlogger.bar";
48 final String GOO_PLATFORM_LOGGER = "test.platformlogger.goo";
49 final String BAR_LOGGER = "test.logger.bar";
50 PlatformLogger goo = PlatformLogger.getLogger(GOO_PLATFORM_LOGGER);
51 // test the PlatformLogger methods
52 testLogMethods(goo);
53
54 // Create a platform logger using the default
55 PlatformLogger foo = PlatformLogger.getLogger(FOO_PLATFORM_LOGGER);
56 checkPlatformLogger(foo, FOO_PLATFORM_LOGGER);
57
58 // create a java.util.logging.Logger
59 // now java.util.logging.Logger should be created for each platform logger
60 Logger logger = Logger.getLogger(BAR_LOGGER);
61 logger.setLevel(Level.WARNING);
178 + logger.level()
179 + " is not the same as set level " + plevel);
180 }
181
182 // check the level set in java.util.logging.Logger
183 Logger javaLogger = LogManager.getLogManager().getLogger(logger.getName());
184 Level javaLevel = javaLogger.getLevel();
185 if (javaLogger.getLevel() != level) {
186 throw new RuntimeException("Retrieved backing java.util.logging.Logger level "
187 + javaLevel + " is not the expected " + level);
188 }
189 }
190
191 private static void checkJavaLoggerLevel(Logger logger, Level level) {
192 // This method exercise the mapping of java level to platform level
193 // when the java level is not one of the standard levels...
194
195 System.out.println("Testing Java Level with: " + level.getName());
196
197 // create a brand new java logger
198 Logger javaLogger = (Logger) LoggingSupport.getLogger(logger.getName()+"."+level.getName());
199
200 // Set a non standard java.util.logging.Level on the java logger
201 // (except for OFF & ALL - which will remain unchanged)
202 int intValue = level.intValue();
203 if (level != Level.ALL && level != Level.OFF) {
204 intValue -= 7;
205 }
206 javaLogger.setLevel(Level.parse(String.valueOf(intValue)));
207
208 // check the level set in java.util.logging.Logger
209 Level effectiveLevel = javaLogger.getLevel();
210 System.out.println("Effective Java Level used is: " + effectiveLevel);
211
212 if (effectiveLevel.intValue() != intValue) {
213 throw new RuntimeException("Retrieved backing java.util.logging.Logger level.intValue() "
214 + effectiveLevel.intValue() + " is not the expected " + intValue);
215 }
216 if (intValue != level.intValue() && javaLogger.getLevel() == level) {
217 throw new RuntimeException("Retrieved backing java.util.logging.Logger level "
218 + effectiveLevel + " is " + level);
|
21 * questions.
22 */
23
24 /*
25 * @test
26 * @bug 6882376 6985460 8010309 8011638
27 * @summary Test if java.util.logging.Logger is created before and after
28 * logging is enabled. Also validate some basic PlatformLogger
29 * operations. othervm mode to make sure java.util.logging
30 * is not initialized.
31 *
32 * @modules java.base/sun.util.logging
33 * @compile -XDignore.symbol.file PlatformLoggerTest.java
34 * @run main/othervm PlatformLoggerTest
35 */
36
37 import java.lang.reflect.Field;
38 import java.lang.reflect.Modifier;
39 import java.util.logging.*;
40 import sun.util.logging.PlatformLogger;
41 import static sun.util.logging.PlatformLogger.Level.*;
42
43 public class PlatformLoggerTest {
44 public static void main(String[] args) throws Exception {
45 final String FOO_PLATFORM_LOGGER = "test.platformlogger.foo";
46 final String BAR_PLATFORM_LOGGER = "test.platformlogger.bar";
47 final String GOO_PLATFORM_LOGGER = "test.platformlogger.goo";
48 final String BAR_LOGGER = "test.logger.bar";
49 PlatformLogger goo = PlatformLogger.getLogger(GOO_PLATFORM_LOGGER);
50 // test the PlatformLogger methods
51 testLogMethods(goo);
52
53 // Create a platform logger using the default
54 PlatformLogger foo = PlatformLogger.getLogger(FOO_PLATFORM_LOGGER);
55 checkPlatformLogger(foo, FOO_PLATFORM_LOGGER);
56
57 // create a java.util.logging.Logger
58 // now java.util.logging.Logger should be created for each platform logger
59 Logger logger = Logger.getLogger(BAR_LOGGER);
60 logger.setLevel(Level.WARNING);
177 + logger.level()
178 + " is not the same as set level " + plevel);
179 }
180
181 // check the level set in java.util.logging.Logger
182 Logger javaLogger = LogManager.getLogManager().getLogger(logger.getName());
183 Level javaLevel = javaLogger.getLevel();
184 if (javaLogger.getLevel() != level) {
185 throw new RuntimeException("Retrieved backing java.util.logging.Logger level "
186 + javaLevel + " is not the expected " + level);
187 }
188 }
189
190 private static void checkJavaLoggerLevel(Logger logger, Level level) {
191 // This method exercise the mapping of java level to platform level
192 // when the java level is not one of the standard levels...
193
194 System.out.println("Testing Java Level with: " + level.getName());
195
196 // create a brand new java logger
197 Logger javaLogger = LogManager.demandLoggerFor(
198 logger.getName()+"."+level.getName(), Thread.class);
199
200 // Set a non standard java.util.logging.Level on the java logger
201 // (except for OFF & ALL - which will remain unchanged)
202 int intValue = level.intValue();
203 if (level != Level.ALL && level != Level.OFF) {
204 intValue -= 7;
205 }
206 javaLogger.setLevel(Level.parse(String.valueOf(intValue)));
207
208 // check the level set in java.util.logging.Logger
209 Level effectiveLevel = javaLogger.getLevel();
210 System.out.println("Effective Java Level used is: " + effectiveLevel);
211
212 if (effectiveLevel.intValue() != intValue) {
213 throw new RuntimeException("Retrieved backing java.util.logging.Logger level.intValue() "
214 + effectiveLevel.intValue() + " is not the expected " + intValue);
215 }
216 if (intValue != level.intValue() && javaLogger.getLevel() == level) {
217 throw new RuntimeException("Retrieved backing java.util.logging.Logger level "
218 + effectiveLevel + " is " + level);
|