package com.xiaoleilu.hutool.core.date; import org.junit.Assert; import org.junit.Test; import com.xiaoleilu.hutool.date.DateField; import com.xiaoleilu.hutool.date.DatePattern; import com.xiaoleilu.hutool.date.DateTime; import com.xiaoleilu.hutool.date.Month; import com.xiaoleilu.hutool.date.Season; /** * DateTime单元测试 * @author Looly * */ public class DateTimeTest { @Test public void datetimeTest(){ DateTime dateTime = new DateTime("2017-01-05 12:34:23", DatePattern.NORM_DATETIME_FORMAT); //年 int year = dateTime.year(); Assert.assertEquals(2017, year); //季度(非季节) Season season = dateTime.seasonEnum(); Assert.assertEquals(Season.SPRING, season); //月份 Month month = dateTime.monthEnum(); Assert.assertEquals(Month.JANUARY, month); //日 int day = dateTime.dayOfMonth(); Assert.assertEquals(5, day); } @Test public void mutableTest(){ DateTime dateTime = new DateTime("2017-01-05 12:34:23", DatePattern.NORM_DATETIME_FORMAT); //默认情况下DateTime为可变对象 DateTime offsite = dateTime.offsite(DateField.YEAR, 0); Assert.assertTrue(offsite == dateTime); //设置为不可变对象后变动将返回新对象 dateTime.setMutable(false); offsite = dateTime.offsite(DateField.YEAR, 0); Assert.assertFalse(offsite == dateTime); } @Test public void toStringTest(){ DateTime dateTime = new DateTime("2017-01-05 12:34:23", DatePattern.NORM_DATETIME_FORMAT); Assert.assertEquals("2017-01-05 12:34:23", dateTime.toString()); String dateStr = dateTime.toString("yyyy/MM/dd"); Assert.assertEquals("2017/01/05", dateStr); } }