jtulach@107: package org.apidesign.deadlock.startuplock; jtulach@107: jtulach@107: import java.io.File; jtulach@107: import java.util.logging.Handler; jtulach@107: import java.util.logging.Level; jtulach@107: import java.util.logging.LogRecord; jtulach@107: import java.util.logging.Logger; jtulach@107: import org.junit.After; jtulach@107: import org.junit.AfterClass; jtulach@107: import org.junit.Before; jtulach@107: import org.junit.BeforeClass; jtulach@107: import org.junit.Test; jtulach@107: import static org.junit.Assert.*; jtulach@107: jtulach@107: // BEGIN: test.capture.logs jtulach@107: public class CLIHandlerBlockingTest { jtulach@107: jtulach@107: public CLIHandlerBlockingTest() { jtulach@107: } jtulach@107: jtulach@107: @BeforeClass jtulach@107: public static void initHandler() { jtulach@107: Logger.getLogger("").addHandler(new H()); jtulach@107: Logger.getLogger("").setLevel(Level.ALL); jtulach@107: } jtulach@107: jtulach@107: @Before jtulach@107: public void setUp() { jtulach@107: H.sb.setLength(0); jtulach@107: } jtulach@107: jtulach@107: @Test jtulach@107: public void start() throws Exception { jtulach@107: File lockFile = File.createTempFile("pref", ".tmp"); jtulach@107: int result = CLIHandlerBlocking.start(lockFile); jtulach@107: assertEquals("Show a failure" + H.sb, -10, result); jtulach@107: } jtulach@107: jtulach@107: private static final class H extends Handler { jtulach@107: static StringBuffer sb = new StringBuffer(); jtulach@107: jtulach@107: @Override jtulach@107: public void publish(LogRecord record) { jtulach@107: sb.append(record.getMessage()).append('\n'); jtulach@107: } jtulach@107: jtulach@107: @Override jtulach@107: public void flush() { jtulach@107: } jtulach@107: jtulach@107: @Override jtulach@107: public void close() throws SecurityException { jtulach@107: } jtulach@107: } // end of H jtulach@107: // END: test.capture.logs jtulach@107: }