Alexander Reelsen 349a8be4fd Consistent REST API changes for GETting data
* Made GET mappings consistent, supporting
  * /{index}/_mappings/{type}
  * /{index}/_mapping/{type}
  * /_mapping/{type}
  * Added "mappings" in the JSON response to align it with other responses
* Made GET warmers consistent, support /{index}/_warmers/{type} and /_warmer, /_warner/{name}
  as well as wildcards and _all notation
* Made GET aliases consistent, support /{index}/_aliases/{name} and /_alias, /_aliases/{name}
  as well as wildcards and _all notation
* Made GET settings consistent, added /{index}/_setting/{name}, /_settings/{name}
  as well as supportings wildcards in settings name
* Returning empty JSON instead of a 404, if a specific warmer/
  setting/alias/type is missing
* Added a ton of spec tests for all of the above
* Added a couple of more integration tests for several features

Relates #4071
2014-01-14 22:33:52 +01:00

146 lines
3.2 KiB
YAML

---
setup:
- do:
indices.create:
index: test_index
- do:
indices.create:
index: test_idx
- do:
cluster.health:
wait_for_status: yellow
- do:
indices.put_warmer:
index: test_idx
name: test_warmer2
body:
query:
match_all: {}
- do:
indices.put_warmer:
index: test_index
name: test_warmer
body:
query:
match_all: {}
---
"Basic test for warmers":
- do:
indices.get_warmer:
index: test_index
name: test_warmer
- match: {test_index.warmers.test_warmer.source.query.match_all: {}}
- do:
indices.delete_warmer:
index: test_index
name: test_warmer
- do:
indices.get_warmer:
index: test_index
name: test_warmer
- match: { '': {}}
---
"Getting all warmers via /_warmer should work":
- do:
indices.get_warmer: {}
- match: {test_index.warmers.test_warmer.source.query.match_all: {}}
- match: {test_idx.warmers.test_warmer2.source.query.match_all: {}}
---
"Getting warmers for several indices should work using *":
- do:
indices.get_warmer:
index: '*'
name: '*'
- match: {test_index.warmers.test_warmer.source.query.match_all: {}}
- match: {test_idx.warmers.test_warmer2.source.query.match_all: {}}
---
"Getting warmers for several indices should work using _all":
- do:
indices.get_warmer:
index: _all
name: _all
- match: {test_index.warmers.test_warmer.source.query.match_all: {}}
- match: {test_idx.warmers.test_warmer2.source.query.match_all: {}}
---
"Getting all warmers without specifying index should work":
- do:
indices.get_warmer:
name: _all
- match: {test_index.warmers.test_warmer.source.query.match_all: {}}
- match: {test_idx.warmers.test_warmer2.source.query.match_all: {}}
---
"Getting warmers for several indices should work using prefix*":
- do:
indices.get_warmer:
index: test_i*
name: test_w*
- match: {test_index.warmers.test_warmer.source.query.match_all: {}}
- match: {test_idx.warmers.test_warmer2.source.query.match_all: {}}
---
"Getting warmers for several indices should work using comma-separated lists":
- do:
indices.get_warmer:
index: test_index,test_idx
name: test_warmer,test_warmer2
- match: {test_index.warmers.test_warmer.source.query.match_all: {}}
- match: {test_idx.warmers.test_warmer2.source.query.match_all: {}}
---
"Getting a non-existent warmer on an existing index should return an empty body":
- do:
indices.get_warmer:
index: test_index
name: non-existent
- match: { '': {}}
---
"Getting an existent and non-existent warmer should return the existent and no data about the non-existent warmer":
- do:
indices.get_warmer:
index: test_index
name: test_warmer,non-existent
- match: {test_index.warmers.test_warmer.source.query.match_all: {}}
- is_false: test_index.warmers.non-existent
---
"Getting warmer on an non-existent index should return 404":
- do:
catch: missing
indices.get_warmer:
index: non-existent
name: foo