33import static org .junit .Assert .*;
44import static org .mockito .Mockito .*;
55import java .io .IOException ;
6+ import java .util .Arrays ;
67import java .util .HashMap ;
78import java .util .LinkedHashMap ;
89import java .util .Map ;
910
1011import org .elasticsearch .search .SearchHits ;
1112import org .elasticsearch .search .SearchHit ;
13+ import org .apache .lucene .index .Fields ;
14+ import org .apache .lucene .index .Terms ;
15+ import org .apache .lucene .index .TermsEnum ;
16+ import org .apache .lucene .util .BytesRef ;
1217import org .elasticsearch .action .ActionFuture ;
1318import org .elasticsearch .action .ListenableActionFuture ;
1419import org .elasticsearch .action .admin .cluster .state .ClusterStateResponse ;
1722import org .elasticsearch .action .termvectors .MultiTermVectorsItemResponse ;
1823import org .elasticsearch .action .termvectors .MultiTermVectorsRequestBuilder ;
1924import org .elasticsearch .action .termvectors .MultiTermVectorsResponse ;
25+ import org .elasticsearch .action .termvectors .TermVectorsResponse ;
2026import org .elasticsearch .client .AdminClient ;
2127import org .elasticsearch .client .Client ;
2228import org .elasticsearch .client .ClusterAdminClient ;
@@ -105,7 +111,7 @@ private void mockIndexMetaDataRequest() throws IOException {
105111
106112}
107113
108- private void mockTermVectorRequest () {
114+ private void mockTermVectorRequest () throws IOException {
109115MultiTermVectorsRequestBuilder multiTermVectorBuilder = mock (MultiTermVectorsRequestBuilder .class );
110116when (multiTermVectorBuilder .add (any ())).thenReturn (multiTermVectorBuilder );
111117
@@ -118,9 +124,30 @@ private void mockTermVectorRequest() {
118124when (mockedFuture .actionGet ()).thenReturn (mtvResponse );
119125
120126when (this .client .prepareMultiTermVectors ()).thenReturn (multiTermVectorBuilder );
127+
128+ TermVectorsResponse mockTvResponse = mock (TermVectorsResponse .class );
129+ MultiTermVectorsItemResponse mockMtvItemResponse = mock (MultiTermVectorsItemResponse .class );
130+ when (mockMtvItemResponse .getResponse ()).thenReturn (mockTvResponse );
131+
132+ MultiTermVectorsItemResponse [] mockMtvItemResponses = { mockMtvItemResponse };
133+ when (mtvResponse .getResponses ()).thenReturn (mockMtvItemResponses );
134+
135+ Fields mockFields = mock (Fields .class );
136+ when (mockTvResponse .getFields ()).thenReturn (mockFields );
137+ Terms mockTerms = mock (Terms .class );
138+ when (mockFields .terms (TEST_FIELD )).thenReturn (mockTerms );
139+ when (mockTerms .getDocCount ()).thenReturn (10 );
140+ when (mockTerms .getSumTotalTermFreq ()).thenReturn (10L );
141+
142+ TermsEnum mockIterator = mock (TermsEnum .class );
143+ when (mockTerms .iterator ()).thenReturn (mockIterator );
144+
145+ when (mockIterator .next ()).thenReturn (null );
146+ when (mockIterator .totalTermFreq ()).thenReturn (10L );
147+ when (mockIterator .docFreq ()).thenReturn (10 );
121148
122- //MultiTermVectorsItemResponse mtvItemResponse = mock(MultiTermVectorsItemResponse.class );
123- // when(mtvResponse.getResponses ()).thenReturn(mtvItemResponse );
149+ BytesRef ref = new BytesRef ( "asdf" );
150+ when (mockIterator . term ()).thenReturn (ref );
124151}
125152
126153private void mockSearchRequest () {
0 commit comments