package com.thoughtworks.testdox; import junit.framework.TestCase; public class NamePrettifierTest extends TestCase { private NamePrettifier namePrettifier; protected void setUp() throws Exception { super.setUp(); namePrettifier = new NamePrettifier(); } public void testTitleHasSensibleDefaults() { assertEquals( "Foo", namePrettifier.prettifyTestClass("FooTest")); assertEquals( "Foo", namePrettifier.prettifyTestClass("TestFoo")); assertEquals( "Foo", namePrettifier.prettifyTestClass("TestFooTest")); } public void testCaterForUserDefinedSuffix() { namePrettifier.setSuffix("TestCase"); namePrettifier.setPrefix(null); assertEquals( "Foo", namePrettifier.prettifyTestClass("FooTestCase")); assertEquals( "TestFoo", namePrettifier.prettifyTestClass("TestFoo")); assertEquals( "FooTest", namePrettifier.prettifyTestClass("FooTest")); } public void testCaterForUserDefinedPrefix() { namePrettifier.setSuffix(null); namePrettifier.setPrefix("XXX"); assertEquals( "Foo", namePrettifier.prettifyTestClass("XXXFoo")); assertEquals( "TestXXX", namePrettifier.prettifyTestClass("TestXXX")); assertEquals( "XXX", namePrettifier.prettifyTestClass("XXXXXX")); } public void testTestNameIsConvertedToASentence() { assertEquals( "This is a test", namePrettifier.prettifyTestMethod("testThisIsATest")); assertEquals( "Database_column_spec is set correctly", namePrettifier.prettifyTestMethod("testDatabase_column_specIsSetCorrectly")); assertEquals( "Database_column_spec is set correctly", namePrettifier.prettifyTestMethod("testdatabase_column_specIsSetCorrectly")); assertEquals( "Should calculate foo", namePrettifier.prettifyTestMethod("shouldCalculateFoo")); assertEquals( "Should coumn_spec be set to false", namePrettifier.prettifyTestMethod("shouldCoumn_specBeSetToFalse")); assertEquals( "Should set coumn_spec be to false", namePrettifier.prettifyTestMethod("shouldSetCoumn_specBeToFalse")); assertEquals( "Shouldcoumn_spec be set to false", namePrettifier.prettifyTestMethod("shouldcoumn_specBeSetToFalse")); } public void testBadMethodName(){ assertEquals( "", namePrettifier.prettifyTestMethod("test")); } public void testIsATestIsFalseForNonTestMethods() { assertFalse(namePrettifier.isATestMethod("setUp")); assertFalse(namePrettifier.isATestMethod("tearDown")); assertFalse(namePrettifier.isATestMethod("foo")); } public void testIsATestIsTrueForTestMethods() { assertTrue(namePrettifier.isATestMethod("fooTest")); assertTrue(namePrettifier.isATestMethod("shouldCalculateBars")); assertTrue(namePrettifier.isATestMethod("testFooBars")); } }