mirror of
https://github.com/osm-search/Nominatim.git
synced 2024-11-27 10:43:02 +03:00
remove tests for HTML output
This commit is contained in:
parent
c0d21d0bd3
commit
d86cf6801f
@ -30,7 +30,6 @@ unit tests (using PHPUnit). It has the following additional requirements:
|
||||
|
||||
* [behave test framework](https://behave.readthedocs.io) >= 1.2.5
|
||||
* [nose](https://nose.readthedocs.io)
|
||||
* [pytidylib](http://countergram.com/open-source/pytidylib)
|
||||
* [phpunit](https://phpunit.de) >= 7.3
|
||||
* [PHP CodeSniffer](https://github.com/squizlabs/PHP_CodeSniffer)
|
||||
|
||||
|
@ -43,10 +43,10 @@ Feature: Object details
|
||||
Then the result is valid json
|
||||
|
||||
Scenario Outline: HTML Details with keywords
|
||||
When sending html details query for <osmid>
|
||||
When sending json details query for <osmid>
|
||||
| keywords |
|
||||
| 1 |
|
||||
Then the result is valid html
|
||||
Then the result is valid json
|
||||
|
||||
Examples:
|
||||
| osmid |
|
||||
|
@ -8,13 +8,9 @@ Feature: Object details
|
||||
|
||||
Examples:
|
||||
| format | object |
|
||||
| html | 492887 |
|
||||
| json | 492887 |
|
||||
| html | N4267356889 |
|
||||
| json | N4267356889 |
|
||||
| html | W230804120 |
|
||||
| json | W230804120 |
|
||||
| html | R123924 |
|
||||
| json | R123924 |
|
||||
|
||||
Scenario Outline: Details via unknown OSM id
|
||||
@ -23,21 +19,19 @@ Feature: Object details
|
||||
|
||||
Examples:
|
||||
| format | object |
|
||||
| html | 1 |
|
||||
| json | 1 |
|
||||
| html | R1 |
|
||||
| json | R1 |
|
||||
|
||||
Scenario: Details with keywords
|
||||
When sending details query for W78099902
|
||||
| keywords |
|
||||
| 1 |
|
||||
Then the result is valid html
|
||||
Then the result is valid json
|
||||
|
||||
# ticket #1343
|
||||
Scenario: Details of a country with keywords
|
||||
When sending details query for R287072
|
||||
| keywords |
|
||||
| 1 |
|
||||
Then the result is valid html
|
||||
Then the result is valid json
|
||||
|
||||
|
@ -13,8 +13,6 @@ Feature: Simple Reverse Tests
|
||||
Then the result is valid json
|
||||
When sending geojson reverse coordinates <lat>,<lon>
|
||||
Then the result is valid geojson
|
||||
When sending html reverse coordinates <lat>,<lon>
|
||||
Then the result is valid html
|
||||
|
||||
Examples:
|
||||
| lat | lon |
|
||||
@ -28,10 +26,6 @@ Feature: Simple Reverse Tests
|
||||
| param | value |
|
||||
| <parameter> | <value> |
|
||||
Then the result is valid xml
|
||||
When sending html reverse coordinates 53.603,10.041
|
||||
| param | value |
|
||||
| <parameter> | <value> |
|
||||
Then the result is valid html
|
||||
When sending xml reverse coordinates 53.603,10.041
|
||||
| param | value |
|
||||
| <parameter> | <value> |
|
||||
@ -100,7 +94,6 @@ Feature: Simple Reverse Tests
|
||||
| json |
|
||||
| jsonv2 |
|
||||
| geojson |
|
||||
| html |
|
||||
| xml |
|
||||
|
||||
Scenario: Missing lon parameter
|
||||
|
@ -7,10 +7,6 @@ Feature: Simple Tests
|
||||
| param | value |
|
||||
| <parameter> | <value> |
|
||||
Then at least 1 result is returned
|
||||
When sending html search query "Hamburg"
|
||||
| param | value |
|
||||
| <parameter> | <value> |
|
||||
Then at least 1 result is returned
|
||||
When sending xml search query "Hamburg"
|
||||
| param | value |
|
||||
| <parameter> | <value> |
|
||||
@ -65,9 +61,7 @@ Feature: Simple Tests
|
||||
|
||||
Scenario Outline: Simple Searches
|
||||
When sending search query "<query>"
|
||||
Then the result is valid html
|
||||
When sending html search query "<query>"
|
||||
Then the result is valid html
|
||||
Then the result is valid json
|
||||
When sending xml search query "<query>"
|
||||
Then the result is valid xml
|
||||
When sending json search query "<query>"
|
||||
@ -185,10 +179,6 @@ Feature: Simple Tests
|
||||
| json_callback |
|
||||
| 234 |
|
||||
Then the result is valid xml
|
||||
When sending html search query "Malibu"
|
||||
| json_callback |
|
||||
| 234 |
|
||||
Then the result is valid html
|
||||
|
||||
Scenario: Empty JSON search
|
||||
When sending json search query "YHlERzzx"
|
||||
@ -209,14 +199,3 @@ Feature: Simple Tests
|
||||
Then result header contains
|
||||
| attr | value |
|
||||
| more_url | .*&countrycodes=pl%2Cbo&.* |
|
||||
|
||||
Scenario Outline: Search with debug prints valid HTML
|
||||
When sending html search query "<query>"
|
||||
| extratags | addressdetails | namedetails | debug |
|
||||
| 1 | 1 | 1 | 1 |
|
||||
Then the result is valid html
|
||||
|
||||
Examples:
|
||||
| query |
|
||||
| 10, Alvierweg, 9490, Vaduz |
|
||||
| Hamburg |
|
||||
|
@ -9,7 +9,6 @@ import os
|
||||
import io
|
||||
import re
|
||||
import logging
|
||||
from tidylib import tidy_document
|
||||
import xml.etree.ElementTree as ET
|
||||
import subprocess
|
||||
from urllib.parse import urlencode
|
||||
@ -119,23 +118,6 @@ class SearchResponse(GenericResponse):
|
||||
if self.result is not None:
|
||||
self.result = [r['geocoding'] for r in self.result]
|
||||
|
||||
def parse_html(self):
|
||||
content, errors = tidy_document(self.page,
|
||||
options={'char-encoding' : 'utf8'})
|
||||
#eq_(len(errors), 0 , "Errors found in HTML document:\n%s" % errors)
|
||||
|
||||
self.result = []
|
||||
b = content.find('nominatim_results =')
|
||||
e = content.find('</script>')
|
||||
if b >= 0 and e >= 0:
|
||||
content = content[b:e]
|
||||
|
||||
b = content.find('[')
|
||||
e = content.rfind(']')
|
||||
if b >= 0 and e >= 0:
|
||||
self.result = json.JSONDecoder(object_pairs_hook=OrderedDict)\
|
||||
.decode(content[b:e+1])
|
||||
|
||||
def parse_xml(self):
|
||||
et = ET.fromstring(self.page)
|
||||
|
||||
@ -176,19 +158,6 @@ class ReverseResponse(GenericResponse):
|
||||
if errorcode == 200:
|
||||
getattr(self, 'parse_' + fmt)()
|
||||
|
||||
def parse_html(self):
|
||||
content, errors = tidy_document(self.page,
|
||||
options={'char-encoding' : 'utf8'})
|
||||
#eq_(len(errors), 0 , "Errors found in HTML document:\n%s" % errors)
|
||||
|
||||
b = content.find('nominatim_results =')
|
||||
e = content.find('</script>')
|
||||
content = content[b:e]
|
||||
b = content.find('[')
|
||||
e = content.rfind(']')
|
||||
|
||||
self.result = json.JSONDecoder(object_pairs_hook=OrderedDict).decode(content[b:e+1])
|
||||
|
||||
def parse_json(self):
|
||||
m = re.fullmatch(r'([\w$][^(]*)\((.*)\)', self.page)
|
||||
if m is None:
|
||||
@ -251,11 +220,6 @@ class DetailsResponse(GenericResponse):
|
||||
if errorcode == 200:
|
||||
getattr(self, 'parse_' + fmt)()
|
||||
|
||||
def parse_html(self):
|
||||
content, errors = tidy_document(self.page,
|
||||
options={'char-encoding' : 'utf8'})
|
||||
self.result = {}
|
||||
|
||||
def parse_json(self):
|
||||
self.result = [json.JSONDecoder(object_pairs_hook=OrderedDict).decode(self.page)]
|
||||
|
||||
@ -408,9 +372,7 @@ def website_search_request(context, fmt, query, addr):
|
||||
|
||||
outp, status = send_api_query('search', params, fmt, context)
|
||||
|
||||
if fmt is None:
|
||||
outfmt = 'html'
|
||||
elif fmt == 'jsonv2 ':
|
||||
if fmt is None or fmt == 'jsonv2 ':
|
||||
outfmt = 'json'
|
||||
else:
|
||||
outfmt = fmt.strip()
|
||||
@ -447,7 +409,7 @@ def website_details_request(context, fmt, query):
|
||||
outp, status = send_api_query('details', params, fmt, context)
|
||||
|
||||
if fmt is None:
|
||||
outfmt = 'html'
|
||||
outfmt = 'json'
|
||||
else:
|
||||
outfmt = fmt.strip()
|
||||
|
||||
@ -508,9 +470,7 @@ def check_page_error(context, fmt):
|
||||
context.execute_steps("Then a HTTP 400 is returned")
|
||||
eq_(context.response.format, fmt)
|
||||
|
||||
if fmt == 'html':
|
||||
assert_is_not_none(re.search(r'<html( |>).+</html>', context.response.page, re.DOTALL))
|
||||
elif fmt == 'xml':
|
||||
if fmt == 'xml':
|
||||
assert_is_not_none(re.search(r'<error>.+</error>', context.response.page, re.DOTALL))
|
||||
else:
|
||||
assert_is_not_none(re.search(r'({"error":)', context.response.page, re.DOTALL))
|
||||
|
Loading…
Reference in New Issue
Block a user