@Test
public void testTimeTriggerValidation() {
assertDeserializeFail(new ProtoTrigger.TimeTrigger("* * * ?"), "Cron entry must contain 5 or 6 fields.");
assertDeserializeFail(new ProtoTrigger.TimeTrigger("* * * * 1 ? *"), "Cron entry must contain 5 or 6 fields.");
assertDeserializeFail(new ProtoTrigger.TimeTrigger("* * * ? 1 ?"),
"'?' can only be specfied for Day-of-Month -OR- Day-of-Week.");
assertDeserializeFail(new ProtoTrigger.TimeTrigger("2 6 ? * 0,1,4,5"),
"Day-of-Week values must be between 1 and 7");
GSON.toJson(new ProtoTrigger.TimeTrigger("* * * 1 *"), Trigger.class);
GSON.toJson(new ProtoTrigger.TimeTrigger("* * 1 1 *"), Trigger.class);
GSON.toJson(new ProtoTrigger.TimeTrigger("* * * 1 1"), Trigger.class);
assertDeserializeFail(new ProtoTrigger.TimeTrigger("* * * * 1 *"));
assertDeserializeFail(new ProtoTrigger.TimeTrigger("* * * * 1 1"));
assertDeserializeFail(new ProtoTrigger.TimeTrigger("* * * 1 1 *"));
GSON.toJson(new ProtoTrigger.TimeTrigger("2 6 ? * 1,4,5"), Trigger.class);
GSON.toJson(new ProtoTrigger.TimeTrigger("* * ? 1 1"), Trigger.class);
GSON.toJson(new ProtoTrigger.TimeTrigger("* * * 1 ?"), Trigger.class);
GSON.toJson(new ProtoTrigger.TimeTrigger("* * ? 1 *"), Trigger.class);
GSON.toJson(new ProtoTrigger.TimeTrigger("* * * ? 1 1"), Trigger.class);
GSON.toJson(new ProtoTrigger.TimeTrigger("* * * * 1 ?"), Trigger.class);
GSON.toJson(new ProtoTrigger.TimeTrigger("* * * ? 1 *"), Trigger.class);
}