|
57 | 57 | import org.elasticsearch.search.builder.SearchSourceBuilder; |
58 | 58 | import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder.BoundaryScannerType; |
59 | 59 | import org.elasticsearch.search.fetch.subphase.highlight.HighlightBuilder.Field; |
| 60 | +import org.elasticsearch.search.sort.SortBuilders; |
60 | 61 | import org.elasticsearch.search.sort.SortOrder; |
61 | 62 | import org.elasticsearch.test.ESIntegTestCase; |
62 | 63 | import org.elasticsearch.test.InternalSettingsPlugin; |
@@ -129,20 +130,33 @@ public void testHighlightingWithKeywordIgnoreBoundaryScanner() throws IOExceptio |
129 | 130 | .startObject("tags") |
130 | 131 | .field("type", "keyword") |
131 | 132 | .endObject() |
| 133 | + .startObject("sort") |
| 134 | + .field("type", "long") |
| 135 | + .endObject() |
132 | 136 | .endObject().endObject(); |
133 | 137 | mappings.endObject(); |
134 | 138 | assertAcked(prepareCreate("test") |
135 | 139 | .addMapping("type", mappings)); |
136 | 140 | client().prepareIndex("test", "_doc").setId("1") |
137 | | - .setSource(jsonBuilder().startObject().array("tags", "foo bar", "foo bar", "foo bar", "foo baz").endObject()) |
| 141 | + .setSource(jsonBuilder() |
| 142 | + .startObject() |
| 143 | + .array("tags", "foo bar", "foo bar", "foo bar", "foo baz") |
| 144 | + .field("sort", 1) |
| 145 | + .endObject()) |
138 | 146 | .get(); |
139 | 147 | client().prepareIndex("test", "_doc").setId("2") |
140 | | - .setSource(jsonBuilder().startObject().array("tags", "foo baz", "foo baz", "foo baz", "foo bar").endObject()) |
| 148 | + .setSource(jsonBuilder() |
| 149 | + .startObject() |
| 150 | + .array("tags", "foo baz", "foo baz", "foo baz", "foo bar") |
| 151 | + .field("sort", 2) |
| 152 | + .endObject()) |
141 | 153 | .get(); |
142 | 154 | refresh(); |
143 | 155 |
|
144 | 156 | for (BoundaryScannerType scanner : BoundaryScannerType.values()) { |
145 | | - SearchResponse search = client().prepareSearch().setQuery(matchQuery("tags", "foo bar")) |
| 157 | + SearchResponse search = client().prepareSearch() |
| 158 | + .addSort(SortBuilders.fieldSort("sort")) |
| 159 | + .setQuery(matchQuery("tags", "foo bar")) |
146 | 160 | .highlighter(new HighlightBuilder().field(new Field("tags")).numOfFragments(2).boundaryScannerType(scanner)).get(); |
147 | 161 | assertHighlight(search, 0, "tags", 0, 2, equalTo("<em>foo bar</em>")); |
148 | 162 | assertHighlight(search, 0, "tags", 1, 2, equalTo("<em>foo bar</em>")); |
|
0 commit comments