OpenSearch/rest-api-spec/test/update/85_fields_meta.yaml
Adrien Grand 7c698146f5 Rest: Add all meta fields to the top level json document.
Some of our meta fields (such as _id, _version, ...) are returned as top-level
properties of the json document, while other properties (_timestamp, _routing,
...) are returned under `fields`. This commit makes all meta fields returned
as top-level properties.

So eg. `GET test/test/1?fields=_timestamp,foo` would now return

```json
{
   "_index": "test",
   "_type": "test",
   "_id": "1",
   "_version": 1,
   "_timestamp": 10000000,
   "found": true,
   "fields": {
     "foo": [ "bar" ]
   }
}
```

while it used to return

```json
{
   "_index": "test",
   "_type": "test",
   "_id": "1",
   "_version": 1,
   "found": true,
   "fields": {
     "_timestamp": 10000000,
     "foo": [ "bar" ]
   }
}
```
2015-06-04 23:42:17 +02:00

50 lines
1.0 KiB
YAML

---
"Metadata Fields":
- skip:
version: "all"
reason: "Update doesn't return metadata fields, waiting for #3259"
- do:
indices.create:
index: test_1
body:
mappings:
test:
_parent: { type: "foo" }
_timestamp:
enabled: 1
_ttl:
enabled: 1
default: 10s
- do:
cluster.health:
wait_for_status: yellow
- do:
update:
index: test_1
type: test
id: 1
parent: 5
fields: [ _parent, _routing, _timestamp, _ttl ]
body:
doc: { foo: baz }
upsert: { foo: bar }
- match: { get._parent: "5" }
- match: { get._routing: "5" }
- is_true: get._timestamp
- is_true: get._ttl
- do:
get:
index: test_1
type: test
id: 1
parent: 5
fields: [ _parent, _routing, _timestamp, _ttl ]