Package org.geoserver.wms.map

Source Code of org.geoserver.wms.map.RasterSymbolizerVisitorTest

/* (c) 2014 Open Source Geospatial Foundation - all rights reserved
* (c) 2014 OpenPlans
* This code is licensed under the GPL 2.0 license, available at the root
* application directory.
*/
package org.geoserver.wms.map;

import static org.junit.Assert.*;

import java.io.IOException;
import java.util.List;

import org.geotools.factory.CommonFactoryFinder;
import org.geotools.styling.NamedLayer;
import org.geotools.styling.RasterSymbolizer;
import org.geotools.styling.SLDParser;
import org.geotools.styling.Style;
import org.geotools.styling.StyledLayerDescriptor;
import org.junit.Test;
import org.opengis.filter.expression.Function;

public class RasterSymbolizerVisitorTest {

    @Test
    public void testRasterRenderingTransformation() throws IOException {
        Style style = parseStyle("CropTransform.sld");
        RasterSymbolizerVisitor visitor = new RasterSymbolizerVisitor(1000, null);
        style.accept(visitor);
        List<RasterSymbolizer> symbolizers = visitor.getRasterSymbolizers();
        assertEquals(1, symbolizers.size());
        Function tx = (Function) visitor.getRasterRenderingTransformation();
        assertNotNull(tx);
        assertEquals("ras:CropCoverage", tx.getName());
    }
   
    @Test
    public void testRasterToVectorTransformation() throws IOException {
        Style style = parseStyle("ContourTransform.sld");
        RasterSymbolizerVisitor visitor = new RasterSymbolizerVisitor(1000, null);
        style.accept(visitor);
        List<RasterSymbolizer> symbolizers = visitor.getRasterSymbolizers();
        assertEquals(0, symbolizers.size());
        Function tx = (Function) visitor.getRasterRenderingTransformation();
        assertNull(tx);
    }
   
    @Test
    public void testVectorToRasterRenderingTransformation() throws IOException {
        Style style = parseStyle("HeatmapTransform.sld");
        RasterSymbolizerVisitor visitor = new RasterSymbolizerVisitor(1000, null);
        style.accept(visitor);
        List<RasterSymbolizer> symbolizers = visitor.getRasterSymbolizers();
        assertEquals(1, symbolizers.size());
        Function tx = (Function) visitor.getRasterRenderingTransformation();
        assertNotNull(tx);
        assertEquals("vec:Heatmap", tx.getName());
    }

    private Style parseStyle(String styleName) throws IOException {
        SLDParser parser = new SLDParser(CommonFactoryFinder.getStyleFactory());
        parser.setInput(RasterSymbolizerVisitorTest.class.getResource(styleName));
        StyledLayerDescriptor sld = parser.parseSLD();
        NamedLayer ul = (NamedLayer) sld.getStyledLayers()[0];
        return ul.getStyles()[0];
    }
}
TOP

Related Classes of org.geoserver.wms.map.RasterSymbolizerVisitorTest

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.