blob: ea20898eff94b83ad354c14ea07c2e756f14941b [file] [log] [blame]
/*
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
*/
package org.apache.maven.shared.io.logging;
import java.io.PrintWriter;
import java.io.StringWriter;
import junit.framework.TestCase;
public class DefaultMessageHolderTest extends TestCase {
// MessageHolder newMessage();
// int size();
// String render();
public void testNewMessageIncrementsSizeWhenEmpty() {
MessageHolder mh = new DefaultMessageHolder();
assertEquals(0, mh.size());
MessageHolder test = mh.newMessage();
assertSame(mh, test);
assertEquals(1, mh.size());
assertEquals("", mh.render());
}
// MessageHolder append( CharSequence messagePart );
// int size();
// String render();
public void testAppendCreatesNewMessageIfNoneCurrent() {
MessageHolder mh = new DefaultMessageHolder();
assertEquals(0, mh.size());
MessageHolder test = mh.append("test");
assertSame(mh, test);
assertEquals(1, mh.size());
assertEquals("[1] [INFO] test", mh.render());
}
// MessageHolder append( Throwable error );
// int size();
// String render();
public void testAppendErrorCreatesNewMessageIfNoneCurrent() {
MessageHolder mh = new DefaultMessageHolder();
assertEquals(0, mh.size());
NullPointerException npe = new NullPointerException();
MessageHolder test = mh.append(npe);
assertSame(mh, test);
assertEquals(1, mh.size());
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
npe.printStackTrace(pw);
assertEquals("[1] [INFO] Error:\n" + sw.toString(), mh.render());
}
// MessageHolder newMessage();
// MessageHolder append( CharSequence messagePart );
// int size();
// String render();
public void testNewMessageThenAppendOnlyIncrementsSizeByOne() {
MessageHolder mh = new DefaultMessageHolder();
assertEquals(0, mh.size());
MessageHolder test = mh.newMessage();
assertSame(mh, test);
test = mh.append("test");
assertSame(mh, test);
assertEquals(1, mh.size());
assertEquals("[1] [INFO] test", mh.render());
}
// MessageHolder newMessage();
// MessageHolder append( CharSequence messagePart );
// MessageHolder append( CharSequence messagePart );
// int size();
// String render();
public void testNewMessageThenAppendTwiceOnlyIncrementsSizeByOne() {
MessageHolder mh = new DefaultMessageHolder();
assertEquals(0, mh.size());
MessageHolder test = mh.newMessage();
assertSame(mh, test);
test = mh.append("test");
assertSame(mh, test);
test = mh.append(" again");
assertSame(mh, test);
assertEquals(1, mh.size());
assertEquals("[1] [INFO] test again", mh.render());
}
// MessageHolder newMessage();
// MessageHolder append( CharSequence messagePart );
// MessageHolder append( Throwable error );
// int size();
// String render();
public void testNewMessageThenAppendBothMessageAndErrorOnlyIncrementsSizeByOne() {
MessageHolder mh = new DefaultMessageHolder();
assertEquals(0, mh.size());
MessageHolder test = mh.newMessage();
assertSame(mh, test);
test = mh.append("test");
assertSame(mh, test);
NullPointerException npe = new NullPointerException();
test = mh.append(npe);
assertSame(mh, test);
assertEquals(1, mh.size());
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
npe.printStackTrace(pw);
assertEquals("[1] [INFO] test\nError:\n" + sw.toString(), mh.render());
}
// MessageHolder addMessage( CharSequence messagePart );
// int size();
// String render();
public void testAddMessageIncrementsSizeByOne() {
MessageHolder mh = new DefaultMessageHolder();
MessageHolder check = mh.addMessage("test");
assertSame(mh, check);
assertEquals(1, mh.size());
assertEquals("[1] [INFO] test", mh.render());
}
// MessageHolder addMessage( CharSequence messagePart );
// int size();
// String render();
public void testAddMessageTwiceIncrementsSizeByTwo() {
MessageHolder mh = new DefaultMessageHolder();
MessageHolder check = mh.addMessage("test");
assertSame(mh, check);
check = mh.addMessage("test2");
assertSame(mh, check);
assertEquals(2, mh.size());
assertEquals("[1] [INFO] test\n\n[2] [INFO] test2", mh.render());
}
// MessageHolder addMessage( CharSequence messagePart, Throwable error );
// int size();
// String render();
public void testAddMessageWithErrorIncrementsSizeByOne() {
MessageHolder mh = new DefaultMessageHolder();
NullPointerException npe = new NullPointerException();
MessageHolder check = mh.addMessage("test", npe);
assertSame(mh, check);
assertEquals(1, mh.size());
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
npe.printStackTrace(pw);
assertEquals("[1] [INFO] test\nError:\n" + sw.toString(), mh.render());
}
// MessageHolder addMessage( CharSequence messagePart, Throwable error );
// MessageHolder addMessage( CharSequence messagePart );
// int size();
// String render();
public void testAddMessageWithErrorThenWithJustMessageIncrementsSizeByTwo() {
MessageHolder mh = new DefaultMessageHolder();
NullPointerException npe = new NullPointerException();
MessageHolder check = mh.addMessage("test", npe);
assertSame(mh, check);
check = mh.addMessage("test2");
assertSame(mh, check);
assertEquals(2, mh.size());
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
npe.printStackTrace(pw);
assertEquals("[1] [INFO] test\nError:\n" + sw.toString() + "\n\n[2] [INFO] test2", mh.render());
}
// MessageHolder addMessage( Throwable error );
// int size();
// String render();
public void testAddMessageWithJustErrorIncrementsSizeByOne() {
MessageHolder mh = new DefaultMessageHolder();
NullPointerException npe = new NullPointerException();
MessageHolder check = mh.addMessage(npe);
assertSame(mh, check);
assertEquals(1, mh.size());
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
npe.printStackTrace(pw);
assertEquals("[1] [INFO] Error:\n" + sw.toString(), mh.render());
}
// boolean isEmpty();
public void testIsEmptyAfterConstruction() {
assertTrue(new DefaultMessageHolder().isEmpty());
}
// boolean isEmpty();
public void testIsNotEmptyAfterConstructionAndNewMessageCall() {
assertFalse(new DefaultMessageHolder().newMessage().isEmpty());
}
public void testAppendCharSequence() {
MessageHolder mh = new DefaultMessageHolder();
mh.newMessage().append(new StringBuffer("This is a test"));
assertTrue(mh.render().indexOf("This is a test") > -1);
}
}