Package org.geoserver.wms.worldwind

Source Code of org.geoserver.wms.worldwind.BilTest

package org.geoserver.wms.worldwind;

import java.io.File;
import java.io.IOException;
import java.util.logging.Logger;

import javax.xml.namespace.QName;

import junit.framework.Test;

import org.apache.commons.io.FileUtils;
import org.geoserver.data.test.MockData;
import org.geoserver.wms.WMSInfo;
import org.geoserver.wms.WMSTestSupport;
import org.geoserver.wms.map.RenderedImageMapOutputFormat;


/**
* Test case for producing Raw bil images out of an elevation model.
*
* @author Tishampati Dhar
* @since 2.0.x
*
*/

public class BilTest extends WMSTestSupport {
  /**
     * This is a READ ONLY TEST so we can use one time setup
     */
 
  public static String WCS_PREFIX = "wcs";
    public static String WCS_URI = "http://www.opengis.net/wcs/1.1.1";
    public static QName AUS_DEM = new QName(WCS_URI, "Ausdem", WCS_PREFIX);
   
    private RenderedImageMapOutputFormat rasterMapProducer;
   
    /**
     * This is a READ ONLY TEST so we can use one time setup
     */
    public static Test suite() {
        return new OneTimeTestSetup(new BilTest());
    }
   
   
    @Override
    protected void setUpInternal() throws Exception {
        super.setUpInternal();
        WMSInfo wmsInfo = getGeoServer().getService(WMSInfo.class);
        wmsInfo.setMaxBuffer(50);
        getGeoServer().save(wmsInfo);
    }
   
    @Override
    protected void populateDataDirectory(MockData dataDirectory) throws Exception {
        super.populateDataDirectory(dataDirectory);
       
        dataDirectory.addStyle("raster", BilTest.class.getResource("raster.sld"));
        dataDirectory.addCoverage(AUS_DEM, BilTest.class.getResource("aus_dem.tif"),
                "tiff", "raster");
       
    }


  public void testStandardRequest() throws Exception {
      String layer = getLayerId(AUS_DEM);
     
      String request = "wms?service=wms&request=GetMap&version=1.1.1" +
    "&layers=" + layer + "&styles=&bbox=108.3,-46.3,160.3,-4.2&width=64&height=64" +
    "&format=application/bil&srs=EPSG:4326";
    String response = getAsString(request);
    // Check response length in bytes
    assertEquals("testStandardRequest",8193,response.getBytes().length);
     
     
      request = "wms?service=wms&request=GetMap&version=1.1.1" +
          "&layers=" + layer + "&styles=&bbox=108.3,-46.3,160.3,-4.2&width=64&height=64" +
          "&format=application/bil8&srs=EPSG:4326";
      response = getAsString(request);
      // Check response length in bytes
      assertEquals("testStandardRequest",4097,response.getBytes().length);
     
      request = "wms?service=wms&request=GetMap&version=1.1.1" +
    "&layers=" + layer + "&styles=&bbox=108.3,-46.3,160.3,-4.2&width=64&height=64" +
    "&format=application/bil16&srs=EPSG:4326";
      response = getAsString(request);
      // Check response length in bytes
      assertEquals("testStandardRequest",8193,response.getBytes().length);
     
      request = "wms?service=wms&request=GetMap&version=1.1.1" +
    "&layers=" + layer + "&styles=&bbox=108.3,-46.3,160.3,-4.2&width=64&height=64" +
    "&format=application/bil32&srs=EPSG:4326";
      response = getAsString(request);
      // Check response length in bytes
      assertEquals("testStandardRequest",16385,response.getBytes().length);
  }
 
  public void testLargeRequest() throws Exception {
      String layer = getLayerId(AUS_DEM);
      String request = "wms?service=wms&request=GetMap&version=1.1.1" +
          "&layers=" + layer + "&styles=&bbox=108.3,-46.3,160.3,-4.2&width=600&height=600" +
          "&format=image/bil&srs=EPSG:4326";
     
      String exceptstr  = getAsString(request);
      assertTrue("testLargeRequest",exceptstr.contains("512x512"));
  }
 
  /**
   * Need to override since we are in the community folder
   */
  protected void copySchemaFile(String file) throws IOException {
        File f = new File("../../web/app/src/main/webapp/schemas/" + file);
        FileUtils.copyFile(f, getResourceLoader().createFile("WEB-INF/schemas/"+file));
    }
}
TOP

Related Classes of org.geoserver.wms.worldwind.BilTest

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.