TimesheetExportPage extends AbstractReportPage<ReportCriteria> implements AjaxEventListener { @Override protected UserSelectedCriteria getUserSelectedCriteria() { return initUserCriteria(); } TimesheetExportPage();  TimesheetExportPage(Calendar forMonth); Boolean ajaxEventReceived(AjaxEvent ajaxEvent);  }
@Test public void submit() { FormTester formTester = tester.newFormTester("printSelectionFrame:printSelectionFrame_body:blueBorder:blueBorder_body:selectionForm:criteriaForm"); formTester.selectMultiple("billableProjectGroup", new int[]{0, 2}); formTester.setValue("signOff", "true"); formTester.submit("store"); tester.assertNoErrorMessage(); assertEquals(Boolean.TRUE, reportCriteria.getUserSelectedCriteria().getCustomParameters().get(TimesheetExportParameter.INCL_SIGN_OFF.name())); assertEquals(2, reportCriteria.getUserSelectedCriteria().getProjects().size()); Integer id = reportCriteria.getUserSelectedCriteria().getProjects().get(1).getProjectId(); if (id != 0 && id != 2) { fail("id should be 0 or 2"); } }