Skip to content

Commit 087021e

Browse files
authored
Adding additional yaml rest tests for get random sample api (#136990)
1 parent 9634fd6 commit 087021e

File tree

1 file changed

+193
-0
lines changed

1 file changed

+193
-0
lines changed
Lines changed: 193 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,193 @@
1+
---
2+
"Test get sample for basic sample config":
3+
- requires:
4+
cluster_features: [ "random_sampling" ]
5+
reason: requires feature 'random_sampling' to get random samples
6+
7+
- do:
8+
indices.create:
9+
index: sample_test
10+
body:
11+
settings:
12+
number_of_shards: 1
13+
14+
- do:
15+
indices.put_sample_configuration:
16+
index: sample_test
17+
body:
18+
rate: 1.0
19+
max_samples: 100
20+
21+
- do:
22+
indices.get_sample:
23+
index: sample_test
24+
- match: { sample: [] }
25+
26+
- do:
27+
bulk:
28+
refresh: true
29+
body:
30+
- '{"index": {"_index": "sample_test"}}'
31+
- '{"animal": "dog", "foo": "bar"}'
32+
- '{"index": {"_index": "sample_test"}}'
33+
- '{"animal": "cat", "foo": "baz"}'
34+
35+
- do:
36+
indices.get_sample:
37+
index: sample_test
38+
- length: { sample: 2 }
39+
- match: { sample.0.index: "sample_test" }
40+
- match: { sample.0.source.animal: "dog" }
41+
- match: { sample.0.source.foo: "bar" }
42+
- match: { sample.1.source.animal: "cat" }
43+
- match: { sample.1.source.foo: "baz" }
44+
45+
---
46+
"Test get sample for conditional sample config":
47+
- requires:
48+
cluster_features: [ "random_sampling" ]
49+
reason: requires feature 'random_sampling' to get random samples
50+
51+
- do:
52+
indices.create:
53+
index: sample_test
54+
body:
55+
settings:
56+
number_of_shards: 1
57+
58+
- do:
59+
indices.put_sample_configuration:
60+
index: sample_test
61+
body:
62+
rate: 1.0
63+
max_samples: 100
64+
if: "ctx?.animal == 'dog'"
65+
66+
- do:
67+
indices.get_sample:
68+
index: sample_test
69+
- match: { sample: [] }
70+
71+
- do:
72+
bulk:
73+
refresh: true
74+
body:
75+
- '{"index": {"_index": "sample_test"}}'
76+
- '{"animal": "dog", "foo": "bar"}'
77+
- '{"index": {"_index": "sample_test"}}'
78+
- '{"animal": "cat", "foo": "baz"}'
79+
80+
- do:
81+
indices.get_sample:
82+
index: sample_test
83+
- length: { sample: 1 }
84+
- match: { sample.0.index: "sample_test" }
85+
- match: { sample.0.source.animal: "dog" }
86+
- match: { sample.0.source.foo: "bar" }
87+
88+
---
89+
"Test that deleting sample config deletes sample":
90+
- requires:
91+
cluster_features: [ "random_sampling" ]
92+
reason: requires feature 'random_sampling' to get random samples
93+
94+
- do:
95+
indices.create:
96+
index: sample_test
97+
body:
98+
settings:
99+
number_of_shards: 1
100+
101+
- do:
102+
indices.put_sample_configuration:
103+
index: sample_test
104+
body:
105+
rate: 1.0
106+
max_samples: 100
107+
108+
- do:
109+
indices.get_sample:
110+
index: sample_test
111+
- match: { sample: [] }
112+
113+
- do:
114+
bulk:
115+
refresh: true
116+
body:
117+
- '{"index": {"_index": "sample_test"}}'
118+
- '{"animal": "dog", "foo": "bar"}'
119+
120+
- do:
121+
indices.get_sample:
122+
index: sample_test
123+
- length: { sample: 1 }
124+
125+
- do:
126+
indices.delete_sample_configuration:
127+
index: sample_test
128+
129+
- do:
130+
indices.get_sample:
131+
index: sample_test
132+
catch: missing
133+
134+
---
135+
"Test that deleting index deletes sample":
136+
- requires:
137+
cluster_features: [ "random_sampling" ]
138+
reason: requires feature 'random_sampling' to get random samples
139+
140+
- do:
141+
indices.create:
142+
index: sample_test
143+
body:
144+
settings:
145+
number_of_shards: 1
146+
147+
- do:
148+
indices.put_sample_configuration:
149+
index: sample_test
150+
body:
151+
rate: 1.0
152+
max_samples: 100
153+
154+
- do:
155+
indices.get_sample:
156+
index: sample_test
157+
- match: { sample: [] }
158+
159+
- do:
160+
bulk:
161+
refresh: true
162+
body:
163+
- '{"index": {"_index": "sample_test"}}'
164+
- '{"animal": "dog", "foo": "bar"}'
165+
- '{"index": {"_index": "sample_test"}}'
166+
- '{"animal": "cat", "foo": "baz"}'
167+
168+
- do:
169+
indices.get_sample:
170+
index: sample_test
171+
- length: { sample: 2 }
172+
173+
- do:
174+
indices.delete:
175+
index: sample_test
176+
177+
- do:
178+
indices.get_sample_configuration:
179+
index: sample_test
180+
catch: missing
181+
182+
- do:
183+
indices.get_sample:
184+
index: sample_test
185+
catch: missing
186+
187+
---
188+
teardown:
189+
190+
- do:
191+
indices.delete:
192+
index: sample_test
193+
ignore_unavailable: true

0 commit comments

Comments
 (0)