package play.templates; import static org.junit.Assert.*; import static org.fest.assertions.Assertions.assertThat; import java.util.ArrayList; import java.util.List; import org.junit.After; import org.junit.AfterClass; import org.junit.Before; import org.junit.BeforeClass; import org.junit.Test; public class JavaExtensionsTest { @BeforeClass public static void setUpBeforeClass() throws Exception { } @AfterClass public static void tearDownAfterClass() throws Exception { } @Before public void setUp() throws Exception { } @After public void tearDown() throws Exception { } //Trivial no test @Test public void testEnumValues() {} @Test public void testContains() { String[] testArray = {"a", "b", "c"}; assertTrue(JavaExtensions.contains(testArray, "a")); assertFalse(JavaExtensions.contains(testArray, "1")); } //TODO @Test public void testAsXml() {} @Test public void testAdd() { String[] testArray = {"a", "b", "c"}; assertThat(JavaExtensions.add(new String[]{"a", "b"}, "c")).hasSize(3).contains(testArray); } @Test public void testRemove() { String[] testArray = {"a", "b", "c"}; assertThat(JavaExtensions.remove(testArray, "c")).hasSize(2).contains("a", "b"); } //TODO @Test public void testToStringClosure() {} @Test public void testCapitalizeWords() { assertThat(JavaExtensions.capitalizeWords("This is a small test!")).as("This Is A Small Test!"); } @Test public void testPad() { assertThat(JavaExtensions.pad("12345", 4)).as("12345"); assertThat(JavaExtensions.pad("12345", 5)).as("12345"); assertThat(JavaExtensions.pad("12345", 6)).as("12345 "); assertThat(JavaExtensions.pad("12345", 8)).as("12345   "); } //TODO @Test public void testEscapeHtml() {} //TODO @Test public void testEscapeJavaScript() {} //TODO @Test public void testRawObject() {} //TODO @Test public void testRawObjectObject() {} //TODO @Test public void testAsAttrMapObject() {} //TODO @Test public void testAsAttrMap() {} //TODO @Test public void testEval() {} //TODO @Test public void testEscapeXml() {} //TODO @Test public void testFormatNumberString() {} //TODO @Test public void testFormatDate() {} //TODO @Test public void testFormatDateString() {} //TODO @Test public void testFormatDateStringString() {} //TODO @Test public void testFormatDateStringStringString() {} //TODO @Test public void testPage() {} //TODO @Test public void testSinceDate() {} //TODO @Test public void testSinceDateBoolean() {} //TODO @Test public void testAsdateLongString() {} //TODO @Test public void testAsdateLongStringString() {} //TODO @Test public void testAsdateLongStringStringString() {} //TODO @Test public void testNl2br() {} //TODO @Test public void testUrlEncode() {} //TODO @Test public void testFormatSize() {} //TODO @Test public void testFormatCurrencyNumberString() {} //TODO @Test public void testFormatCurrencyNumberLocale() {} //TODO @Test public void testAddSlashes() {} //TODO @Test public void testCapFirst() {} //TODO @Test public void testCapAll() {} //TODO @Test public void testCut() {} //TODO @Test public void testDivisibleBy() {} //TODO @Test public void testEscape() {} @Test public void testPluralizeNumber() { assertEquals("s", JavaExtensions.pluralize(0)); assertEquals("", JavaExtensions.pluralize(1)); assertEquals("s", JavaExtensions.pluralize(2)); } @Test public void testPluralizeCollection() { List <String> testCollection = new ArrayList <String>(); assertEquals("s", JavaExtensions.pluralize(testCollection)); testCollection.add("1"); assertEquals("", JavaExtensions.pluralize(testCollection)); testCollection.add("2"); assertEquals("s", JavaExtensions.pluralize(testCollection)); } @Test public void testPluralizeNumberString() { String plural = "n"; assertEquals(plural, JavaExtensions.pluralize(0, plural)); assertEquals("", JavaExtensions.pluralize(1, plural)); assertEquals(plural, JavaExtensions.pluralize(2, plural)); } @Test public void testPluralizeCollectionString() { String plural = "n"; List <String> testCollection = new ArrayList <String>(); assertEquals(plural, JavaExtensions.pluralize(testCollection, plural)); testCollection.add("1"); assertEquals("", JavaExtensions.pluralize(testCollection, plural)); testCollection.add("2"); assertEquals(plural, JavaExtensions.pluralize(testCollection, plural)); } @Test public void testPluralizeNumberStringArray() { String[] forms = {"Test", "Tests"}; assertEquals(forms[1], JavaExtensions.pluralize(0, forms)); assertEquals(forms[0], JavaExtensions.pluralize(1, forms)); assertEquals(forms[1], JavaExtensions.pluralize(2, forms)); } @Test public void testPluralizeCollectionStringArray() { String[] forms = {"Test", "Tests"}; List <String> testCollection = new ArrayList <String>(); assertEquals(forms[1], JavaExtensions.pluralize(testCollection, forms)); testCollection.add("1"); assertEquals(forms[0], JavaExtensions.pluralize(testCollection, forms)); testCollection.add("2"); assertEquals(forms[1], JavaExtensions.pluralize(testCollection, forms)); } //TODO @Test public void testNoAccents() {} //TODO @Test public void testSlugifyString() {} //TODO @Test public void testSlugifyStringBoolean() {} //TODO @Test public void testCamelCase() {} @Test public void testYesno() { String yes = "Y"; String no = "N"; String[] yesNo = {yes, no}; assertEquals(no, JavaExtensions.yesno(null, yesNo)); assertEquals(no, JavaExtensions.yesno(Boolean.FALSE, yesNo)); assertEquals(yes, JavaExtensions.yesno(Boolean.TRUE, yesNo)); //String assertEquals(no, JavaExtensions.yesno("", yesNo)); assertEquals(yes, JavaExtensions.yesno("Test", yesNo)); //Number assertEquals(no, JavaExtensions.yesno(Long.valueOf(0), yesNo)); assertEquals(yes, JavaExtensions.yesno(Long.valueOf(1), yesNo)); assertEquals(yes, JavaExtensions.yesno(Long.valueOf(-1), yesNo)); //Collection List <String> testCollection = new ArrayList <String>(); assertEquals(no, JavaExtensions.yesno(testCollection, yesNo)); testCollection.add("1"); assertEquals(yes, JavaExtensions.yesno(testCollection, yesNo)); } @Test public void testLast() { List <String> testCollection = new ArrayList <String>(); testCollection.add("1"); testCollection.add("2"); assertEquals("2", JavaExtensions.last(testCollection)); } @Test public void testJoin() { List <String> testCollection = new ArrayList <String>(); testCollection.add("1"); testCollection.add("2"); assertEquals("1, 2", JavaExtensions.join(testCollection, ", ")); } }