@@ -92,7 +92,7 @@ void refreshSetByDeleteRequest() {
92
92
}
93
93
94
94
@ Test // #3089
95
- @ DisplayName ("When maxResults is set (size < maxResults), pageSize should be the minimum of maxResults and pageable size" )
95
+ @ DisplayName ("searchRequest() - When maxResults is set (size < maxResults), pageSize should be the minimum of maxResults and pageable size" )
96
96
void searchRequestPageSizeSmallerThanMaxResults () {
97
97
var size = 123 ;
98
98
var maxResults = size * 12 ;
@@ -114,7 +114,7 @@ void searchRequestPageSizeSmallerThanMaxResults() {
114
114
}
115
115
116
116
@ Test // #3089
117
- @ DisplayName ("When maxResults is set (size == maxResults), pageSize should be equal to maxResults and pageable size" )
117
+ @ DisplayName ("searchRequest() - When maxResults is set (size == maxResults), pageSize should be equal to maxResults and pageable size" )
118
118
void searchRequestPageSizeEqualToMaxResults () {
119
119
var pageSize = 123 ;
120
120
var maxResults = pageSize ;
@@ -136,7 +136,7 @@ void searchRequestPageSizeEqualToMaxResults() {
136
136
}
137
137
138
138
@ Test // #3089
139
- @ DisplayName ("When maxResults is set (size > maxResults), pageSize should be the minimum of maxResults and pageable size" )
139
+ @ DisplayName ("searchRequest() - When maxResults is set (size > maxResults), pageSize should be the minimum of maxResults and pageable size" )
140
140
void searchRequestPageSizeLargerThanMaxResults () {
141
141
var pageSize = 123 ;
142
142
var maxResults = 99 ;
@@ -157,6 +157,87 @@ void searchRequestPageSizeLargerThanMaxResults() {
157
157
assertThat (actualPageSize ).isEqualTo (maxResults );
158
158
}
159
159
160
+ @ Test // #3089
161
+ @ DisplayName ("searchMsearchRequest() - When maxResults is set (size < maxResults), pageSize should be the minimum of maxResults and pageable size" )
162
+ void msearchRequestPageSizeSmallerThanMaxResults () {
163
+ var size = 100 ;
164
+ var maxResults = 150 ;
165
+
166
+ var query = StringQuery .builder ("""
167
+ {
168
+ "match_all":{}
169
+ }
170
+ """ )
171
+ .withPageable (Pageable .ofSize (size ))
172
+ .withMaxResults (maxResults )
173
+ .build ();
174
+
175
+ var multiSearchQueryParameter = new ElasticsearchTemplate .MultiSearchQueryParameter (query , SampleEntity .class , IndexCoordinates .of ("foo" ));
176
+ var multiSearchQueryParameters = List .of (multiSearchQueryParameter );
177
+
178
+ var msearchRequest = requestConverter .searchMsearchRequest (multiSearchQueryParameters , null );
179
+
180
+ var searchBody = msearchRequest .searches ().get (0 ).body ();
181
+ var actualPageSize = searchBody .size ();
182
+
183
+ assertThat (actualPageSize ).isEqualTo (size );
184
+ assertThat (actualPageSize ).isNotEqualTo (maxResults );
185
+ }
186
+
187
+ @ Test // #3089
188
+ @ DisplayName ("searchMsearchRequest() - When maxResults is set (size == maxResults), pageSize should be equal to maxResults and pageable size" )
189
+ void msearchRequestPageSizeEqualToMaxResults () {
190
+ var size = 150 ;
191
+ var maxResults = size ;
192
+
193
+ var query = StringQuery .builder ("""
194
+ {
195
+ "match_all":{}
196
+ }
197
+ """ )
198
+ .withPageable (Pageable .ofSize (size ))
199
+ .withMaxResults (maxResults )
200
+ .build ();
201
+
202
+ var multiSearchQueryParameter = new ElasticsearchTemplate .MultiSearchQueryParameter (query , SampleEntity .class , IndexCoordinates .of ("foo" ));
203
+ var multiSearchQueryParameters = List .of (multiSearchQueryParameter );
204
+
205
+ var msearchRequest = requestConverter .searchMsearchRequest (multiSearchQueryParameters , null );
206
+
207
+ var searchBody = msearchRequest .searches ().get (0 ).body ();
208
+ var actualPageSize = searchBody .size ();
209
+
210
+ assertThat (actualPageSize ).isEqualTo (size );
211
+ assertThat (actualPageSize ).isEqualTo (maxResults );
212
+ }
213
+
214
+ @ Test // #3089
215
+ @ DisplayName ("searchMsearchRequest() - When maxResults is set (size > maxResults), pageSize should be the minimum of maxResults and pageable size" )
216
+ void msearchRequestPageSizeLargerThanMaxResults () {
217
+ var size = 200 ;
218
+ var maxResults = 150 ;
219
+
220
+ var query = StringQuery .builder ("""
221
+ {
222
+ "match_all":{}
223
+ }
224
+ """ )
225
+ .withPageable (Pageable .ofSize (size ))
226
+ .withMaxResults (maxResults )
227
+ .build ();
228
+
229
+ var multiSearchQueryParameter = new ElasticsearchTemplate .MultiSearchQueryParameter (query , SampleEntity .class , IndexCoordinates .of ("foo" ));
230
+ var multiSearchQueryParameters = List .of (multiSearchQueryParameter );
231
+
232
+ var msearchRequest = requestConverter .searchMsearchRequest (multiSearchQueryParameters , null );
233
+
234
+ var searchBody = msearchRequest .searches ().get (0 ).body ();
235
+ var actualPageSize = searchBody .size ();
236
+
237
+ assertThat (actualPageSize ).isNotEqualTo (size );
238
+ assertThat (actualPageSize ).isEqualTo (maxResults );
239
+ }
240
+
160
241
@ Document (indexName = "does-not-matter" )
161
242
static class SampleEntity {
162
243
@ Nullable
0 commit comments