def test_produce_vsec_plot(self): environ = { 'wsgi.url_scheme': 'http', 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/', 'SERVER_PROTOCOL': 'HTTP/1.1', 'HTTP_HOST': 'localhost:8081', 'QUERY_STRING': 'layers=ecmwf_EUR_LL015.VS_HV01&styles=&srs=VERT%3ALOGP&format=image%2Fpng&' 'request=GetMap&bgcolor=0xFFFFFF&height=245&dim_init_time=2012-10-17T12%3A00%3A00Z&width=842&' 'version=1.1.1&bbox=201%2C500.0%2C10%2C100.0&time=2012-10-17T12%3A00%3A00Z&' 'exceptions=application%2Fvnd.ogc.se_xml&path=52.78%2C-8.93%2C48.08%2C11.28&transparent=FALSE'} self.client = mswms.application.test_client() result = self.client.get('/?{}'.format(environ["QUERY_STRING"])) callback_ok_image(result.status, result.headers) environ = { 'wsgi.url_scheme': 'http', 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/', 'SERVER_PROTOCOL': 'HTTP/1.1', 'HTTP_HOST': 'localhost:8081', 'QUERY_STRING': 'layers=ecmwf_EUR_LL015.VS_HV01&styles=&crs=VERT%3ALOGP&format=image%2Fpng&' 'request=GetMap&bgcolor=0xFFFFFF&height=245&dim_init_time=2012-10-17T12%3A00%3A00Z&width=842&' 'version=1.3.0&bbox=201%2C500.0%2C10%2C100.0&time=2012-10-17T12%3A00%3A00Z&' 'exceptions=XML&path=52.78%2C-8.93%2C48.08%2C11.28&transparent=FALSE'} result = self.client.get('/?{}'.format(environ["QUERY_STRING"])) callback_ok_image(result.status, result.headers)
def test_produce_vsec_service_exception(self): environ = { 'wsgi.url_scheme': 'http', 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/', 'SERVER_PROTOCOL': 'HTTP/1.1', 'HTTP_HOST': 'localhost:8081', 'QUERY_STRING': 'layers=ecmwf_EUR_LL015.VS_HV01&styles=&srs=VERT%3ALOGP&format=image%2Fpng&' 'request=GetMap&bgcolor=0xFFFFFF&height=245&dim_init_time=2012-10-17T12%3A00%3A00Z&width=842&' 'version=1.1.1&bbox=201%2C500.0%2C10%2C100.0&time=2012-10-17T12%3A00%3A00Z&' 'exceptions=application%2Fvnd.ogc.se_xml&path=52.78%2C-8.93%2C48.08%2C11.28&transparent=FALSE'} query_string = environ["QUERY_STRING"] self.client = mswms.application.test_client() result = self.client.get('/?{}'.format(query_string)) callback_ok_image(result.status, result.headers) assert result.data.count(b"ServiceExceptionReport") == 0, result for orig, fake in [ ("time=2012-10-17T12%3A00%3A00Z", "time=2012-01-17T12%3A00%3A00Z"), ("&dim_init_time=2012-10-17T12%3A00%3A00Z", ""), ("&time=2012-10-17T12%3A00%3A00Z", ""), ("layers=ecmwf_EUR_LL015.VS_HV01", "layers=ecmwf_AUR_LL015.VS_HV01"), ("layers=ecmwf_EUR_LL015.VS_HV01", "layers=ecmwf_EUR_LL015.VS_HV99"), ("format=image%2Fpng", "format=omage%2Fpng"), ("path=52.78%2C-8.93%2C48.08%2C11.28", "path=aaaa%2C-8.93%2C48.08%2C11.28"), ("&path=52.78%2C-8.93%2C48.08%2C11.28", ""), ("bbox=201%2C500.0%2C10%2C100.0", "bbox=aaa%2C500.0%2C10%2C100.0")]: environ["QUERY_STRING"] = query_string.replace(orig, fake) result = self.client.get('/?{}'.format(environ["QUERY_STRING"])) callback_ok_xml(result.status, result.headers) assert result.data.count(b"ServiceExceptionReport") > 0, result
def test_produce_hsec_service_exception(self): environ = { 'wsgi.url_scheme': 'http', 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/', 'SERVER_PROTOCOL': 'HTTP/1.1', 'HTTP_HOST': 'localhost:8081', 'QUERY_STRING': 'layers=ecmwf_EUR_LL015.PLDiv01&styles=&elevation=200&srs=EPSG%3A4326&format=image%2Fpng&' 'request=GetMap&bgcolor=0xFFFFFF&height=376&dim_init_time=2012-10-17T12%3A00%3A00Z&width=479&' 'version=1.1.1&bbox=-50.0%2C20.0%2C20.0%2C75.0&time=2012-10-17T12%3A00%3A00Z&' 'exceptions=application%2Fvnd.ogc.se_xml&transparent=FALSE'} query_string = environ["QUERY_STRING"] self.client = mswms.application.test_client() result = self.client.get('/?{}'.format(query_string)) callback_ok_image(result.status, result.headers) assert result.data.count(b"ServiceExceptionReport") == 0, result for orig, fake in [ ("dim_init_time=2012-10-17T12%3A00%3A00Z", "dim_init_time=a20121017T12%3A00%3A00Z"), ("time=2012-10-17T12%3A00%3A00Z", "time=a20121-0-17T12%3A00%3A00Z"), ("time=2012-10-17T12%3A00%3A00Z", "time=2012-01-17T12%3A00%3A00Z"), ("&dim_init_time=2012-10-17T12%3A00%3A00Z", ""), ("&time=2012-10-17T12%3A00%3A00Z", ""), ("srs=EPSG%3A4326", "srs=EPSH%3A4326"), ("srs=EPSG%3A4326", "srs=EPSG%3AABCD"), ("srs=EPSG%3A4326", "srs=EPSG%3A6666"), ("ecmwf_EUR_LL015.PLDiv01", "PLDiv01"), ("ecmwf_EUR_LL015.PLDiv01", "ecmwf_EUR_LL015.PLDav01"), ("ecmwf_EUR_LL015.PLDiv01", "ecmwf_AUR_LL015.PLDiv01"), ("format=image%2Fpng", "format=omage%2Fpng"), ("bbox=-50.0%2C20.0%2C20.0%2C75.0", "bbox=-abcd%2C20.0%2C20.0%2C75.0")]: environ["QUERY_STRING"] = query_string.replace(orig, fake) result = self.client.get('/?{}'.format(environ["QUERY_STRING"])) callback_ok_xml(result.status, result.headers) assert result.data.count(b"ServiceExceptionReport") > 0, result
def test_multiple_images(self): environ = { 'wsgi.url_scheme': 'http', 'REQUEST_METHOD': 'GET', 'PATH_INFO': '/', 'SERVER_PROTOCOL': 'HTTP/1.1', 'HTTP_HOST': 'localhost:8081', 'QUERY_STRING': 'layers=ecmwf_EUR_LL015.PLDiv01,ecmwf_EUR_LL015.PLTemp01&styles=&elevation=200&' 'srs=EPSG%3A4326&format=image%2Fpng&' 'request=GetMap&bgcolor=0xFFFFFF&height=376&dim_init_time=2012-10-17T12%3A00%3A00Z&width=479&' 'version=1.1.1&bbox=-50.0%2C20.0%2C20.0%2C75.0&time=2012-10-17T12%3A00%3A00Z&' 'exceptions=application%2Fvnd.ogc.se_xml&transparent=FALSE'} self.client = mswms.application.test_client() result = self.client.get('/?{}'.format(environ["QUERY_STRING"])) callback_ok_image(result.status, result.headers) assert isinstance(result.data, bytes), result