package de.cismet.commons.cismap;
import de.cismet.cismap.commons.rasterservice.HTTPImageRetrieval;
import de.cismet.cismap.commons.retrieval.RetrievalEvent;
import de.cismet.cismap.commons.retrieval.RetrievalListener;
import de.cismet.security.WebAccessManager;
import java.io.IOException;
import java.net.MalformedURLException;
import java.net.URL;
import org.junit.After;
import org.junit.AfterClass;
import static org.junit.Assert.*;
import static org.junit.Assume.assumeTrue;
import org.junit.Before;
import org.junit.BeforeClass;
import org.junit.Test;
/**
*
* @author pd
*/
public class ImageRetrievalTest implements RetrievalListener {
final String wmsURL = "http://www2.demis.nl/wms/wms.asp?wms=WorldMap&SERVICE=WMS&VERSION=1.1.1&REQUEST=GetMap&BBOX=-184,-90,180,90&SRS=EPSG:4326&WIDTH=1471&HEIGHT=728&LAYERS=Countries&STYLES=&FORMAT=image/png&DPI=96&MAP_RESOLUTION=96&FORMAT_OPTIONS=dpi:96&TRANSPARENT=TRUE";
HTTPImageRetrieval imageRetrieval = null;
public ImageRetrievalTest() {
}
@BeforeClass
public static void setUpClass() {
}
@AfterClass
public static void tearDownClass() {
}
@Before
public void setUp() {
boolean canRead = true;
imageRetrieval = new HTTPImageRetrieval(this);
try {
WebAccessManager.getInstance().doRequest(new URL(wmsURL));
} catch (Exception ex) {
System.out.println("WARNING: test010ImageRetieval NOT COMPLETED due to Exception: "
+ ex.getMessage());
canRead = false;
}
assumeTrue("Can read from " + wmsURL, canRead);
}
@After
public void tearDown() {
}
@Test
public void test010ImageRetieval() throws MalformedURLException, IOException {
// NOI18N
assertNotNull(imageRetrieval);
imageRetrieval.setUrl(wmsURL);
assertEquals(wmsURL, imageRetrieval.getUrl());
imageRetrieval.start();
try {
imageRetrieval.join(6000);
} catch (InterruptedException ex) {
System.out.println("test010ImageRetieval(): Image Retrieval aborted: " + ex.getMessage());
assumeTrue("Can read from " + wmsURL, false);
}
}
@Override
public void retrievalStarted(RetrievalEvent e) {
//System.out.println("retrievalStarted: " + e.getPercentageDone());
assertFalse(e.isIsComplete());
}
@Override
public void retrievalProgress(RetrievalEvent e) {
//System.out.println("retrievalProgress: " + e.getPercentageDone());
assertFalse(e.isIsComplete());
}
@Override
public void retrievalComplete(RetrievalEvent e) {
//System.out.println("retrievalComplete: " + e.getPercentageDone());
//System.out.println("getContentType: " + e..getContentType());
//System.out.println("getRetrievedObject: " + e.getRetrievedObject());
assertTrue("isComplete", e.isIsComplete());
assertFalse("isHasErrors", e.isHasErrors());
assertNotNull("getRetrievedObject not null", e.getRetrievedObject());
}
@Override
public void retrievalAborted(RetrievalEvent e) {
assertFalse("retrievalAborted", e.isIsComplete());
//assertTrue("retrievalAborted", false);
}
@Override
public void retrievalError(RetrievalEvent e) {
assertTrue("e.getErrorType()", e.isHasErrors());
//assertTrue(e.getErrorType(), false);
}
}