public FormTester select(String formComponentId, int index) { String formRelativeComponentId = getFormRelativeComponentId(formComponentId); return super.select(formRelativeComponentId, index); }
public void testEditBasic() { // print(tester.getLastRenderedPage(), true, true); FormTester ft = tester.newFormTester("form"); ft.select("panel:language", 0); ft.setValue("panel:metadataURL", "http://www.geoserver.org/test"); ft.select("panel:metadataURLType", 0); ft.submit(); // print(tester.getLastRenderedPage(), true, true); tester.assertModelValue("form:panel:language", "bul"); tester.assertModelValue("form:panel:metadataURL", "http://www.geoserver.org/test"); tester.assertModelValue("form:panel:metadataURLType", "application/vnd.ogc.csw.GetRecordByIdResponse_xml"); }
public void testExisting() { final LayerInfo layer = getCatalog().getLayerByName(MockData.PONDS.getLocalPart()); FormTestPage page = new FormTestPage(new ComponentBuilder() { public Component buildComponent(String id) { return new WMSLayerConfig(id, new Model(layer)); } } ); tester.startPage(page); tester.assertRenderedPage(FormTestPage.class); tester.assertComponent("form", Form.class); tester.assertComponent("form:panel:styles:defaultStyle", DropDownChoice.class); // check selecting something else works StyleInfo target = ((List<StyleInfo>) new StylesModel().getObject()).get(0); FormTester ft = tester.newFormTester("form"); ft.select("panel:styles:defaultStyle", 0); ft.submit(); tester.assertModelValue("form:panel:styles:defaultStyle", target); }
ft.select("workspacePanel:border:border_body:paramValue", 2); tester.executeAjaxEvent( "dataStoreForm:workspacePanel:border:border_body:paramValue", "change"); "parametersPanel:parameters:0:parameterPanel:border:border_body:paramValue", "file://" + new File("./target").getCanonicalPath()); ft.select("workspacePanel:border:border_body:paramValue", 2); ft.submit("save"); tester.assertNoFeedbackMessage(FeedbackMessage.ERROR);
public void testUrlLinkModified() { // print(tester.getLastRenderedPage(), true, true); final FormTester requestFormTester = tester.newFormTester("demoRequestsForm"); final String requestName = "WMS_describeLayer.url"; requestFormTester.select("demoRequestsList", 1); /* * There's an AjaxFormSubmitBehavior attached to onchange so force it */ tester.executeAjaxEvent("demoRequestsForm:demoRequestsList", "onchange"); tester.assertModelValue("demoRequestsForm:demoRequestsList", requestName); final String modifiedUrl = "http://modified/url"; TextField url = (TextField) tester.getComponentFromLastRenderedPage("demoRequestsForm:url"); url.setModelValue(new String[] { modifiedUrl }); assertEquals(modifiedUrl, url.getValue()); final boolean isAjax = true; tester.clickLink("demoRequestsForm:submit", isAjax); tester.assertVisible("responseWindow"); IModel model = tester.getLastRenderedPage().getDefaultModel(); assertTrue(model.getObject() instanceof DemoRequest); DemoRequest req = (DemoRequest) model.getObject(); String requestUrl = req.getRequestUrl(); assertEquals(modifiedUrl, requestUrl); }
formTester.select("frequency:type", 1); tester.executeAjaxEvent("batchForm:frequency:type", "change"); tester.assertVisible("batchForm:frequency:time"); formTester.select("frequency:type", 2); tester.executeAjaxEvent("batchForm:frequency:type", "change"); tester.assertVisible("batchForm:frequency:time"); tester.assertInvisible("batchForm:frequency:dayOfMonth"); tester.assertInvisible("batchForm:frequency:custom"); formTester.select("frequency:dayOfWeek", 2); formTester.submit("apply"); assertEquals("0 34 12 ? * Wed", batchModel.getObject().getFrequency()); formTester.select("frequency:type", 3); tester.executeAjaxEvent("batchForm:frequency:type", "change"); tester.assertVisible("batchForm:frequency:time"); tester.assertVisible("batchForm:frequency:dayOfMonth"); tester.assertInvisible("batchForm:frequency:custom"); formTester.select("frequency:dayOfMonth", 5); formTester.submit("apply"); assertEquals("0 34 12 6 * ?", batchModel.getObject().getFrequency()); formTester.select("frequency:type", 4); tester.executeAjaxEvent("batchForm:frequency:type", "change"); tester.assertInvisible("batchForm:frequency:time");
public void testUrlLinkUnmodified() { // print(tester.getLastRenderedPage(), true, true); final FormTester requestFormTester = tester.newFormTester("demoRequestsForm"); final String requestName = "WMS_describeLayer.url"; requestFormTester.select("demoRequestsList", 1); /* * There's an AjaxFormSubmitBehavior attached to onchange so force it */ tester.executeAjaxEvent("demoRequestsForm:demoRequestsList", "onchange"); tester.assertModelValue("demoRequestsForm:demoRequestsList", requestName); final boolean isAjax = true; tester.clickLink("demoRequestsForm:submit", isAjax); tester.assertVisible("responseWindow"); IModel model = tester.getLastRenderedPage().getDefaultModel(); assertTrue(model.getObject() instanceof DemoRequest); DemoRequest req = (DemoRequest) model.getObject(); assertEquals(demoDir, req.getDemoDir()); String requestFileName = req.getRequestFileName(); String requestUrl = req.getRequestUrl(); String requestBody = req.getRequestBody(); assertEquals(requestName, requestFileName); assertNotNull(requestUrl); assertNull(requestBody); }
@Test public void testNewFromTemplate() { login(); ConfigurationsPage page = new ConfigurationsPage(); tester.startPage(page); tester.clickLink("addNew"); tester.assertComponent("dialog:dialog:content:form:userPanel", DropDownPanel.class); FormTester formTester = tester.newFormTester("dialog:dialog:content:form"); formTester.select("userPanel:dropdown", 0); tester.executeAjaxEvent("dialog:dialog:content:form:submit", "click"); tester.assertRenderedPage(ConfigurationPage.class); tester.assertModelValue("configurationForm:description", "template description"); }
@Test public void testUrlLinkModified() { // print(tester.getLastRenderedPage(), true, true); final FormTester requestFormTester = tester.newFormTester("demoRequestsForm"); final String requestName = "WMS_describeLayer.url"; requestFormTester.select("demoRequestsList", 1); /* * There's an AjaxFormSubmitBehavior attached to onchange so force it */ tester.executeAjaxEvent("demoRequestsForm:demoRequestsList", "change"); tester.assertModelValue("demoRequestsForm:demoRequestsList", requestName); final String modifiedUrl = "http://modified/url"; TextField url = (TextField) tester.getComponentFromLastRenderedPage("demoRequestsForm:url"); url.setModelValue(new String[] {modifiedUrl}); assertEquals(modifiedUrl, url.getValue()); final boolean isAjax = true; tester.clickLink("demoRequestsForm:submit", isAjax); tester.assertVisible("responseWindow"); IModel model = tester.getLastRenderedPage().getDefaultModel(); assertTrue(model.getObject() instanceof DemoRequest); DemoRequest req = (DemoRequest) model.getObject(); String requestUrl = req.getRequestUrl(); assertEquals(modifiedUrl, requestUrl); }
public void testUrlLinkSelected() { // print(tester.getLastRenderedPage(), true, true); final FormTester requestFormTester = tester.newFormTester("demoRequestsForm"); final String requestName = "WMS_describeLayer.url"; requestFormTester.select("demoRequestsList", 1); /* * There's an AjaxFormSubmitBehavior attached to onchange so force it */ tester.executeAjaxEvent("demoRequestsForm:demoRequestsList", "onchange"); tester.assertModelValue("demoRequestsForm:demoRequestsList", requestName); final boolean isAjax = true; tester.clickLink("demoRequestsForm:submit", isAjax); tester.assertVisible("responseWindow"); IModel model = tester.getLastRenderedPage().getDefaultModel(); assertTrue(model.getObject() instanceof DemoRequest); DemoRequest req = (DemoRequest) model.getObject(); assertEquals(demoDir, req.getDemoDir()); String requestFileName = req.getRequestFileName(); String requestUrl = req.getRequestUrl(); String requestBody = req.getRequestBody(); assertEquals(requestName, requestFileName); assertNotNull(requestUrl); assertNull(requestBody); }
formTester.select("gml32:mimeTypeToForce", 2); tester.executeAjaxEvent("form:gml32:mimeTypeToForce", "change"); formTester = tester.newFormTester("form");
@Test public void testUrlLinkSelected() { // print(tester.getLastRenderedPage(), true, true); final FormTester requestFormTester = tester.newFormTester("demoRequestsForm"); final String requestName = "WMS_describeLayer.url"; requestFormTester.select("demoRequestsList", 1); /* * There's an AjaxFormSubmitBehavior attached to onchange so force it */ tester.executeAjaxEvent("demoRequestsForm:demoRequestsList", "change"); tester.assertModelValue("demoRequestsForm:demoRequestsList", requestName); final boolean isAjax = true; tester.clickLink("demoRequestsForm:submit", isAjax); tester.assertVisible("responseWindow"); IModel model = tester.getLastRenderedPage().getDefaultModel(); assertTrue(model.getObject() instanceof DemoRequest); DemoRequest req = (DemoRequest) model.getObject(); assertEquals(Files.asResource(demoDir).path(), req.getDemoDir()); String requestFileName = req.getRequestFileName(); String requestUrl = req.getRequestUrl(); String requestBody = req.getRequestBody(); assertEquals(requestName, requestFileName); assertNotNull(requestUrl); assertNull(requestBody); }
@Test public void testUrlLinkUnmodified() { // print(tester.getLastRenderedPage(), true, true); final FormTester requestFormTester = tester.newFormTester("demoRequestsForm"); final String requestName = "WMS_describeLayer.url"; requestFormTester.select("demoRequestsList", 1); /* * There's an AjaxFormSubmitBehavior attached to onchange so force it */ tester.executeAjaxEvent("demoRequestsForm:demoRequestsList", "change"); tester.assertModelValue("demoRequestsForm:demoRequestsList", requestName); final boolean isAjax = true; tester.clickLink("demoRequestsForm:submit", isAjax); tester.assertVisible("responseWindow"); IModel model = tester.getLastRenderedPage().getDefaultModel(); assertTrue(model.getObject() instanceof DemoRequest); DemoRequest req = (DemoRequest) model.getObject(); assertEquals(Files.asResource(demoDir).path(), req.getDemoDir()); String requestFileName = req.getRequestFileName(); String requestUrl = req.getRequestUrl(); String requestBody = req.getRequestBody(); assertEquals(requestName, requestFileName); assertNotNull(requestUrl); assertNull(requestBody); }
@SuppressWarnings("unchecked") @Test public void testCopyTask() { ConfigurationPage page = new ConfigurationPage(config); tester.startPage(page); tester.assertRenderedPage(ConfigurationPage.class); // tasks table GeoServerTablePanel<Task> tasksPanel = (GeoServerTablePanel<Task>) tester.getComponentFromLastRenderedPage("configurationForm:tasksPanel"); assertEquals(2, tasksPanel.getDataProvider().size()); // copy task tester.clickLink("configurationForm:addNew"); tester.assertComponent("dialog:dialog:content:form:userPanel", NewTaskPanel.class); FormTester formTester = tester.newFormTester("dialog:dialog:content:form"); formTester.select("userPanel:copy", 0); tester.executeAjaxEvent("dialog:dialog:content:form:userPanel:copy", "change"); tester.assertModelValue( "dialog:dialog:content:form:userPanel:type", CopyTableTaskTypeImpl.NAME); formTester.setValue("userPanel:name", "task3"); formTester.submit("submit"); assertEquals(3, tasksPanel.getDataProvider().size()); assertEquals(3, config.getTasks().size()); assertEquals(CopyTableTaskTypeImpl.NAME, config.getTasks().get("task3").getType()); }
requestFormTester.select("demoRequestsList", 1);
requestFormTester.select("demoRequestsList", 1);
@Test public void testActionEditLayer() { Task task3 = tutil.initTask(FileRemotePublicationTaskTypeImpl.NAME, "task3"); util.addTaskToConfiguration(config, task3); config = dao.save(config); ConfigurationPage page = new ConfigurationPage(config); tester.startPage(page); tester.assertRenderedPage(ConfigurationPage.class); tester.assertComponent( "configurationForm:attributesPanel:listContainer:items:10:itemProperties:2:component", PanelListPanel.class); tester.assertComponent( "configurationForm:attributesPanel:listContainer:items:10:itemProperties:2:component:listview:0:panel", ButtonPanel.class); tester.assertModelValue( "configurationForm:attributesPanel:listContainer:items:10:itemProperties:2:component:listview:0:panel:button", "Edit Layer.."); FormTester formTester = tester.newFormTester("configurationForm"); formTester.submit( "attributesPanel:listContainer:items:10:itemProperties:2:component:listview:0:panel:button"); assertFeedback("topFeedback", "You cannot execute this action with this value."); formTester.select( "attributesPanel:listContainer:items:10:itemProperties:1:component:dropdown", 1); formTester.submit( "attributesPanel:listContainer:items:10:itemProperties:2:component:listview:0:panel:button"); tester.assertNoErrorMessage(); tester.assertRenderedPage(ResourceConfigurationPage.class); tester.clickLink("publishedinfo:cancel"); tester.assertRenderedPage(ConfigurationPage.class); }
form.select(WicketPath.GEOTIFF_COMPRESSIONTYPE.path, 1); this.executeWidgetUpdate(); this.checkCompressionTypeIsNotNONE(form.getForm()); form.select(WicketPath.GEOTIFF_COMPRESSIONTYPE.path, 0); this.executeWidgetUpdate(); this.checkCompressionTypeIsNONE(form.getForm()); form.select(WicketPath.GEOTIFF_COMPRESSIONTYPE.path, 1); this.executeWidgetUpdate(); this.checkCompressionTypeIsNotNONE(form.getForm());
formTester.submit("submit"); assertFeedback("dialog:dialog:content:form:userPanel:feedback", "required"); formTester.select("userPanel:type", 8); formTester.submit("submit"); assertEquals(3, tasksPanel.getDataProvider().size());
public void testNew() { final LayerInfo layer = getCatalog().getFactory().createLayer(); layer.setResource(getCatalog().getFactory().createFeatureType()); FormTestPage page = new FormTestPage(new ComponentBuilder() { public Component buildComponent(String id) { return new WMSLayerConfig(id, new Model(layer)); } } ); Component layerConfig = page.get("form:panel:styles:defaultStyle"); tester.startPage(page); tester.assertRenderedPage(FormTestPage.class); tester.assertComponent("form", Form.class); tester.assertComponent("form:panel:styles:defaultStyle", DropDownChoice.class); // check submitting like this will create errors, there is no selection tester.submitForm("form"); assertTrue(page.getSession().getFeedbackMessages().hasErrorMessageFor(layerConfig)); // now set something and check there are no messages this time page.getSession().getFeedbackMessages().clear(); FormTester ft = tester.newFormTester("form"); ft.select("panel:styles:defaultStyle", 0); ft.submit(); assertFalse(page.getSession().getFeedbackMessages().hasErrorMessageFor(layerConfig)); }