Package org.geoserver.web.publish

Source Code of org.geoserver.web.publish.HTTPLayerConfigTest

package org.geoserver.web.publish;

import org.apache.wicket.Component;
import org.apache.wicket.feedback.ErrorLevelFeedbackMessageFilter;
import org.apache.wicket.feedback.FeedbackMessage;
import org.apache.wicket.markup.html.form.TextField;
import org.apache.wicket.model.Model;
import org.apache.wicket.util.tester.FormTester;
import org.geoserver.catalog.LayerInfo;
import org.geoserver.data.test.MockData;
import org.geoserver.web.ComponentBuilder;
import org.geoserver.web.FormTestPage;
import org.geoserver.web.GeoServerWicketTestSupport;

public class HTTPLayerConfigTest extends GeoServerWicketTestSupport {
   
    LayerInfo polygons;
    FormTestPage page;

    @Override
    protected void setUpInternal() throws Exception {
        polygons = getCatalog().getLayerByName(MockData.BASIC_POLYGONS.getLocalPart());
        page = new FormTestPage(new ComponentBuilder() {
       
            public Component buildComponent(String id) {
                return new HTTPLayerConfig(id, new Model(polygons));
            }
        });
        tester.startPage(page);
    }
   
    public void testDefaults() {
        tester.assertRenderedPage(FormTestPage.class);
        FormTester ft = tester.newFormTester("form");
        ft.submit();
        assertEquals(0,  page.getSession().getFeedbackMessages().messages(new ErrorLevelFeedbackMessageFilter(FeedbackMessage.ERROR)).size());
    }
   
    public void testInvalid() {
        final LayerInfo polygons = getCatalog().getLayerByName(MockData.BASIC_POLYGONS.getLocalPart());
        FormTestPage page = new FormTestPage(new ComponentBuilder() {
       
            public Component buildComponent(String id) {
                return new HTTPLayerConfig(id, new Model(polygons));
            }
        });
        tester.startPage(page);
        tester.assertComponent("form:panel:cacheAgeMax", TextField.class);
       
        tester.assertRenderedPage(FormTestPage.class);
        FormTester ft = tester.newFormTester("form");
        ft.setValue("panel:cacheAgeMax", "-20");
        ft.submit();
        assertEquals(1,  page.getSession().getFeedbackMessages().messages(new ErrorLevelFeedbackMessageFilter(FeedbackMessage.ERROR)).size());
    }
   
    public void testValid() {
        FormTester ft = tester.newFormTester("form");
        ft.setValue("panel:cacheAgeMax", "3600");
        ft.submit();
        // System.out.println(page.getSession().getFeedbackMessages());
        assertEquals(0,  page.getSession().getFeedbackMessages().messages(new ErrorLevelFeedbackMessageFilter(FeedbackMessage.ERROR)).size());
        // System.out.println(polygons.getResource().getMetadata().get("cacheAgeMax").getClass());
        assertEquals(Integer.valueOf(3600), polygons.getResource().getMetadata().get("cacheAgeMax",Integer.class));

    }
}
TOP

Related Classes of org.geoserver.web.publish.HTTPLayerConfigTest

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.