package com.levelup.java.date; import static org.junit.Assert.assertFalse; import java.time.LocalDate; import java.time.Year; import java.util.Calendar; import java.util.GregorianCalendar; import org.joda.time.DateTime; import org.junit.Test; /** * This java example will demonstrates how determine leap year in java. * * @author Justin Musgrove * @see <a href='http://www.leveluplunch.com/java/examples/calculate-leap-year/'>Calculate leap year</a> * */ public class CalculateLeapYear { @Test public void calculate_leap_year_in_java_with_calendar () { Calendar cal = Calendar.getInstance(); cal.set(Calendar.YEAR, 2007); assertFalse(cal.getActualMaximum(Calendar.DAY_OF_YEAR) > 365); } @Test public void calculate_leap_year_in_java_with_gregorian_calendar () { GregorianCalendar cal = new GregorianCalendar(); assertFalse(cal.isLeapYear(2007)); } @Test public void calculate_leap_year_in_java_with_java8_date_time () { boolean validLeapYear = Year.of(2007).isLeap(); assertFalse(validLeapYear); // or boolean isLeapYear = LocalDate.ofYearDay(2007, 1).isLeapYear(); assertFalse(isLeapYear); } @Test public void calculate_leap_year_in_java_with_joda () { DateTime dateTime = new DateTime(); boolean isLeapYear = dateTime.withYear(2007).year().isLeap(); assertFalse(isLeapYear); } }