intermediate.AboutDates Maven / Gradle / Ivy
package intermediate;
import com.sandwich.koan.Koan;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import static com.sandwich.koan.constant.KoanConstants.__;
import static com.sandwich.util.Assert.assertEquals;
public class AboutDates {
private Date date = new Date(100010001000L);
@Koan
public void dateToString() {
assertEquals(date.toString(), __);
}
@Koan
public void changingDateValue() {
int oneHourInMiliseconds = 3600000;
date.setTime(date.getTime() + oneHourInMiliseconds);
assertEquals(date.toString(), __);
}
@Koan
public void usingCalendarToChangeDates() {
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.MONTH, 1);
assertEquals(cal.getTime().toString(), __);
}
@Koan
public void usingRollToChangeDatesDoesntWrapOtherFields() {
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.roll(Calendar.MONTH, 12);
assertEquals(cal.getTime().toString(), __);
}
@Koan
public void usingDateFormatToFormatDate() {
String formattedDate = DateFormat.getDateInstance().format(date);
assertEquals(formattedDate, __);
}
@Koan
public void usingDateFormatToFormatDateShort() {
String formattedDate = DateFormat.getDateInstance(DateFormat.SHORT).format(date);
assertEquals(formattedDate, __);
}
@Koan
public void usingDateFormatToFormatDateFull() {
String formattedDate = DateFormat.getDateInstance(DateFormat.FULL).format(date);
// There is also DateFormat.MEDIUM and DateFormat.LONG... you get the idea ;-)
assertEquals(formattedDate, __);
}
@Koan
public void usingDateFormatToParseDates() throws ParseException {
DateFormat dateFormat = new SimpleDateFormat("MM-dd-yyyy");
Date date2 = dateFormat.parse("01-01-2000");
assertEquals(date2.toString(), __);
// What happened to the time? What do you need to change to keep the time as well?
}
}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy