dion 02/04/14 09:17:28
Added: src/test/org/apache/maven/cvslib ChangeLogEntryTest.java
Log:
Initial tests for cvslib code: ChangeLogEntry only at this point
Revision Changes Path
1.1
jakarta-turbine-maven/src/test/org/apache/maven/cvslib/ChangeLogEntryTest.java
Index: ChangeLogEntryTest.java
===================================================================
/*
* ChangeLogEntryTest.java
* JUnit based test
*
* Created on 14 April 2002, 18:47
*/
package org.apache.maven.cvslib;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Enumeration;
import java.util.Vector;
import junit.framework.Test;
import junit.framework.TestCase;
import junit.framework.TestSuite;
import junit.textui.TestRunner;
/**
* Tests for the {@link ChangeLogEntry} class
*
* @author dion
* @version $Id: ChangeLogEntryTest.java,v 1.1 2002/04/14 16:17:28 dion Exp $
*/
public class ChangeLogEntryTest extends TestCase {
/** the {@link ChangeLogEntry} used for testing */
private ChangeLogEntry instance;
/**
* Create a test with the given name
* @param testName the name of the test
*/
public ChangeLogEntryTest(String testName) {
super(testName);
}
/**
* Run the test using the {@link TestRunner}
* @param args command line provided arguments
*/
public static void main(String[] args) {
TestRunner.run(suite());
}
/**
* Create a test suite for this class
* @return a {@link TestSuite} for all tests in this class
*/
public static Test suite() {
return new TestSuite(ChangeLogEntryTest.class);
}
/**
* Initialize per test data
*/
public void setUp() throws Exception
{
instance = new ChangeLogEntry();
instance.setAuthor("dion");
instance.setComment("comment");
instance.setDate("2002/04/01");
}
/**
* Test of addFile methods: using ChangeLogFile
*/
public void testAddFileWithFile() {
ChangeLogFile file = new ChangeLogFile("maven:dummy");
instance.addFile(file);
assertTrue("File name not found in list",
instance.toString().indexOf("maven:dummy") != -1 );
}
/**
* Test of addFile methods: using file & revision
*/
public void testAddFileWithFileAndRevision() {
instance.addFile("maven:dummy", "x.y");
assertTrue("File name not found in list",
instance.toString().indexOf("maven:dummy") != -1);
assertTrue("Revision not found in list",
instance.toString().indexOf("x.y") != -1);
}
/**
* Test of addFile method file, revision and previous revision
*/
public void testAddFileWithFileRevisionAndPrevious() {
instance.addFile("maven:dummy", "x.y", "a.b");
assertTrue("File name not found in list",
instance.toString().indexOf("maven:dummy") != -1);
assertTrue("Revision not found in list",
instance.toString().indexOf("x.y") != -1);
assertTrue("Previous revision not found in list",
instance.toString().indexOf("a.b") != -1);
}
/**
* Test of toString method
*/
public void testToString() {
//dion, Mon Apr 01 00:00:00 EST 2002, [], comment
String value = instance.toString();
assertTrue("author not found in string", value.indexOf("dion") != -1);
assertTrue("comment not found in string",
value.indexOf("comment") != -1);
assertTrue("date not found in string",
value.indexOf("Mon Apr 01") != -1);
assertTrue("empty file list not found in string",
value.indexOf("[]") != -1);
}
/**
* Test of toXML method
*/
public void testToXML() {
String value = instance.toXML();
String trimmedValue = value.trim();
assertTrue("XML doesn't start with changelog-entry",
trimmedValue.startsWith("<changelog-entry>"));
assertTrue("XML doesn't contain date",
value.indexOf("<date>2002-04-01</date>") != -1);
assertTrue("XML doesn't contain author CDATA",
value.indexOf("<author><![CDATA[dion]]></author>") != -1);
assertTrue("XML doesn't contain comment CDATA",
value.indexOf("<msg><![CDATA[comment]]></msg>") != -1);
}
/**
* Test of getAuthor method
*/
public void testGetAuthor() {
assertEquals("Author value not retrieved correctly", "dion",
instance.getAuthor());
}
/**
* Test of setAuthor method
*/
public void testSetAuthor() {
instance.setAuthor("maven:dion");
assertEquals("Author not set correctly", "maven:dion",
instance.getAuthor());
}
/**
* Test of getComment method
*/
public void testGetComment() {
assertEquals("Comment value not retrieved correctly", "comment",
instance.getComment());
}
/**
* Test of setComment method
*/
public void testSetComment() {
instance.setComment("maven:comment");
assertEquals("Comment not set correctly", "maven:comment",
instance.getComment());
}
/**
* Test of getDate method
*/
public void testGetDate() {
Calendar cal = Calendar.getInstance();
cal.set(2002, 3, 1, 0, 0, 0);
cal.set(Calendar.MILLISECOND, 0);
System.err.println(instance.getDate().getTime() + ", " +
cal.getTimeInMillis());
assertEquals("Date value not retrieved correctly", 0,
instance.getDate().compareTo(cal.getTime()));
}
/**
* Test of setDate method with Date object
*/
public void testSetDate() {
Calendar cal = Calendar.getInstance();
Date date = cal.getTime();
instance.setDate(date);
assertEquals("Date value not set correctly", date, instance.getDate());
}
/**
* Test of setDate method with String
*/
public void testSetDateFromString() {
instance.setDate("2002/03/04");
Calendar cal = Calendar.getInstance();
cal.set(2002, 2, 4, 0, 0, 0);
cal.set(Calendar.MILLISECOND, 0);
assertEquals("Date value not set correctly from a string",
cal.getTime(), instance.getDate());
}
/**
* Test of getDateFormatted method
*/
public void testGetDateFormatted() {
assertEquals("Date not formatted correctly", "2002-04-01",
instance.getDateFormatted());
}
// Add test methods here, they have to start with 'test' name.
// for example:
// public void testHello() {}
}