0001-geojson-full-param-to-get-all-fields-50283.patch
tests/test_api.py | ||
---|---|---|
2136 | 2136 |
assert 'features' in resp.json |
2137 | 2137 |
assert len(resp.json['features']) == 10 |
2138 | 2138 |
display_fields = resp.json['features'][0]['properties']['display_fields'] |
2139 |
assert len(display_fields) == 5 |
|
2139 | 2140 |
for field in display_fields: |
2140 | 2141 |
if field['label'] == 'Number': |
2141 | 2142 |
assert field['varname'] == 'id' |
... | ... | |
2153 | 2154 |
assert field['varname'] is None |
2154 | 2155 |
assert field['value'] == "test.txt" |
2155 | 2156 |
assert field['html_value'] == '<div class="file-field"><a download="test.txt" href="http://example.net/backoffice/management/test/28/download?f=1"><span>test.txt</span></a></div>' |
2157 |
field_varnames = [f['varname'] for f in display_fields] |
|
2158 |
assert 'foobar' not in field_varnames |
|
2159 | ||
2160 |
# check full=on |
|
2161 |
resp = get_app(pub).get(sign_uri('/api/forms/test/geojson?full=on', user=local_user)) |
|
2162 |
assert len(resp.json['features']) == 10 |
|
2163 |
display_fields = resp.json['features'][0]['properties']['display_fields'] |
|
2164 |
assert len(display_fields) == 8 |
|
2165 |
field_varnames = [f['varname'] for f in display_fields] |
|
2166 |
assert 'foobar' in field_varnames |
|
2156 | 2167 | |
2157 | 2168 |
# check with a filter |
2158 | 2169 |
resp = get_app(pub).get(sign_uri('/api/forms/test/geojson?filter=done', user=local_user)) |
wcs/backoffice/management.py | ||
---|---|---|
2101 | 2101 |
user = get_user_from_api_query_string('geojson') |
2102 | 2102 | |
2103 | 2103 |
selected_filter = self.get_filter_from_query() |
2104 |
fields = self.get_fields_from_query() |
|
2104 |
if get_request().form.get('full') == 'on': |
|
2105 |
fields = list(self.get_formdef_fields()) |
|
2106 |
else: |
|
2107 |
fields = self.get_fields_from_query() |
|
2105 | 2108 |
criterias = self.get_criterias_from_query() |
2106 | 2109 |
query = get_request().form.get('q') |
2107 | 2110 | |
2108 |
- |