package com.googlecode.tawus.addons.components; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; import org.apache.tapestry5.test.TapestryTestCase; import org.testng.annotations.Test; public class DateDisplayTest extends TapestryTestCase { @Test public void test_get_style_works_for_styles() { DateDisplay component = new DateDisplay(); assertEquals(component.getStyle("long"), DateFormat.LONG); assertEquals(component.getStyle("short"), DateFormat.SHORT); assertEquals(component.getStyle("full"), DateFormat.FULL); assertEquals(component.getStyle("medium"), DateFormat.MEDIUM); } @Test public void test_get_style_works_for_styles_with_no_suffix() { Locale locale = defaultLocale(); DateDisplay component = new DateDisplay("medium", new Date(), locale); DateFormat dateFormat = component.getDateFormat(); assertEquals(dateFormat, DateFormat.getDateInstance(DateFormat.MEDIUM, locale)); } @Test public void test_get_style_works_for_styles_with_time_suffix() { Locale locale = defaultLocale(); DateDisplay component = new DateDisplay("short_t", new Date(), locale); DateFormat dateFormat = component.getDateFormat(); assertEquals(dateFormat, DateFormat.getTimeInstance(DateFormat.SHORT, locale)); } @Test public void test_get_style_works_for_styles_with_date_time_suffix() { Locale locale = defaultLocale(); DateDisplay component = new DateDisplay("long_dt", new Date(), locale); DateFormat dateFormat = component.getDateFormat(); assertEquals(dateFormat, DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale)); } @Test public void test_get_style_works_for_patterns() { Locale locale = defaultLocale(); String pattern = "dd/mm/yyyy"; DateDisplay component = new DateDisplay(pattern, new Date(), locale); DateFormat dateFormat = component.getDateFormat(); assertEquals(dateFormat, new SimpleDateFormat(pattern, locale)); } @Test public void test_get_style_works_for_patterns_with_underscores() { Locale locale = defaultLocale(); String pattern = "dd_mm_yyyy"; DateDisplay component = new DateDisplay(pattern, new Date(), locale); DateFormat dateFormat = component.getDateFormat(); assertEquals(dateFormat, new SimpleDateFormat(pattern, locale)); } Locale defaultLocale() { return Locale.getDefault(); } }