/*
* Copyright (c) 2002-2016, the original author or authors.
*
* This software is distributable under the BSD license. See the terms of the
* BSD license in the documentation provided with this software.
*
* http://www.opensource.org/licenses/bsd-license.php
*/
package jline.internal;
import jline.internal.Log.Level;
import org.junit.Before;
import org.junit.Test;
import java.io.ByteArrayOutputStream;
import java.io.PrintStream;
import static org.junit.Assert.assertEquals;
/**
* Tests for {@link Log}.
*/
public class LogTest
{
private ByteArrayOutputStream buff;
private PrintStream out;
@Before
public void setUp() throws Exception {
buff = new ByteArrayOutputStream();
out = new PrintStream(buff);
Log.setOutput(out);
}
@Test
public void renderArray() {
Log.render(out, new Object[]{"a", 1, "2", "b"});
assertEquals("[a,1,2,b]", buff.toString());
}
@Test
public void renderArrayWithThrowable() {
Log.render(out, new Object[]{"a", 1, "2", "b", new Throwable("TEST")});
assertEquals("[a,1,2,b,java.lang.Throwable: TEST]", buff.toString());
}
@Test
public void renderThrowable() {
Log.render(out, new Throwable("TEST"));
System.out.println(buff);
}
@Test
public void logSimple() {
Log.log(Level.DEBUG, "a", 1, "2", "b");
System.out.println(buff);
}
@Test
public void logWithThrowable() {
Log.log(Level.DEBUG, "a", 1, "2", "b", new Throwable("TEST"));
System.out.println(buff);
}
}