}
public void testSerialMinuteGeneratorBigInterval() throws Exception {
DateValue dtStart = new DateTimeValueImpl(2011, 8, 8, 15, 30, 0);
Generator g = Generators.serialMinuteGenerator(100, dtStart);
DTBuilder b = new DTBuilder(dtStart);
assertTrue(g.generate(b));
assertEquals("2011-8-8 15:30:0", b.toString());
assertFalse(g.generate(b));
assertEquals("2011-8-8 15:30:0", b.toString());
++b.hour;
assertFalse(g.generate(b));
assertEquals("2011-8-8 16:30:0", b.toString());
++b.hour;
assertTrue(g.generate(b));
assertEquals("2011-8-8 17:10:0", b.toString());
assertFalse(g.generate(b));
++b.hour;
assertTrue(g.generate(b));
assertEquals("2011-8-8 18:50:0", b.toString());
assertFalse(g.generate(b));
++b.hour;
assertFalse(g.generate(b));
++b.hour;
assertTrue(g.generate(b));
assertEquals("2011-8-8 20:30:0", b.toString());
assertFalse(g.generate(b));
++b.hour;
assertFalse(g.generate(b));
++b.hour;
assertTrue(g.generate(b));
assertEquals("2011-8-8 22:10:0", b.toString());
assertFalse(g.generate(b));
++b.hour;
assertTrue(g.generate(b));
assertEquals("2011-8-8 23:50:0", b.toString());
assertFalse(g.generate(b));
assertEquals("2011-8-8 23:50:0", b.toString());
++b.day;
b.hour = 0;
assertFalse(g.generate(b));
++b.hour;
assertTrue(g.generate(b));
assertEquals("2011-8-9 1:30:0", b.toString());
b.day += 2;
b.hour = 6;
// Skipping over 3:10, 4:50, 6:30, 8:10, 9:50, 11:30, 13:10, 14:50, 16:30,
// 18:10, 19:50, 21:30, 23:10,
// on the 9th, and 0:50, 2:30, 4:10, 5:50, 7:30, 9:10, 10:50, 12:30,
// 14:10, 15:50, 17:30, 19:10, 20:50, 22:30,
// on the 10th, and 00:10, 1:50, 3:30, 5:10 on the 11th, to 6:50.
assertTrue(g.generate(b));
assertEquals("2011-8-11 6:50:0", b.toString());
}