package junit.tests.framework;
import junit.framework.ComparisonFailure;
import junit.framework.TestCase;
public class ComparisonFailureTest extends TestCase {
// Most of the tests are in ComparisonCompactorTest
public void testConnection() {
ComparisonFailure failure = new ComparisonFailure("warning", "Mary had a little lamb", "Mary had the little lamb");
assertEquals("warning expected:<Mary had [a] little lamb> but was:<Mary had [the] little lamb>", failure.getMessage());
}
// This is like an instanceof test.
public void testThrowing() {
try {
assertEquals("a", "b");
} catch (ComparisonFailure e) {
return;
}
fail();
}
public void testExceptionToStringWithMessage() {
try {
assertEquals("woops!", "a", "b");
} catch (ComparisonFailure e) {
if (!e.toString().startsWith("junit.framework.ComparisonFailure: woops! expected:<")) {
fail("Unexpected message: " + e);
}
return;
}
fail();
}
public void testExceptionToStringWithoutMessage() {
try {
assertEquals("a", "b");
} catch (ComparisonFailure e) {
if (!e.toString().startsWith("junit.framework.ComparisonFailure: expected:<")) {
fail("Unexpected message: " + e);
}
return;
}
fail();
}
}