package org.cacert.gigi.util;
import java.text.ParseException;
+import java.util.Calendar;
import java.util.Date;
+import java.util.GregorianCalendar;
import org.cacert.gigi.GigiApiException;
import org.cacert.gigi.database.DatabaseConnection;
} else {
try {
Date d = DateSelector.getDateFormat().parse(date);
- if (d.getTime() > System.currentTimeMillis()) {
+ Calendar gc = GregorianCalendar.getInstance();
+ gc.setTimeInMillis(System.currentTimeMillis());
+ gc.add(Calendar.HOUR_OF_DAY, 12);
+ if (d.getTime() > gc.getTimeInMillis()) {
gae.mergeInto(new GigiApiException("You must not enter a date in the future."));
}
} catch (ParseException e) {
import java.net.URLEncoder;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
+import java.util.Calendar;
import java.util.Date;
import java.util.regex.Pattern;
assertTrue(error, !error.startsWith("</div>"));
}
+ @Test
+ public void testAssureFormFutureOK() throws IOException {
+ SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+ Calendar c = Calendar.getInstance();
+ c.setTimeInMillis(System.currentTimeMillis());
+ c.add(Calendar.HOUR_OF_DAY, 12);
+
+ String error = getError("date=" + sdf.format(new Date(c.getTimeInMillis())) + "&location=testcase&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10");
+ assertNull(error);
+ }
+
@Test
public void testAssureFormNoLoc() throws IOException {
String error = getError("date=2000-01-01&location=a&certify=1&rules=1&CCAAgreed=1&assertion=1&points=10");