File: readConfiguration.java

package info (click to toggle)
mauve 20120103-1
  • links: PTS, VCS
  • area: main
  • in suites: wheezy
  • size: 28,504 kB
  • sloc: java: 250,155; sh: 2,834; xml: 208; makefile: 66
file content (75 lines) | stat: -rw-r--r-- 1,914 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
// Files: logging.properties

package gnu.testlet.java.util.logging.LogManager;

import gnu.testlet.*;
import java.io.*;
import java.util.logging.*;

// Test case for setting Logger handlers using resource property
public class readConfiguration implements Testlet {
    
  public void test(TestHarness harness) {
    LogManager manager = LogManager.getLogManager();
    
    // This resource contains a "handlers = TestHandler" property
    harness.checkPoint("read user logging properties");
    try
      {
	InputStream is = 
	  ClassLoader.getSystemResourceAsStream("gnu/testlet/java/util/logging/LogManager/logging.properties");
	manager.readConfiguration(is);
	harness.check(true);
	is.close();
      }
    catch (IOException e)
      {
	harness.check(false);
	harness.debug(e);
      }
    
    Logger logger = Logger.getLogger("TestLogger");
    Logger logger2 = logger;
    logger2.setLevel(Level.FINE);
    
    // This just copied from
    // org.apache.commons.logging.jdk14.CustomConfigTestCase, where I noticed
    // this bug
    while (logger.getParent() != null) {
      logger = logger.getParent();
    }
    
    // I gather that handles should now = {TestHandler handler}
    Handler[] handlers = logger.getHandlers();
    
    harness.checkPoint("handlers is not null");
    harness.check(handlers != null);
    
    // But does it?
    if (handlers != null)
      {
	harness.checkPoint("handlers length");
	harness.check(handlers.length, 1);
	harness.check(handlers[0].getClass() == TestHandler.class);
	
	TestHandler handler = (TestHandler) handlers[0];

	harness.checkPoint("state reset");

	harness.check(logger2.getLevel() == Level.FINE);

	try
	  {
	    manager.readConfiguration();
	    harness.check(true);
	  }
	catch (Exception e)
	  {
	    harness.check(false);
	    harness.debug(e);
	  }
	harness.check(logger2.getLevel() == null);
	harness.check(handler.isClosed);
      }
  }
}