package net.time4j;
import java.util.Arrays;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.junit.runners.Parameterized;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
@RunWith(Parameterized.class)
public class LengthOfMonthTest {
@Parameterized.Parameters(name= "{index}: length-of-month({0})={1}")
public static Iterable<Object[]> data() {
return Arrays.asList(
new Object[][] {
{1, 31}, {2, 28}, {3, 31},
{4, 30}, {5, 31}, {6, 30},
{7, 31}, {8, 31}, {9, 30},
{10, 31}, {11, 30}, {12, 31}
}
);
}
private int month;
private int len;
public LengthOfMonthTest(
int month,
int len
) {
super();
this.month = month;
this.len = len;
}
@Test
public void lengthOfMonth() {
assertThat(
PlainDate.of(2014, this.month, 1).lengthOfMonth(),
is(this.len));
if (this.month == 2) {
assertThat(
PlainDate.of(2012, this.month, 1).lengthOfMonth(),
is(29));
}
}
}